该文章的方法为转载的,原文作者qihang01,发表在系统运维博客,原文链接:http://www.osyunwei.com/archives/672.html
原文的教程有关于sshd_config其它方面的一些修改方法,本文只说关于ssh端口的修改方法,文章稍作修改。
- 实现目的:把ssh默认远程连接端口修改为2222,方法如下:
注:端口也不能乱填写,建议在10000-65535之间,下文的方法一直到重启了SSH为止,都还只算是添加了一个新端口,此时22和2222都能连接上SSH,所以如果大家只是想加一个SSH端口而不是修改原22端口,不看最后一句话就算是完成了。
编辑防火墙配置(如果有的话)
- 输入:vi /etc/sysconfig/iptables
(用vim亦可,具体的可以百度或者谷歌下这两个编辑器的命令。)
- 防火墙增加新端口2222:-A INPUT -m state –state NEW -m tcp -p tcp –dport 2222 -j ACCEPT
如下例:
==================================================================
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 2222 -j ACCEPT
-A INPUT -j REJECT –reject-with icmp-host-prohibited
-A FORWARD -j REJECT –reject-with icmp-host-prohibited
COMMIT
- 重启防火墙,使配置生效:/etc/init.d/iptables restart或者service iptables restart
备份ssh端口配置文件(这一步可不做,我是直接修改的)
cp /etc/ssh/ssh_config /etc/ssh/ssh_configbak
cp /etc/ssh/sshd_config /etc/ssh/sshd_configbak
修改ssh端口为:2222
- 输入:vi /etc/ssh/sshd_config
- 在其中将端口#Port 22下面增加Port 2222,如:
Port 22
port 2222
如果没修改过的话,这里默认的应该是#Port 22,大家需要把#去掉,再在它的下面加上你自定义的端口号。
注:原文中还有输入vi /etc/ssh/ssh_config,按如上相同的方法加上2222端口的过程,ssh_config和sshd_config的配置是一样的,只不过一个是对应客户端,一个是服务端,按我的理解就是一个对内一个对外,只是修改VPS的SSH连接端口号的话,改sshd_config就行了,本人就是如此。
- 重启SSH:/etc/init.d/sshd restart或者service sshd restart
完成后先用新端口2222尝试下是否能连接上,如果可以就再按照上面相同的步骤把Port 22这句删除并重启SSH,这样就只能用你自定义的2222端口连接了。当然,如果你只是想添加一个新SSH端口而不限制原端口的话,这一步就不用做了。