我有一个运行 Debian Jessie 的 Raspberry Pi。我安装了 pi-hole 来阻止广告服务域(https://pi-hole.net)。通过查看日志,我注意到很多来自中文域的查询。
lsof -i
显示了以下我认为可疑的列表:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 1742 root 3u IPv4 16960 0t0 TCP raspberrypi:ssh->116.31.116.47:50600 (ESTABLISHED)
sshd 1743 sshd 3u IPv4 16960 0t0 TCP raspberrypi:ssh->116.31.116.47:50600 (ESTABLISHED)
sshd 1774 root 3u IPv4 16990 0t0 TCP raspberrypi:ssh->183.214.141.105:56265 (ESTABLISHED)
sshd 1775 sshd 3u IPv4 16990 0t0 TCP raspberrypi:ssh->183.214.141.105:56265 (ESTABLISHED)
sshd 1869 root 3u IPv4 17068 0t0 TCP raspberrypi:ssh->116.31.116.47:33525 (ESTABLISHED)
sshd 1870 sshd 3u IPv4 17068 0t0 TCP raspberrypi:ssh->116.31.116.47:33525 (ESTABLISHED)
sshd 1910 root 3u IPv4 17122 0t0 TCP raspberrypi:ssh->116.31.116.47:35816 (ESTABLISHED)
sshd 1911 sshd 3u IPv4 17122 0t0 TCP raspberrypi:ssh->116.31.116.47:35816 (ESTABLISHED)
sshd 1931 root 3u IPv4 17158 0t0 TCP raspberrypi:ssh->116.31.116.47:49492 (ESTABLISHED)
sshd 1932 sshd 3u IPv4 17158 0t0 TCP raspberrypi:ssh->116.31.116.47:49492 (ESTABLISHED)
sshd 1935 root 3u IPv4 17163 0t0 TCP raspberrypi:ssh->183.214.141.105:23828 (ESTABLISHED)
sshd 1936 sshd 3u IPv4 17163 0t0 TCP raspberrypi:ssh->183.214.141.105:23828 (ESTABLISHED)
sshd 1937 root 3u IPv4 17168 0t0 TCP raspberrypi:ssh->116.31.116.47:53628 (ESTABLISHED)
sshd 1938 sshd 3u IPv4 17168 0t0 TCP raspberrypi:ssh->116.31.116.47:53628 (ESTABLISHED)
sshd 1940 root 3u IPv4 17176 0t0 TCP raspberrypi:ssh->116.31.116.47:57858 (ESTABLISHED)
sshd 1941 sshd 3u IPv4 17176 0t0 TCP raspberrypi:ssh->116.31.116.47:57858 (ESTABLISHED)
sshd 1944 root 3u IPv4 17194 0t0 TCP raspberrypi:ssh->183.214.141.105:28355 (ESTABLISHED)
sshd 1945 sshd 3u IPv4 17194 0t0 TCP raspberrypi:ssh->183.214.141.105:28355 (ESTABLISHED)
我已经更改了密码,重新启动了我的 Pi 并检查了是否有任何未知用户(实际上没有)。如何继续确保我的 Pi 再次安全?
答案1
可能存在也可能不存在安全漏洞。
这可能只是一个白痴试图暴力破解密码。如果他们连接,尝试密码,它会失败,他们不会尝试另一个或关闭连接,然后您可以看到这些连接最终将被 sshd 关闭。
/var/log/auth.log
应该有一些有关登录尝试的信息。该last
命令可能会显示您成功登录。
答案2
正如 icarus 已经提到的,不可能确定您的服务器上是否存在安全漏洞。如果lsof -i
或ss -tulpn
显示已建立的连接从如果您的主机(从 ssh/22 端口)连接到可疑的 IP,您可能会考虑从头开始。
last
对于查看成功登录很有用,但您可能感兴趣lastb
sudo lastb # Show a list of all last logged in users
sudo lastb --since YYYY-MM-DD # Show a list of all last logged in users since a given time
我在其他答案中没有看到的一些安全建议:
- 将 sshd 侦听端口从 22 移至更高的随机 TCP 端口。更改
Port 22
于/etc/ssh/sshd_config
.还可以添加端口敲门。 PermitRootLogin prohibit-password
(同上without-password
) 以/etc/ssh/sshd_config
避免任何人使用 root 用户通过 ssh 登录。- 重启sshd服务前使用测试模式,
sudo sshd -T
。 - 尝试像
fail2ban
y这样的工具psad
- 使用防火墙,例如
ufw
. - 保持你的东西更新。
- 相关文章
答案3
为了确保你的 raspberrypi 安全,你应该在 ssh 服务器上禁用密码登录。仅使用公钥身份验证(这不能被暴力破解)。
首先复制你的 ssh 公钥到你的 pi。
然后在/etc/ssh/sshd_config.d
put下securepi.conf
应该有这些行:
PasswordAuthentication no
PubkeyAuthentication yes
ChallengeResponseAuthentication no
UsePAM no
并重新启动 ssh 服务器。
我不喜欢直接编辑,/etc/ssh/sshd_config
因为更改很难跟踪和撤销,但如果文件位于下面,sshd_config.d
您只需删除该文件即可撤销更改。
另外两个建议:
- 使用cloudflare隧道而不是打开端口,它将防止DDOS和类似的攻击。
- 使用防火墙规则仅允许来自特定 IP 的连接。