答案1
如果您有一台机器,想要让许多人能够通过 SSH 访问,那么在非标准端口上运行可能会让他们更加困惑。
但是,如果只有您一个人,那么在 22 以外的端口上运行并没有什么实际的缺点(假设您能记住端口号),并且它将大大减少您从执行字典攻击的机器人那里获得的连接尝试次数。
答案2
运行 ssh 服务器时真正应该做的事情是关闭 root ssh 并仅使用私钥/公钥身份验证。在我看来,更改端口是一种低安全性行为。
答案3
在非标准端口上运行 SSH 类似于将汽车的点火钥匙插槽重新定位到后备箱。虽然隐蔽性不是安全性,但它确实可以挫败那些愚蠢到看不到从仪表板穿过后座的延长线的机器人脚本。
保护 SSH 的最佳方法是完全阻止 root 登录,并通过禁用密码登录来强制使用密钥对。此外,不要采取偷懒的方法,制作无密码密钥。
抵御暴力攻击比躲避攻击更好,你不会希望那些 IP 访问任何一旦他们连续 100 次无法以 root 身份登录,系统上的服务就会被关闭。监控日志文件并使用防火墙工具 (iptables) 阻止将来的请求相当容易。
这种组合更加安全...而且你不必用非标准端口让用户感到困惑:)
答案4
如果您想在标准端口上运行 SSH,那么请帮自己一个忙,安装 Blockhosts。安装、配置它、将其添加到 cron,这样大部分情况下您就安全了。至少所有暴力破解尝试都不会有用。