如何保护 Linux 服务器免受试图打开大量 SSH 会话(可能试图暴力破解密码)的攻击者的攻击,而攻击者没有端口能够合法登录到机器?
服务器已经只使用基于 SSH 密钥的访问,并且不允许 root 登录,因此密码暴力破解不是问题。
如何保护 Linux 服务器免受试图打开大量 SSH 会话(可能试图暴力破解密码)的攻击者的攻击,而攻击者没有端口能够合法登录到机器?
服务器已经只使用基于 SSH 密钥的访问,并且不允许 root 登录,因此密码暴力破解不是问题。
一个通常引发的解决方案是Fail2Ban:这是一个使用防火墙规则 (iptables) 来阻止来自 IP 地址的传入连接的系统,从这些 IP 地址显然正在进行某种详尽的搜索攻击。
当然,这不适用于来自数千个不同 IP 地址的分布式DoS。一般来说,很少有东西能抵抗分布式 DoS。
在大规模NAT 的情况下,Fail2Ban 也可能会出现问题:从外部看,它有可能锁定恰好共享相同 IP 地址的普通用户的整个网络。
这是强烈建议,当你开始配置工具如的fail2ban,还另一个端口上运行的另一个SSH服务器,而不是由规则的fail2ban覆盖,只是允许的情况下,重新进入一个错误的配置锁定你。
另一个完全不同的策略是始终保持连接打开。例如,您的服务器和您自己的桌面系统之间有一个长期存在的 SSH;您甚至可以在其上多路复用其他连接(具有用于隧道的 SSH 功能和/或 SOCKS 代理)。这避免了分配问题:您不需要为您的root连接获得一个空闲端口,因为您已经有了一个。