我家里有一台 Ubuntu 服务器(用作 NAS)。我使用始终开启的 Raspberry Pi 在需要时打开服务器(WakeOnLan)。服务器和 Pi 都可以通过本地网络访问。
我的路由器配置了 Pi 端口和服务器端口的端口转发。
我的问题:我可以远程访问 Pi,但出于某种原因无法访问服务器本身。不过,我可以先通过 ssh 连接到 Pi,然后从那里连接到服务器。即使我将 /etc/ssh/sshd_config 从 Pi 复制到服务器,我仍然无法远程访问它。这里可能是什么问题?
答案1
您的家庭网络很可能只有一个可从外部访问的(公共)IP 地址。这是分配给您的路由器的地址。如果您配置了端口转发,则会发生以下情况:您配置了端口 22 以转发到您的 pi。现在,如果有人通过其 IP 和端口 22 联系您的路由器,路由器会将这些数据包转发到您的 raspberry pi。对于外部人员来说,看起来就像您的 raspberry pi 位于公共 IP 后面,而不是您的路由器。当然,您现在无法 ssh 到您的服务器,因为您的服务器无法侦听公共 IP 地址的端口 22!您必须将服务器的 ssh 服务器配置为侦听其他端口,然后将该端口转发到服务器!