SSH 错误 ssh_exchange_identification:读取:对等方重置连接

Tmx*_*Tmx 6 networking linux ssh vpn debian

我正在尝试将 ssh 访问到服务器,但得到“ ssh_exchange_identification: read: Connection reset by peer ”。当我将计算机移到家中时,相同的客户端运行良好,但当计算机在办公室时显示错误。办公网络中的某些 LAN 网络设置是否可能导致问题?我在办公网络中尝试了其他计算机,同样的问题。

我可以更改服务器设置来解决此问题吗?

具有相同 Debian 的客户端和服务器“Linux debian 3.16.0-4-amd64 #1 SMP Debian 3.16.7-2 (2014-11-06) x86_64 GNU/Linux”

在客户端,日志显示:

OpenSSH_6.7p1 Debian-3、OpenSSL 1.0.1j 2014 年 10 月 15 日
debug1:读取配置数据/home/client/.ssh/config
debug1:/home/client/.ssh/config 第 13 行:为 navtk 应用选项
debug1:读取配置数据 /etc/ssh/ssh_config
debug1:/etc/ssh/ssh_config 第 19 行:为 * 应用选项
debug1:主机名已更改;重读配置
debug1:读取配置数据/home/client/.ssh/config
debug1:读取配置数据 /etc/ssh/ssh_config
debug1:/etc/ssh/ssh_config 第 19 行:为 * 应用选项
debug2:ssh_connect:needpriv 0
debug1:连接到 www.host.com [xx.xx.xx.xx] 端口 xx。
debug1:连接建立。
debug1:身份文件/home/client/.ssh/user type 1
debug1: key_load_public: 没有那个文件或目录
debug1:身份文件/home/client/.ssh/user-cert type -1
debug1:启用协议 2.0 的兼容模式
debug1:本地版本字符串 SSH-2.0-OpenSSH_6.7p1 Debian-3
ssh_exchange_identification:读取:对等方重置连接

和登录服务器端

服务器侦听 :: 端口 443。
debug3: fd 5 不是 O_NONBLOCK
debug1:服务器在调试模式下运行时不会分叉。
debug3:send_rexec_state:输入 fd = 8 config len 735
debug3: ssh_msg_send: 类型 0
debug3:send_rexec_state:完成
debug1: rexec start in 5 out 5 newsock 5 pipe -1 sock 8
debug1:复制后的 inetd 套接字:3、3
debug1:getpeername 失败:传输端点未连接
debug1: get_remote_port 失败

Ken*_*ter 5

“Connection reset by peer”表示TCP流从另一端异常关闭。我认为最可能的解释是处理连接的远程服务器进程崩溃了,或者某些网络设备(如状态防火墙或负载平衡器)决定干扰连接。

如果可以,您需要在远程服务器上调试它。sshd日志通过syslog,并且在典型的 Unix 系统上,日志条目将位于/var/log目录中的文件之一中。如果你很幸运,sshd每次它放弃你的会话时都会记录一些东西。

如果您在服务器上具有 root 访问权限,则可以运行sshd. 成为 root 然后运行:

/path/to/sshd -ddd -p 1022
Run Code Online (Sandbox Code Playgroud)

这将运行一个 SSH 服务器实例,它将侦听端口 1022,接受一个连接,并将调试信息打印到您的终端。像往常一样运行你的客户端,除了指定端口 1022 作为端口:

ssh -p 1022 user@host
Run Code Online (Sandbox Code Playgroud)

服务器打印的调试信息有望让您清楚正在发生的事情。

编辑:服务器输出表明服务器没有崩溃或故意关闭 TCP 连接。其他原因导致它关闭。我会查看服务器上安装的任何可能监控 TCP 会话的安全软件,以及任何防火墙、负载平衡器或可能是本地网络一部分的类似网络硬件。