对于CentOS 8版本,防火墙使用的是firewalld服务。如果你想要在CentOS 8中刷新防火墙规则,可以按照以下步骤操作:
防火墙相关命令
启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld
开机禁用 : systemctl disable firewalld
开机启用 : systemctl enable firewalld
查看当前ssh服务器端口号
netstat -tunlp | grep "ssh"
-
查看当前防火墙规则:
使用以下命令查看当前防火墙规则和服务列表:
sudo firewall-cmd --list-all
修改配置文件
查看ssh config文件 找到port 把22打开(防止远程连不上)添加新端口保存
vi /etc/ssh/sshd_config
- 放行新的SSH端口:
假设你要放行13389端口,可以使用以下命令来添加并放行该端口:
sudo firewall-cmd --add-port=13389/tcp --permanent
这会将端口13389的TCP流量添加到防火墙规则中,--permanent
参数会将该规则永久保存,以便防火墙重启后仍然生效。
-
重新加载防火墙规则:
执行以下命令重新加载防火墙规则,以使更改生效:
sudo firewall-cmd --reload
- 检查ssh中是否添加成功
systemctl status sshd
如出现以下报错,建议临时关闭selinux
error: Bind to port 13389 an 0.0.0. failed: Perwission denied
error: Bind to port 13389 an : failed: Permission denied.
关闭命令,临时关闭重启后还会开启
setenforce 0
打开命令
setenforce 1
或者向selinux中添加修改的SSH端口---此方法在底部
- 验证规则是否生效:
使用以下命令查看防火墙规则,确保端口13389已被添加并放行:
sudo firewall-cmd --list-all
现在,你应该能够通过端口13389进行SSH远程连接。如果问题仍然存在,请确保服务器端的SSH配置也已经修改为监听13389端口。
如果是云服务器,查看防火墙是否放行
selinux修改端口
安装selinux的管理工具 semanage
yum provides semanage
安装运行semanage所需依赖工具包 policycoreutils-python
yum -y install policycoreutils-python
查询当前 ssh 服务端口:
semanage port -l | grep ssh
向 SELinux 中添加 ssh 端口:
semanage port -a -t ssh_port_t -p tcp 13389
重启ssh服务
systemctl restart sshd