CentOS 7 防火墙配置相关指令 + 防火墙开放端口
一、防火墙相关指令
-
检查防火墙状态
shellsystemctl status firewalld
shellfirewall-cmd --state
若输出显示
active (running)
,说明防火墙正在运行;若显示inactive (dead)
,则表示防火墙当前未运行。` -
开启防火墙
shellsystemctl start firewalld
-
关闭防火墙
①
临时关闭防火墙
,运行此命令后,防火墙会立即停止运行,但是系统关机重启后,防火墙会自动重启。shellsystemctl stop firewalld
②
永久关闭防火墙
,运行此命令后,防火墙不会
立即停止运行,系统关机重启后,防火墙已经关闭。shellsystemctl disable firewalld
-
重新启动防火墙
shellsystemctl restart firewalld
-
设置防火墙开机自启
shellsystemctl enable firewalld
-
检查防火墙是否开机自启
shellsystemctl is-enabled firewalld
- 若输出为
enabled
:这表明防火墙服务已经被设置为开机自启,系统启动时会自动启动防火墙。 - 若输出为
disabled
:意味着防火墙服务没有设置为开机自启,系统启动时不会自动启动防火墙。 - 若输出为
static
:表示该服务是由系统核心服务启动的,无法通过systemctl enable或systemctl disable来设置其开机自启状态。不过firewalld一般不会出现这种情况。
- 若输出为
-
开放端口
① 开放 TCP 协议 8080 端口(TCP)
shellfirewall-cmd --zone=public --add-port=8080/tcp --permanent
此命令会在公共区域(public)永久开放 8080 端口的 TCP 连接。
② 开放 UDP 协议 8080 端口(UDP)
shellfirewall-cmd --zone=public --add-port=8080/udp --permanent
-
关闭端口
① 关闭 TCP 协议 8080 端口(TCP)
shellfirewall-cmd --zone=public --remove-port=8080/tcp --permanent
② 关闭 UDP 协议 8080 端口(UDP)
shellfirewall-cmd --zone=public --remove-port=8080/udp --permanent
-
重新加载防火墙规则
shellfirewall-cmd --reload
-
检查已开放的防火墙端口
shellfirewall-cmd --zone=public --list-ports
-
查看当前防火墙详细配置信息
shellfirewall-cmd --list-all
二、开放端口
-
检查防火墙状态,如果未开启请先开启
shellsystemctl status firewalld
-
开启防火墙
shellsystemctl start firewalld
-
建议加入防火墙开机自启
shellsystemctl enable firewalld
-
开放端口
shellfirewall-cmd --zone=public --add-port=端口号/协议(tcp/udp) --permanent
如开放
tcp
协议的8080 端口
shellfirewall-cmd --zone=public --add-port=8080/tcp --permanent
-
重新载入防火墙配置,让配置生效
shellfirewall-cmd --reload
-
检查开放的端口
shellfirewall-cmd --zone=public --list-ports
END 配置完成