【问题标题】:SSH Connection Being Refused When I'm Remote, but not Local (Port Forwarding Already Enabled)当我在远程但不是本地时,SSH 连接被拒绝(端口转发已启用)
【发布时间】:2013-10-29 04:42:39
【问题描述】:

我在我的 Ubuntu 服务器(运行 XMonad)上设置了 SSH,并为我用来连接到我的家庭服务器的笔记本电脑生成了一个密钥。我还继续使用我的无线路由器并转发端口 22 以供 SSH 使用。当我在家使用标准时,我可以正常 SSH:

ssh user@ipaddress

但是,当我在本地网络之外时,我会收到此错误:

ssh: connect to host xxx.xx.xx.xxx port 22: Connection refused

我读到的所有内容都说我需要 a) 检查我的端口 22 是否转发(确实如此)或 b) 检查 sshd 是否实际在我的 Ubuntu 服务器上运行(确实如此)。

知道是什么阻止了我在远程时的 SSH 工作吗?

【问题讨论】:

  • 当你说它在本地工作正常时,你是指你可以从局域网上的另一台机器连接,还是你的意思是从同一个 Ubuntu 机器?
  • 您只有一个调制解调器/路由器,还是有两个路由器设备一起使用?您的 Ubuntu 防火墙是否允许端口 22 上的所有流量,而不是限制到 LAN?我想您的 ISP 也不太可能对端口 22 设置防火墙?
  • 是的,当我说我可以在本地正常连接时,我的意思是我可以通过 SSH 从另一台机器(我的笔记本电脑)连接到我的 Ubuntu 服务器。只有一个路由器通过以太网连接到我的服务器;但是,我正在通过无线连接从我的笔记本电脑进行 SSH。

标签: ssh


【解决方案1】:

如果 ssh 用户配置文件不存在,请添加以下行您可以创建配置文件,如下所示。

vi ~/.ssh/config

Host *
ServerAliveInterval 300

更改权限如下:

chmod 600 ~/.ssh/config

重新启动守护程序。希望这会有所帮助。

【讨论】:

  • 遗憾的是,这对我不起作用。无论如何,这不是我的配置文件的位置,但我去了我的 ssh_config 并更改了 ServerAliveInterval - 遗憾的是没有帮助。
猜你喜欢
  • 2017-04-27
  • 2019-05-16
  • 2016-02-15
  • 2019-08-22
  • 2014-12-26
  • 1970-01-01
  • 1970-01-01
  • 2011-03-16
  • 1970-01-01
相关资源
最近更新 更多