服务器使用CentOS 5.5
在更改/etc/ssh/sshd_config默认端口后,使用命令重新启动SSH
/etc/init.d/sshd restart
然后我退出
exit
因此,我testing连接SSH ssh -l root 123.456.789.123并迅速得到一个消息,显示修改,我做了一个效果:
ssh: connect to host 123.456.789.123 port 22: Connection refused
我试图连接端口:
ssh -p 12345 -l root 123.456.789.123
这需要很长时间,然后无法连接消息:
ssh: connect to host 123.456.789.123 port 12345: Connection timed out
我想我的命令连接到端口有问题。 运用
ssh -l root 123.456.789.123
快速给出错误
ssh: connect to host 123.456.789.123 port 22: Connection refused ,
同时使用
ssh -p 22 -l root 123.456.789.123
花费时间太长,无法连接消息
ssh: connect to host 123.456.789.123 port 12345: Connection timed out
重启服务器后,这仍然发生
CentOS默认情况下已经运行了iptables防火墙。 您可能需要打开ssh的新端口。
编辑文件/ etc / sysconfig / iptables并find该行(或类似的)
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
把22改成您为sshdselect的端口号
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 12345 -j ACCEPT
保存文件并重新启动iptables服务
sudo service iptables restart
编辑
使用iptables命令
保存了防火墙的当前状态
sudo service iptables save
列出RH-Firewall-1-INPUT表的规则编号
sudo iptables -L RH-Firewall-1-INPUT --line numbers
记下在我的系统上的端口22上允许ssh的行号是12。
12 ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
使用例如端口12345插入新的规则之前的旧规则
sudo iptables -I RH-Firewall-1-INPUT 12 -p tcp -m state --state NEW -m tcp --dport 12345 -j ACCEPT
删除旧的规则,现在会比新的规则进入之前更高,但可以通过列出上面的行号进行检查。
sudo iptables -D RH-Firewall-1-INPUT 13
保存新的configuration
sudo service ipatbles save