本次演示以SSH服务为例,SSH默认监听端口是22,先保留了22端口,所以我们要进入ssh的配置文件添加新端口并注释或删掉原有端口。

1、使用vi编辑器修改文件 sshd_config,路径是/etc/ssh/sshd_config,找到“#Port 22”,添加新的端口号10086。

Linux之修改服务端口号_服务器

2、如果你关闭了SELinux,可以忽略第二步

先查看SELinux开放给ssh使用的端口

semanage port -l  | grep ssh

Linux之修改服务端口号_python_02

可以看到我的系统SELinux没有给SSH开放10086端口,那么咱们自己添加进去

semanage port -a -t ssh_port_t -p tcp 10086

再次查看结果

Linux之修改服务端口号_服务器_03

 3、如果你关闭了防火墙,可以忽略第三步

检查防火墙是否开通10086端口

firewall-cmd --permanent --query-port=10086/tcp

Linux之修改服务端口号_linux_04

结果显示未开通10086端口,需要开通

firewall-cmd  --permanent  --add-port=10086/tcp

再次检查端口已开通

Linux之修改服务端口号_python_05

4、重启SSH服务和防火墙

systemctl restart sshd
systemctl status sshd

Linux之修改服务端口号_linux_06

systemctl restart firewalld.service
systemctl status firewalld.service

Linux之修改服务端口号_linux_07

 5、尝试通过10086端口登录SSH

Linux之修改服务端口号_linux_08

注意事项:

在查看SELinux开放给ssh使用的端口(semanage port -l| grep ssh)时,

如果提示:bash: semanage: command not found

则执行下面命令:

使用yum查找提供此功能的的软件包:yum  provides semanage

安装policycoreutils-python软件包:yum install  policycoreutils-python -y

然后再执行上面的命令

查阅了相关资料,发现是CentOS8上这个包已经换了一个名称了:

It's renamed in el8: policycoreutils-python-utils-2.9-9.el8.noarch

于是使用命令yum -y install policycoreutils-python-utils ,成功安装semanage