sshd 重置不同端口上的连接

not*_*row 0 ssh

我想在我的树莓设备上的两个端口上运行 SSHd。我已经添加

Port 22
Port 5500
Run Code Online (Sandbox Code Playgroud)

/etc/ssh/sshd_config,然后跑了/etc/init.d/ssh restart

问题是,端口 5500 上的连接总是被重置。

我可以在这里看到可能的问题:(它正在以用户身份收听pi)。不知道这怎么会发生。

> lsof -i
sshd     7727   pi    3u  IPv4  13512      0t0  TCP *:5500 (LISTEN)
sshd     8122 root    3u  IPv4  15032      0t0  TCP *:ssh (LISTEN)
Run Code Online (Sandbox Code Playgroud)

此外,其他输出:

> ssh localhost -p 5500 -v
debug1: Local version string SSH-2.0-OpenSSH_6.0p1 Debian-4+deb7u2
debug1: SSH2_MSG_KEXINIT sent
Read from socket failed: Connection reset by peer
Run Code Online (Sandbox Code Playgroud)

来自 /var/log/auth.log

> tail /var/auth/auth.log
Dec  1 18:01:18 usoplesk sshd[8297]: error: Could not load host key: /etc/ssh/ssh_host_rsa_key
Dec  1 18:01:18 usoplesk sshd[8297]: error: Could not load host key: /etc/ssh/ssh_host_dsa_key
Dec  1 18:01:18 usoplesk sshd[8297]: error: Could not load host key: /etc/ssh/ssh_host_ecdsa_key
Dec  1 18:01:18 usoplesk sshd[8297]: fatal: No supported key exchange algorithms [preauth]
Run Code Online (Sandbox Code Playgroud)

我认为问题出在 sshd 正在侦听的用户错误中,但我找不到任何配置来更改此设置。

端口 22 上的 ssh 照常工作。

Jde*_*aan 5

在我看来,好像您在启动新服务之前没有停止原始 sshd 服务。新的没有root权限启动,尝试分配22端口失败,只分配了5500端口。

检查开始时间

ps -ef | grep sshd
Run Code Online (Sandbox Code Playgroud)

不知道您的操作系统,但开始寻找

sudo service OpenSSH status
Run Code Online (Sandbox Code Playgroud)

或者

sudo /etc/init.d/ssh status
Run Code Online (Sandbox Code Playgroud)

  • 谢谢!`restart` 命令并没有停止旧的 sshd,在杀死它之后(+ /etc/init.d/ssh start),一切正常。 (2认同)