firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.8/32" port protocol="tcp" port="22" accept"
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.18/32" port protocol="tcp" port="22" accept"
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.8/32" port protocol="tcp" port="3306" accept"
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.8/32" port protocol="tcp" port="8080" accept"
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.8/32" accept"
#删除默认允许SSH端口
firewall-cmd --permanent --zone=public --remove-service=ssh
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.199.18/32" port protocol="tcp" port="22" accept"
#查询端口是否默认开放
firewall-cmd --zone=public --query-port=80/tcp
#查询默认访问是否开放
firewall-cmd --zone=public --query-service=http
firewall-cmd --permanent --add-port=80/tcp
# 永久打开3690/TCP端口
firewall-cmd --permanent --add-port=3690/tcp
#(--permanent永久生效,没有此参数重启后失效)
firewall-cmd --zone=public --add-port=80/tcp --permanent
# 永久打开1500-3000端口
firewall-cmd --zone=public --permanent --add-port=1500-3000/tcp
# 移除3690端口
firewall-cmd --zone=public --remove-port=3690/tcp --permanent
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
#. 查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
firewall-cmd --state
#查看所有打开的端口:
firewall-cmd --zone=public --list-ports
#. 查看防火墙规则(只显示/etc/firewalld/zones/public.xml中防火墙策略)
firewall-cmd --list-all
#. 查看所有的防火墙策略(即显示/etc/firewalld/zones/下的所有策略)
firewall-cmd --list-all-zones
#. 重新加载配置文件
firewall-cmd --reload
#. 停止
systemctl stop firewalld.service
#. 启动
systemctl start firewalld.service
#. 重启
systemctl restart firewalld.service
#. 查看状态:
systemctl status firewalld
#.禁止firewall开机启动
systemctl disable firewalld
#. 设置开机启用防火墙:
systemctl enable firewalld.service
CentOS7默认使用的是firewall作为防火墙,使用iptables必须重新设置
1、直接关闭防火墙
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
##查询所有区域
firewall-cmd --list-all-zones
区域
1.trusted(信任区域):允许所有的传入流量
2.public(公共区域):允许与ssh或dhcpv6-client预定义服务匹配的传入流量,其余均拒接。是新添加网络接口的默认区域
services: cockpit dhcpv6-client ssh
3.external(外部区域):允许与ssh预定义服务匹配的传入流量,其余均拒绝。默认将通过此区域转发的ipv4传出流量将进行地址伪装,可用于为路由器启动伪装功能的外部网络。
4.home(家庭区域):允许与ssh、mdns、samba-client或dhcpv6-client预定义服务匹配的流入流量,其余均拒绝。
5.internal(内部区域):默认值时与home区域相同。
6.work(工作区域):允许与ssh、dhcpv6-client预定义服务匹配的传入流量,其余均拒绝
7.dmz(隔离区域也称为非军事区域):允许与ssh预定义服务匹配的传入流量,其余均拒绝
8.block(限制区域):拒绝所有传入流量
9.drop(丢弃区域):丢弃所有传入流量,并且不产生包含ICMP的错误响应。
注意:本文归作者所有,未经作者允许,不得转载
