Dav*_*ett 73
它不像某些人声称的那样有用,但它至少会减少对您的日志文件的影响,因为许多蛮力登录尝试仅使用默认端口,而不是扫描以查看 SSH 是否在其他地方侦听。不过,有些攻击会在其他地方扫描 SSH,因此这不是灵丹妙药。
如果您的服务器将成为某种类型的共享主机,而不仅仅是满足您的项目需求,那么使用非默认端口可能会很痛苦,因为您必须一遍又一遍地向用户解释它当他们忘记并且他们的客户端程序无法连接到端口 22 时就结束了!
在非标准端口上使用 SSH 的另一个可能问题是,如果您遇到具有限制性传出过滤器集的客户端,该客户端无法连接到您的自定义端口,因为他们的过滤器仅允许端口 22、53、80和 443 作为新的传出连接的目的地。这并不常见,但肯定并非闻所未闻。在类似的情况下,某些 ISP 可能会在通常预期的端口(端口 443 或 HTTPS,22 用于 SSH 等)之外的端口上看到加密流量,以试图隐藏 P2P 连接和限制(或阻止)以不方便的方式连接。
为方便起见,我个人将 SSH 保留在标准端口上。只要采取通常的预防措施(强密码/密钥策略,限制 root 登录,...)就不必担心,并且可以使用诸如此类的工具来缓解遭受暴力攻击时的日志文件增长问题作为 fial2ban 临时阻止在给定时间空间内提供太多错误身份验证凭据的主机。
无论您选择什么端口,如果您确实远离 22,请确保它低于 1024。在默认配置中的大多数类 Unix 设置下,只有 root(或 root 组中的用户)可以侦听低于 1024 的端口,但是任何用户都可以监听更高的端口。在更高的端口上运行 SSH 会增加流氓(或被黑)用户设法使您的 SSH 守护程序崩溃并将其替换为他们自己的或代理的机会。
Aln*_*tak 28
这是一种通过默默无闻的简单(但非常有效)的安全形式。
如果您的 SSH 服务器不在端口 22 上,那么扫描整个互联网以寻找默认帐户上的弱密码的人发现它的可能性要小得多。如果您正在扫描整个网络,则无法检查所有 64k 可能的端口来查找 SSH 服务器。
但是,如果有人专门针对您,它不会提供任何好处,因为简单的一次性nmap扫描将显示它实际运行的端口。
Ali*_*ani 21
为了真正避免暴力攻击,遵循一些步骤总是很重要的:
Lum*_*uma 12
是的,它很有用,因为它只是有助于避免所有蛮力攻击并有助于保持日志清晰:)
至于由您决定的端口号,我看到公司经常使用 1291。我使用更高的东西只是为了帮助避免一些脚本。
不允许 root ssh 登录和更改端口号,也许像 fail2ban 这样的东西,你应该是金。添加 iptables 以进行良好的衡量并使您的内容保持最新状态,您不应该遇到任何问题。
Bor*_*ide 11
使用非标准 ssh 端口需要更多解释和文档,并回答“我无法登录”电子邮件。
我认为在非标准端口上运行 sshd的以下好处比它造成的问题更重要:
此外,如果你真的很讨厌,你总是可以在标准端口 22 上运行一个假的 sshd(带有DenyUsers *),而你的常规 sshd 在端口 54321 上运行。这将向你保证所有的机器人和入侵者-wannabes 将永远尝试登录拒绝所有登录的服务,因为没有人会想尝试找到您真正的sshd 服务。
我的 2 美分。
Ant*_*oun 11
出于任何“安全”原因这样做都是虚假的。这是不安全的默默无闻的安全的最好例子。
如果你想让你的日志更轻更干净,那么是的,它很有用,因为你不会得到那么多的端口敲击/脚本小子蛮力尝试。
我总是将我的 SSHd 更改为使用端口 2222,每个需要进入我的服务器的人都知道这一点,这已经不是什么秘密了。这样做绝对没有安全收益(除非潜在的黑客是一个绝对的白痴)。
我从中得到的唯一好处是,身份验证日志中没有 100 万次针对“root”、“alice”、“bob”、“sally”、“admin”等的登录尝试失败。