编辑:
在查看之前已解决此问题的页面后,我肯定会推荐阅读那里的绿色检查答案。它很好地概述了更改端口的大部分积极和消极因素,并建议这样做是否是一个好主意取决于具体情况。对于我最常拥有的客户类型——在大多数情况下具有小型网络的小型(ish)企业——我通常会建议或实施将 SSH 端口从至少一些机器上的默认值移开(面向网络,面向 DMZ 等)。但其他 IT 环境中的其他人甚至可能不认为这是一个严肃的选择。万岁拉不同。
不过,我会说,我喜欢@Steffen Ullrich,我对“但它是默默无闻的安全性!!它一定很糟糕!”感到恼火。观点。是的,它是默默无闻的安全。所以呢?如果您真的在使用纵深防御策略,Security by Obscurity 可以起到积极的作用,这是增加已经强大防御强度的另一层。您是否应该使用属于 Security by Obscurity 的措施作为您唯一的防线,甚至是主要防线?除非有一些极端的假设情况,当然不是。(例如,移动您的 SSH 端口显然根本无法替代对任何设法连接到它的人的强身份验证。)但是能够欺骗、减慢、挫败和迷惑攻击者是一件好事在 InfoSec 中也是如此。就像它在战争、扑克、体育或……嗯,几乎在人类经验中发生的任何对抗情况下都是一件好事。
最后,您知道谁使用 Security by Obscurity 吗?每个人,每天。每个不向 Internet 发布每个设备、每个物理连接、每个操作系统、每个应用程序、每个授权用户、每个管理员、每个安全软件和所有其他安全性的全面、准确列表的安全专家或管理员-他们工作的每个网络的相关细节都依赖于 Security by Obscurity 在某种程度上减缓和阻碍潜在的攻击者。仅仅依靠 Security by Obscurity是非常愚蠢的。
无论如何:),原始答案从这里开始:
更改 SSH 端口是我尝试尽可能遵循的一种做法,并建议客户端在合理可能的情况下遵循(即,只要可以在不破坏访问场景的情况下完成复杂的、复杂的管理设置,这些设置基于 SSH 的假设而演变)在默认端口上)。为什么?好:
- 正如其他人所说,这意味着攻击者对大量 IP 地址运行典型的、快速且肮脏的端口扫描,而攻击者只是在他或她能找到的任何机器上寻找潜在易受攻击的公共服务,通常会错过检测您的 SSH 服务. 一个专门针对您的机器并试图找到您的 SSH 服务的坚定攻击者难道不能检查每个端口吗?当然。但对于大多数坏人来说,这样做只有在您首先已经找到并选择了您的目标机器。换句话说,一个对许多 IP 地址进行广泛扫描以发现有趣目标的坏人,无论是来自网络外围还是内部,(通常)无法(或不想)检查数百或数千,更不用说每个 IP 地址有数万个端口。这样做根本不切实际——通常,对于大多数攻击者来说——跨越多个潜在目标。因此,更改 SSH 端口有时会显着降低计算机对非目标攻击的可见性。
(虽然,如果你确实在正确地进行基于 IP 和/或 MAC 的过滤,那么非目标攻击无论如何都应该失败。但为了深度防御,它仍然是一个理想的特性。)
- 但是好吧,有针对性的攻击呢?愿意扫描所有 65000+ 端口以获取您的侦听 SSH 服务的攻击者呢?好吧,显然这样的攻击者会找到他或她正在寻找的东西,即您的 SSH 端口。但是,如果您有一个 IDS/IDPS 并熟练配置,在这里更改端口仍然会有所帮助。为什么?好吧,简单地在一台机器上扫描数以万计的端口是一个比扫描相对少数的“更高调”的事件。原因很明显:设备在数以万计的端口上接收扫描的情况非常非常罕见,这不是协同攻击的迹象。即使扫描来自多个不同的 ip,跨越数小时或数天,当攻击者需要检查机器上成千上万的端口时,也没有办法真正隐藏它,尤其是那些很少被常见的端口服务。
当然,如果您的攻击者更有耐心,并且可以通过内部网络访问您的机器,他/她也许能够嗅探 SSH 流量并查看它指向的端口。但这给了你的对手一个不耐烦和搞砸的机会……
归根结底,更改端口绝对应该只是攻击者必须处理的额外的补充保护因素。它不能替代正确的 SSH 基础知识(强大的身份验证因素、正确配置 auth-try 限制/锁定等),但它仍然是一个有用的措施。