来自 Windows 10 和 ChromeOS 的 SSH 连接被拒绝
SSH connection refused from Windows 10 and ChromeOS
我有两个 Ubuntu 16.04 的虚拟服务器,由不同的提供商托管。将我的桌面从 Win7 迁移到 Win10 后,我无法通过 SSH 连接到服务器(请参阅下面的错误消息)。我也尝试过其他操作系统:
- Windows 10 和 ChromeOS:连接被拒绝
- Windows 7,Android 8,Ubuntu 16.04(在桌面上):连接有效
相同的应用程序 (JuiceSSH) 可以在 Android 上连接,但 returns 'connection refused' 在 ChromeOS 上。
错误信息:
1. Gitbash (Windows 10)
$ ssh user@myhost
ssh: connect to host myhost port 22: Connection refused
2. Secure Shell (ChromeOS, with -vvv)
Connection with user@myhost is established...
Loading NaCl plug-in... Finished
OpenSSH_7.6p1, OpenSSL 1.0.2k 26 Jan 2017
debug2: resolving "myhost" port 22
debug2: ssh_connect_direct: needpriv 0
debug1: Connecting to myhost [myip] port 22.
debug1: connect to address myip port 22: Connection refused
ssh: connect to host myhost port 22: Connection refused
NaCl plug-in ended with the status code"255".
3. Bitwise SSH Client (Windows 10)
...
06:34:46.871 Connecting to SSH2 server slejska.de:22.
06:34:47.918 Connection failed. FlowSocketConnector: Failed to connect to target address. Windows error 10061: No connection could be established because the target computer refused the connection.
06:34:47.949 The SSH2 session has been terminated.
备注:
- 我regenerated OpenSSH host keys在服务器上,但是没有任何效果。
- 我停用了 Windows Defender 防火墙,但也没有任何效果。
解决方案:
端口 22 用于某些在路由器上被阻止的计算机。它与操作系统无关。为所有计算机打开端口后,一切正常。感谢@Nathan-McCoy
只是为了让我的原始评论更加可见。
并非所有系统默认都允许 TCP
端口 22
,这是 ssh
的默认端口。
这里有一些方法可以尝试帮助找到问题的根源。
建议
检查客户端上的开放端口
运行 nmap <server>
在想要通过 ssh 连接的客户端上。
如果端口 22
未显示为打开,这可能是防火墙问题。
检查服务器上的开放端口
运行 netstat
在服务器上查看打开了哪些端口。
如果端口 22
不是 LISTENING
,则 ssh 守护程序设置不正确。
我有两个 Ubuntu 16.04 的虚拟服务器,由不同的提供商托管。将我的桌面从 Win7 迁移到 Win10 后,我无法通过 SSH 连接到服务器(请参阅下面的错误消息)。我也尝试过其他操作系统:
- Windows 10 和 ChromeOS:连接被拒绝
- Windows 7,Android 8,Ubuntu 16.04(在桌面上):连接有效
相同的应用程序 (JuiceSSH) 可以在 Android 上连接,但 returns 'connection refused' 在 ChromeOS 上。
错误信息:
1. Gitbash (Windows 10)
$ ssh user@myhost
ssh: connect to host myhost port 22: Connection refused
2. Secure Shell (ChromeOS, with -vvv)
Connection with user@myhost is established...
Loading NaCl plug-in... Finished
OpenSSH_7.6p1, OpenSSL 1.0.2k 26 Jan 2017
debug2: resolving "myhost" port 22
debug2: ssh_connect_direct: needpriv 0
debug1: Connecting to myhost [myip] port 22.
debug1: connect to address myip port 22: Connection refused
ssh: connect to host myhost port 22: Connection refused
NaCl plug-in ended with the status code"255".
3. Bitwise SSH Client (Windows 10)
...
06:34:46.871 Connecting to SSH2 server slejska.de:22.
06:34:47.918 Connection failed. FlowSocketConnector: Failed to connect to target address. Windows error 10061: No connection could be established because the target computer refused the connection.
06:34:47.949 The SSH2 session has been terminated.
备注:
- 我regenerated OpenSSH host keys在服务器上,但是没有任何效果。
- 我停用了 Windows Defender 防火墙,但也没有任何效果。
解决方案:
端口 22 用于某些在路由器上被阻止的计算机。它与操作系统无关。为所有计算机打开端口后,一切正常。感谢@Nathan-McCoy
只是为了让我的原始评论更加可见。
并非所有系统默认都允许 TCP
端口 22
,这是 ssh
的默认端口。
这里有一些方法可以尝试帮助找到问题的根源。
建议
检查客户端上的开放端口
运行 nmap <server>
在想要通过 ssh 连接的客户端上。
如果端口 22
未显示为打开,这可能是防火墙问题。
检查服务器上的开放端口
运行 netstat
在服务器上查看打开了哪些端口。
如果端口 22
不是 LISTENING
,则 ssh 守护程序设置不正确。