如何防止大量不必要的连接 - iptables

如何防止大量不必要的连接 - iptables

我的服务器似乎有大量不需要的已建立端口 22 连接。sudo netstat -natup | grep 'ESTABLISHED'以 root 身份运行时,我收到一长串不需要的已建立连接,所有连接都具有相同的 PID,并且使用我的 IP 上的不同端口。

root@server:~# sudo netstat -natup | grep 'ESTABLISHED'
tcp        0      712 xxx.xx.xxx.xxx:54010    45.9.148.99:446         ESTABLISHED 51980/tsm
tcp        0      488 xxx.xx.xxx.xxx:58860    83.224.137.250:22       ESTABLISHED 51980/tsm
...and approx. 100 more

在我使用 终止此进程后sudo kill -9 [PID],此列表仅显示我的 ssh 连接几分钟。然后,无论我打开新的 ssh 连接还是关闭一个 ssh 连接,都会出现大量新的端口 22 连接,所有连接都具有相同的 PID,并且每个连接都通过我的 IP 地址上的不同端口进行访问。

对于防火墙,我使用 iptables。对于第一次出现的情况,我为 INPUT 和 FORWARD 设置了规则,以断开与特定 IP 地址的连接。这有效,但我无法添加列表中新出现的每个 IP 地址。

$ sudo iptables -I INPUT 1 -s 45.9.148.99 -j DROP
$ sudo iptables -I FORWARD -s 45.9.148.99 -j DROP

我是设置 Ubuntu 网络服务器的新手。任何帮助我都非常感谢。

更新:在 /var/log/auth.log 中,例如,我看到:

Mar 12 12:08:28 server sshd[56681]: Received disconnect from 218.75.147.238 port 51666:11: Bye Bye [preauth]
Mar 12 12:08:28 server sshd[56681]: Disconnected from authenticating user root 218.75.147.238 port 51666 [preauth]

我最近设置了 ssh 密钥并禁用了密码验证。

答案1

每一个服务器,只要有一个开放的互联网端口,就会成为机器人的目标,以尝试大量的漏洞。

两种常见的更好地保护您的方法:

  • 安装一个反暴力破解软件,fail2ban例如crowdsec
  • 将你的ssh端口更改为完全随机的高端口,这样不太可能成为攻击目标

相关内容