这是我在系统日志中看到的内容
Sep 18 01:01:16 homepage init: ssh main process ended, respawning
Sep 18 01:01:16 homepage init: ssh main process (1444) terminated with status 255
Sep 18 01:01:16 homepage init: ssh main process ended, respawning
Sep 18 01:01:16 homepage init: ssh main process (1447) terminated with status 255
Sep 18 01:01:16 homepage init: ssh main process ended, respawning
Sep 18 01:01:16 homepage init: ssh main process (1450) terminated with status 255
Sep 18 01:01:16 homepage init: ssh respawning too fast, stopped
中的端口sshd_config
是22
,ListenAddress
被注释掉
我尝试ssh
从移动22
到2222
端口时遇到了这个问题。它不起作用,我改回来了,但没有成功。
有任何想法吗?
更新型多巴胺:
我不知道为什么它有帮助,但我只是sshd_config
用备份中的一个替换了它。据说diff
它们是相同的(但没有检查md5sum
)。这很有帮助 :-S
UPD2:
这是5.8p1-1ubuntu3
答案1
从你使用 Ubuntu 的情况来看,这似乎是一个错误,正如这个问题的答案所表明的那样AskUbuntu.com:
引用原答案:
这似乎是错误 #687535 的结果,该错误最近在 natty 中被修复,并且作为建议的更新上传到 maverick 和 lucid。
https://bugs.launchpad.net/ubuntu/lucid/+source/openssh/+bug/687535
我鼓励大家去那里,尝试测试用例(搜索测试用例),并在安装建议的修复之前和之后发布您的结果。这将有助于 SRU 团队确定验证已完成并将其作为更新发布。
此外,似乎至少还有另外一个人遇到过同样的问题,并通过注释掉特定的ListenAddress
指令并添加通用的指令成功解决了该问题ListenAddress 0.0.0.0
,如下所述这篇博文:
[...]
我的想法是,sshd 试图在配置网络接口之前启动,这导致它失败,因为它在 /etc/ssh/sshd_config 中有一个 ListenAddress 指令。
注释掉特定的 ListenAddress 指令并添加 ListenAddress 0.0.0.0 以让 sshd 监听任何地址解决了问题。文件服务器无论如何只有 1 个 IP 地址。
答案2
确保系统中没有运行 sshd 守护进程
ps -ef | grep sshd
如果有的话,杀死任何一个。
还要确保没有其他进程使用端口 22
netstat -an | grep 22 | grep LISTEN
然后再次启动 sshd(取决于您使用的系统或发行版)