我刚刚在Hacker News上看到另一篇帖子,谈到为什么不应该将SSH端口从22移出,因为它是不知名的安全性。
在某些环境中不移动SSH端口有一些很好的理由,比如可用性。
人们绝对喜欢引用“默默无闻的安全”这个妖怪,当他们这样做的时候,他们会觉得自己超级聪明。它是一个对话终结器。
默默无闻的安全性确实不好;问题是很多人不知道它什么时候适用。包括大多数对此大声疾呼的人。让我告诉你这场辩论的秘诀,它将永久地为你解决这个问题。
默默无闻的安全是当你隐藏安全措施的工作方式时,而不是当你对它的某些部分保密的时候。
某些类型的安全控制(如加密)有两个组件:机制和密钥。在加密中,机制是算法,密钥是…。钥匙。
如果您隐藏了算法的工作方式,那么您就是在暗地里使用安全性。这很糟糕。我们都同意这一点。但是这些例子怎么样呢?
这里我们有一些明显被隐藏的东西。我们隐藏了我们使用的频率。我们在隐藏身体投放点的位置。我们通过让坦克看起来像沙子来隐藏坦克在沙漠中的位置。我们隐藏了总统实际乘坐的是哪辆豪华轿车,所以攻击他会更困难。
不是的。不是这样的。这就是为什么。没有人隐藏这个机制。
即使你的敌人知道你被伪装在甜点的某个地方,他们的工作仍在前方。
每个人都知道发生了什么事。每个人都知道坦克在沙漠的某个地方,只是他们看不见它来射击它。每个人都知道总统在这三架直升机中的一架上,但猜测哪架直升机开火要危险得多,成本也高得多。有了死胡同,你知道包裹在中央公园的某个地方,但你不知道在哪里。
重要的是,花时间检查目标可能在的所有地方是非常昂贵的。为了一个包裹。对于一位总统来说。为了一辆伪装的坦克。
人们知道您更改了SSH端口是很好的。但是现在他们必须扫描所有的端口并找到新的端口。当然,这并不太难,但是很多人真的要这么做吗?不是很多,因为就时间和精力而言,这是很昂贵的。
我在一个周末做了一个实验,在一些随机的高端端口的22号和4号端口得到了大约10,000个探头。
简而言之,你只是通过给敌人一个资源问题,让他们更难成功地攻击你。当然,他们可以在中央公园的每一块岩石下检查,最终找到包裹,但到那时你就已经完成任务了。
如果人们知道您正在使用的机制,并且他们只是有资源问题,那么默默无闻就不适用了。拥有已知的防御但隐藏的密钥是良好安全性的一个公认的部分,而且这一点已经有数千年的历史了。
只要你有一把好钥匙,人们就可以知道机制。
不要让那些不理解基本概念的人羞辱你。
更改SSH端口很像空投或伪装。这本身就不是很好的安全措施。坦克还需要装甲。该消息应该仍然是加密的。但这是一层。
我每周花5-20个小时阅读书籍、文章和播客,每周一早上我都会把我找到的最好的东西发出去。