SSH 设置 - 路由器如何知道我电脑的 IP?

lin*_*982 2 networking ssh port-forwarding dynamic-dns

我对房子的网络方面很陌生,正在尝试在我的新 Ubuntu 机器上设置 SSH。我的 DD-WRT 路由器现在可以使用 DDNS 并且可以登录到路由器页面——但我不确定如何将它转发到我的服务器机器。我意识到我会转发端口 22(或一个唯一端口)——但要转发,DD-WRT 想知道我指向的 IP。但是那个IP会改变,不是吗?如何让路由器指向机器而不是当前 IP?还是我问错了问题?

Tho*_*man 5

只要 DD-WRT 路由器也是网络的DHCP 服务器,您就可以在 DD-WRT 的静态租用部分下的服务> DHCP服务器中为服务器设置静态 DHCP 租用。这将确保 DHCP 服务器在请求 DHCP 租用时始终为您的服务器分配相同的 IP 地址。

为此,您需要知道服务器的MAC 地址。您可以ip addr通过查看link/ether连接到路由器的接口的条目(最有可能wlan0在您的情况下),使用服务器上的命令来确定这一点。

或者,您也可以获取 MAC 地址ifconfig/sbin/ifconfig在 Ubuntu上以普通用户身份运行,/sbin很可能不在您的PATH. 在这种情况下,请查看HWaddr相关接口的条目。

将 MAC 地址、服务器的主机名和所需的 IP 地址填写到 DD-WRT、保存应用设置中的静态租约列表中。请注意,如果您为静态租用设置的 IP 地址不是当前分配给服务器的 IP 地址,则您需要让服务器放弃其当前租用并从 DHCP 服务器请求新租用,以便它获取永久IP地址。

  • 与此相关的是,如果您将服务器的 SSH 端口转发到公共 Internet,您可能需要考虑对 SSH 密码探查机器人采取某些预防措施。至少通过 `PermitRootLogin no` 选项在你的 `sshd` 配置中禁用 root 登录,并确保系统用户(即用于运行系统服务的用户)无法登录(通过为他们分配 `nologin` shell 或通过将允许的用户列入白名单通过`sshd_config`中的`AllowUsers`)。在非标准端口上转发 SSH [是不够的](http://bsdly.blogspot.ca/2013/02/theres-no-protection-in-high-ports.html)。 (3认同)