SSH 连接超时

SSH 连接超时

您好,我查遍了互联网,但找不到解决方案。我并不是说我没有发现任何东西,我是说我尝试了很多东西但没有任何效果。所以希望有人可以提供帮助。

我在家里设置了一个 FreeNAS,我可以使用本地 IP 地址通过 SSH 连接到它。我有一个智能 Linksys 路由器,当我尝试使用公共 IP 连接到家庭服务器时,连接超时。

以下是运行调试 SSH 时得到的示例输出

OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to <My Public IP> [<My Public IP>] port 22.
debug1: connect to address <My Public IP> port 22: Operation timed out
ssh: connect to host <My Public IP> port 22: Operation timed out

如果您希望我添加任何其他内容,请告诉我。

更新2015-07-21 转发端口

我有端口转发设置。这是我的单端口转发的图像。

更新2015-07-21 防火墙

我在网上阅读有关此问题的信息时发现了这一点。我查看了我的 NAS 防火墙。试图阻止它/etc/rc.d/ipfw stop,它这么说firewall_enable="NO"。我将其设置为“是”,然后再次运行停止命令。然后我用我的公共IP测试了SSH,但仍然连接超时。然后我关闭了我的 linksys 和 freenas 防火墙。仍然连接超时。所以我不确定我做错了什么。那么是否可以一步一步地告诉我如何正确关闭两个防火墙。

我已将 linksys 防火墙设置放回原处,因为它无法正常工作。在此输入图像描述

答案1

防火墙可能会阻止从外部 IP 地址通过 SSH 访问您的 NAS,同时允许从 LAN 中的私有 IP 进行访问。检查 NAS 和路由器上的防火墙配置(如果有)。

答案2

使用的公网 IP 必须购买一个,并且应该从您当地的 ISP 处获取。如果是这样,我认为通过该公共 IP 地址进行 ssh 应该不会有问题。是这样吗?

更新

“我的IP是什么”当然会给你一个公共IP,但请注意,它是动态的,不会一直保留给你。好吧,假设您输入“what is my ip”所得到的内容暂时保留,但是,根据我的经验,有些 ISP 不会添加到 Internet 域内的动态公共 ip 的路由。所以,这可能就是你的情况。

即使您的本地 ISP 允许访问这些动态公共 IP,您还需要在本地路由器上设置至少两个步骤。

  1. 设置从互联网端到本地网络的端口转发。 (如果以 SSH(端口 22/tcp)为例) localnetwork:22<-----router----->internet:22

  2. 排除特定本地 IP 的 NAT。我所说的本地IP是指您分配给本地服务器的IP地址。这是为了确保您的本地路由器在转发流量时不会进行任何 IP/端口转换。

相关内容