我有多个 Linux 服务器,希望能够使用我的公共 IP 地址从外部访问它们,这些服务器使用公私钥加密进行保护,无法使用密码进行身份验证。将私有端口 22 开放给某个随机的模糊公共端口可以吗?或者这会导致太多安全问题。
答案1
SSH 的公钥认证相当安全,只要你使用良好的密钥算法和密钥大小。您可以进一步使用复杂的密码来保护密钥。
由此回答:
剩下的唯一攻击就是中间人攻击。您可以将主机密钥从服务器复制到客户端,就像复制密钥以使公钥认证成为可能一样。这将完全缓解中间人攻击,并且如果检测到尝试,客户端会向您发出警告。
只要满足这些缓解因素,您在将 SSH 暴露到互联网上应该是相当安全的。