我已经运行一些服务器相对较长的时间,但我一直只是租用它们,所以我没有太多保护实际服务器(而不是我在其上运行的应用程序)的经验。
现在我想将我家里的小型 SSH 服务器开放到互联网上。
我将是唯一使用它的人,我的密码已经够复杂了,我已经将默认的 SSH 端口更改为 4000 左右,唯一可访问的端口是通过路由器/防火墙上的端口转发访问的这个 SSH 端口,并且它每晚都会自动更新(它运行 Arch Linux,一个滚动发布的发行版)。
如果有的话,我还应该做些什么来保证它的安全?
谢谢!
答案1
确保禁用 root 登录PermitRootLogin no
。我还考虑完全禁用密码PasswordAuthentication no
并使用公钥PubkeyAuthentication yes
。
答案2
答案3
除了禁用 root 登录或仅使用公钥身份验证的要点外,我还会仔细检查系统上是否存在密码简单或为空的用户帐户。您说您的个人密码没有问题,但这并不排除由于其他原因而创建密码较差的帐户的可能性。
举个例子:我必须修复一个网络,其中以前的管理员在他的所有系统上从源代码安装了 nagios,并创建了一个没有密码或密码为“nagios”的 nagios 用户,然后继续攻击三台不同的机器。
答案4
我建议您安装Fail2ban!http://www.fail2ban.org
它会在 x 次尝试失败后 y 分钟内禁止某个 IP,以帮助控制脚本小子 ;)