这(大部分)并不重要

这(大部分)并不重要

我想通过 SSH 从互联网访问我的 Ubuntu 服务器,并将客户端的公钥存储在该服务器上。

为了提高安全性,我想使用 22 以外的其他端口,以减少我的服务器被入侵的风险(因为脚本小子必须猜出该端口号)。

在路由器中定义端口转发是否更好(如下图所示)或在服务器上定义端口转发(如下所述)https://askubuntu.com/a/264048)?

在此处输入图片描述

答案1

这(大部分)并不重要

如果您只是想减少服务器系统日志中的登录尝试次数,那么两种方法都可以。

具体来说,有两种方法:

  1. 您可以让路由器监听端口 220022,并将其设置为转发到 IP 192.168.1.200 的端口 22。这样您就不必sshd_config在服务器中编辑。
  2. 您可以让路由器监听端口 220022,并将其设置为转发到 IP 192.168.1.200 的端口 220022。这样,您必须sshd_config在服务器中编辑,使其不监听默认端口 22,而是监听您选择的端口。

那么当地的威胁又如何呢?

如果您担心有人在您家入侵您的服务器,或者有人开着一辆停在您家外面的黑色货车入侵您的家庭 WiFi 网络,然后试图入侵您的服务器。那么仅仅更改默认端口可能无济于事。

其他措施

正如 Thomas Ward 在评论中指出的那样,将 ssh 访问限制在少数外部 IP 地址上是一种更好的安全措施。请参阅限制用户对特定 IP 的 SSH 访问如何做到这一点。

如果您有几个远程位置(例如办公室和姐姐家)需要登录,这种方法是可行的。如果您经常旅行并且想要从酒店的所有互联网登录,情况就不同了。

VPN解决“酒店”问题

您将需要 VPN 服务,可以由您的雇主提供,也可以是消费者级付费 VPN。然后,您可以将 VPN 服务器的 IP 地址(或 IP 地址范围)添加到允许的 IP 地址列表中。在路上(在酒店)时,请先连接到 VPN,然后连接到您的 ssh 服务器。

停止暴力破解

有各种工具可以阻止对 ssh 的重复不成功尝试(暴力破解),fail2ban并且sshguard都受到高度重视。

希望这可以帮助

答案2

为了提高安全性,我想使用 22 以外的其他端口,以减少我的服务器被入侵的风险(因为脚本小子必须猜出该端口号)。

它不是那样工作的。不知道如何运行的攻击者nmap不会对你发起任何新奇的攻击。他们可能会尝试暴力攻击,你可以用好的密码、速率限制(例如fail2ban或sshguard)或简单地禁止密码登录来轻松防御。

所以别担心。任何真正构成威胁的攻击者都不会被愚弄。请记住整个互联网定期进行端口扫描。

相关内容