如下示例把SSH默认端口22改为122.
#Port 22 #找到改行,如果还想继续使用该端口,可以把#去掉,如果使用新端口,可以默认不管 Port 122 #下面添加这一行
首先查看SELinux允许的端口
[root@vmtest01 ~]# semanage port -l | grep -i ssh ssh_port_t tcp 22
然后添加122端口到SELinux
[root@vmtest01 ~]# semanage port -a -t ssh_port_t -p tcp 122
再查看是否添加成功,如下,已经成功添加
[root@vmtest01 ~]# semanage port -l | grep -i ssh ssh_port_t tcp 122,22
CentOS 7防火墙已经从iptable换用Firewalld了,其实功能类似,但命令不同,这里我们需要检查下防火墙状态
首先查看下防火墙状态
[root@vmtest01 ~]# systemctl status firewalld.service
#如果想直接把防火墙关闭,则不用再指定例外端口了,但会不安全,关闭防火墙命令如下
systemctl stop firewalld.service #停止firewall
然后查看下122端口,是否在例外端口中
[root@vmtest01 ~]# firewall-cmd --permanent --query-port=122/tcp no # 系统提示没有加入例外端口
下面添加122端口到例外端口中
[root@vmtest01 ~]# firewall-cmd --permanent --add-port=122/tcp success
[root@vmtest01 ~]# systemctl restart sshd.service
至此,我们可以开始通过122端口使用ssh服务了
补充:
过程中可能遇到开通不成功的问题,需要排查,可能需要用到的命令如下
1 在本机查看配置文件是否改的对:cat /etc/ssh/sshd_config|grep -i port
2 在本机查看sshd服务对应的pid:ps aux|grep -i sshd
3 查看pid进程对应的端口:netstat -anp|grep -i ssh
4 查看占用端口的进程:netstat –apn | grep 122
参考:
原文:http://www.cnblogs.com/lizhaoxian/p/4910623.html