CentOS 全部使用 firewall-cmd 来管理防火墙,操作都是靠 shell 的参数来执行(带双横线)
state 状态(不是status);
zone 区域:公共;
add-port 添加端口(需要加上协议:/tcp);
permanent 永久生效;
remove-port 移除端口;(移除也需要permanent)
reload 重载;
开启关闭服务是通过 firewalld 服务来实现
enable 开启,重启有效;
start 开启,本次开机有效;
stop 关闭服务;
disable 禁用服务;
# 查看防火墙的状态
firewall-cmd --state
# 查看防火墙开放的端口
firewall-cmd --zone=public --list-ports
# 查看防火墙开放的服务
firewall-cmd --list-ports
# 查看还有哪些服务可以打开
firewall-cmd --get-services
# 启动
systemctl start firewalld.service
# 开放端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
# --zone=public:表示作用域为公共的;
# --add-port=8080/tcp:添加tcp协议的端口8080;
# --permanent:永久生效,如果没有此参数,则只能维持当前服务生命周期内,重新启动后失效;
# 多个端口
firewall-cmd --zone=public --add-port=80-90/tcp --permanent
# 重启(新增/删除操作需要重启防火墙服务,并重载)
systemctl restart firewalld.service
# 重载
firewall-cmd --reload
# 删除
firewall-cmd --zone=public --remove-port=8080/tcp --permanent