Linux Centos7修改ssh远程登录的默认22端口,简单几步就可以搞定了。
修改配置sshd_config文件
[root@localhost ~]# vim /etc/ssh/sshd_config
看到默认端口是22,我这里已经修改为50011了,(端口不要大于65535,且不能被其他进程占用),修改之前建议先保留原有22端口,新增端口打开后,测试通过了再注释掉22端口即可。
保存退出。
防火墙放开端口
[root@localhost ~]# firewall-cmd --zone=public --add-port=50011/tcp --permanent [root@localhost ~]# firewall-cmd --reload
SELinux中添加修改的SSH端口
先查看ssh端口
[root@localhost ~]# semanage port -l | grep ssh ssh_port_t tcp 50011, 22
我这里已经打开了,所以显示有2个端口,一般默认是22
添加新端口
[root@localhost ~]# semanage port -a -t ssh_port_t -p tcp 50011
注意:这里可能会遇到2个问题:
1.如果缺少semanage,则需要先安装。
yum provides semanage
安装运行semanage所需依赖工具包 policycoreutils-python:
yum -y install policycoreutils-python
安装之后再查看ssh端口。
2.如果执行添加新端口的时候报错,“libsemanage.semanage_get_lock: Could not get direct transaction lock at /etc/selinux/targeted/modules/semanage.trans.LOCK. (Resource temporarily unavailable).”时,则直接将semanage.trans.LOCK文件修改即可。
mv /etc/selinux/targeted/modules/semanage.trans.LOCK /etc/selinux/targeted/modules/semanage.trans.LOCK.back
然后重新执行上面的添加操作。
重启ssh服务
systemctl restart sshd.service
然后使用新端口重新登录,如果没有问题,则注释掉原来得22端口。
到这里已经完成了ssh端口修改。