重新启动后无法访问SSH

我有一个问题,我可以通过SSH远程访问服务器,但是如果我发送重新启动命令。 一旦服务器重新启动,当我尝试重新login时,会收到超时。 解决问题的唯一方法是从物理服务器命令行中发出以下命令“service iptables restart”“service sshd restart” 。 我使用非标准端口通过SSH访问服务器。 防火墙设置为允许在该端口上访问。

有人可以告诉为什么发生这种情况?

你可以安装另外一个防火墙,使用自己的initscript,重新启动iptables服务来清除它添加的规则,并把它自己放在适当的位置。 重启后iptables -L的输出以及/etc/init.d的内容列表可以证实这一点。

当你执行“服务servicename restart”中的任何一个时,一个(或两者)产生如下的输出:

 Stopping sshd: [FAILED] Starting sshd: [ OK ] 

如果sshd或iptables产生“失败”,那么当你发出重启时,它会“ok”,它不会从init开始。 你可以用这个来修复

 sudo /sbin/chkconfig sshd on 

要么

 sudo /sbin/chkconfig iptables on