更改 SSH 端口有什么好处吗,我见过有人这样做,但我似乎找不到原因。
如果您有一个强密码和/或证书,它对任何事情都有用吗?
编辑:
我还应该提到我正在使用 iptables 规则来限制暴力破解攻击,每个 IP 地址每分钟只允许 5 次登录尝试。
更改 SSH 端口有什么好处吗,我见过有人这样做,但我似乎找不到原因。
如果您有一个强密码和/或证书,它对任何事情都有用吗?
编辑:
我还应该提到我正在使用 iptables 规则来限制暴力破解攻击,每个 IP 地址每分钟只允许 5 次登录尝试。
互联网是一个狂野而可怕的地方,充满了不满者,他们的动机从好奇一直到犯罪活动。这些讨厌的人不断地扫描运行他们希望利用的服务的计算机;通常是更常见的服务,如 SSH、HTTP、FTP 等。扫描通常属于以下两类之一:
考虑到 Internet 有多大,通常不可能通过查看每个 IP 地址的每个端口来找到到处监听的内容。这是更改默认端口的建议的关键。如果这些心怀不满的人想要找到 SSH 服务器,他们将开始在端口 22 上探测每个 IP 地址(他们可能还会添加一些常见的替代地址,例如 222 或 2222)。然后,一旦他们打开了端口 22 的 IP 地址列表,他们将启动密码暴力破解来猜测用户名/密码或启动他们选择的漏洞利用工具包,并开始测试目标系统上的已知(至少对他们而言)漏洞。
这意味着,如果您将 SSH 端口更改为 34887,那么该扫描将通过您,可能导致您不会成为后续入侵的目标。
看起来很红是吧?不过也有一些缺点。
/etc/hosts
文件、写入特定文件或在网络上发送数据包。根据该系统的配置方式,默认情况下,它可能会禁止sshd
绑定到非标准端口。您需要维护允许它的本地策略。在更改端口之前,您需要考虑所有这些,以便您知道自己做出了最佳决定。其中一些缺点可能不适用,但有些肯定会。还要考虑您要保护自己免受什么侵害。通常情况下,将防火墙配置为只允许从特定主机访问 22 个主机,而不是整个 Internet 会更容易。
是的,不是通过提高安全性,而是可以减少服务器上失败的登录尝试次数。我总是更改我的默认 ssh 以减少我从 ossec 收到的警告。此外,如果您使用一个真正随机的端口并且有人仍然试图访问您的计算机,那么它更有可能是有针对性的攻击而不是随机扫描程序。
正如其他人所说,将 SSH 放在 22 以外的端口上将更不可能被随机扫描命中。如果攻击者试图获取您的服务器,而不是任何服务器,您将成为目标。
我有一个ssh
绑定到随机高端口的服务器。我在端口 22 上有一个 ssh 蜜罐,它会以“拒绝访问”消息回复任何登录尝试。
我认为这不是默默无闻的防御,而是深度防御:要攻击我的服务器,攻击者必须先找到端口。如果我有几个假的蜜罐(很多端口重定向到同一个蜜罐),攻击者会命中很多假的,并且无法知道它是否命中了真正的 ssh。
不过,这只是防守。我也有portsentry
活动,所以如果有人尝试端口扫描,他们将被阻止一个小时。如果他们在正确的 ssh 上暴力破解密码,他们将在一个小时内收到“拒绝访问”。如果他们成功猜出密码,他们将看到一个 PAM 提示,要求输入 Google Auth 令牌。
更改端口的成本非常低,我认为有利有弊。
由于大多数人都在谈论缺点(这是真实的),我想在这里分享几个优点:
你真的想避免自动攻击。除非您是知名用户,否则绝大多数攻击都不会针对您,而是会尝试默认端口的自动尽力而为攻击。避免它们在几个方面有帮助:
无论攻击者没有预料到什么,它总是要么完全关闭他,为他创造更多的工作,要么让你成为一个不那么有趣的目标。它还增加了您检测和防御攻击的时间。
在端口 >1024 上运行不需要 sshd 以 root 身份运行,这允许运行它只是一个需要它的用户,避免了一整类错误(即使某些 sshd 实现特别注意以降低的权限运行也是如此不需要时)。