CentOS7修改SSH端口,需设置防火墙Firewalld和SELinux放行新端口

修改默认的22端口是一个简单而有效的防止被爆破SSH登录的方法,之前VPS GO也给大家介绍过如何在Linux上修改SSH默认端口,但是针对CentOS7,有些时候除了修改sshd_config文件外,我们还要设置防火墙放行新SSH端口,主要包括在FirewalldSELinux中添加新端口。

**本文示例均以1024作为新SSH端口为例。

一、如何修改SSH端口

常见的Linux系统,包括CentOS、Ubuntu、Debian均是修改SSH配置文件:

vi /etc/ssh/sshd_config

在文件中将SSH端口修改成新的默认端口(Port: 1024)。

详细教程可以参考:《Linux修改SSH默认22端口,指定SSH端口的方法

二、CentOS7防火墙规则设置

VPS GO自己在VPS、VDS和独立服务器上都试过上面的方法,同样的修改方式,同样的系统(CentOS 7),只有独立服务器上是需要额外配置防火墙放行新SSH端口的,所以如果你只是修改了上面的文件后新的SSH端口就可以用了,那么就不需要设置防火墙,如果新的SSH端口不通,还是只能通过旧SSH端口远程,那么可以根据下面的教程设置Firewalld和SELinux。

1、Firewalld添加端口

查看Firewalld是否开启的命令:firewall-cmd --state

1、在Firewalld中添加新的SSH端口:

firewall-cmd --zone=public --add-port=1024/tcp --permanent

2、重启Firewalld:

firewall-cmd --reload

3、查看是否添加成功,如果成功会返回yes,否则输出no:

firewall-cmd --zone=public --query-port=1024/tcp

2、SELinux添加端口

查看SELinux是否开启的命令:/usr/sbin/sestatus -v

1、首先查看SELinux中放行的SSH端口:

semanage port -l | grep ssh

如果这里提示没有找到semanage这个命令(semanage command not found),那么先安装semanage:yum -y install policycoreutils-python

对于CentOS 8,安装semanage需要另一个命令:《Linode CentOS8提示“Unable to install policycoreutils-python”的解决办法》。

2、在SELinux中添加SSH端口

semanage port -a -t ssh_port_t -p tcp 1024

3、检查是否添加成功,如果成功,则会在原来SSH端口的基础上增加一个1024端口,否则只有原来的SSH端口。

semanage port -l | grep ssh

以上就是老王给大家分享的在CentOS 7上如何设置防火墙放行端口的教程,在GGC的独服上确实要这么设置才能成功修改SSH端口,之前用他家VPS和VDS都不需要配置防火墙。另外,如果是阿里云、腾讯云、亚马逊云等可能还要设置网页端的防火墙。

最后,CentOS查看端口是否开启可以借助这个在线小工具查看:IP可用性检测工具


【AD】AkileCloud#2024BlackFriday黑五活动,每日限量半价放货香港,日本,美国流量型云服务器,只要50元/年

【AD】哪些路由器可刷老毛子固件(Padavan)? 品牌型号/固件下载汇总

【AD】美国洛杉矶CN2 VPS/香港CN2 VPS/日本CN2 VPS推荐,延迟低、稳定性高、免费备份_搬瓦工vps