centos7防火墙管理

1. 配置文件、区域

# 配置文件说明
firewalld 存放配置文件有两个目录,/usr/lib/firewalld 和 /etc/firewalld,前者存放了一些默认的文件,后者主要是存放用户自定义的数据,所以我们添加的service或者rule都在后者下面进行。

server 文件夹存储服务数据,就是一组定义好的规则。

zones 存储区域规则

firewalld.conf 默认配置文件,可以设置默认使用的区域,默认区域为 public,对应 zones目录下的 public.xml

# 区域

防火墙为了简化管理,将所有网络流量分为多个区域(zone),然后根据数据包的源ip地址或传入的网络接口条件等将流量传入相应区域,每个区域都定义了自己打开或者关闭的端口和服务列表。其中默认区域为public

区域名称	          默认配置说明
Trusted	          允许所有的传入流量
Block	            拒绝所有传入流量
Drop	            丢弃所有传入流量
Public	          允许与ssh、dhcpv6-client预定义服务匹配的传入流量,其余都拒绝,也是新添加网络接口的默认区域
Home	            允许与ssh、mdns、ipp-client、samba-client、dhcpv6-client预定义服务匹配的传入流量,其余都拒绝
Work	            允许与ssh、ipp-client、dhcpv6-client预定义服务匹配的传入流量,其余都拒绝
Internal	        默认值时与home相同
External	        允许与ssh预定义服务匹配的传入流量,其余都拒绝;默认将进过此区域转发的ipv4地址传出流量进行地址伪装
Dmz	              允许与ssh预定义服务匹配的传入流量,其余都拒绝


# 命令
这里需要首先说明的是,在执行命令时,如果没有带 --permanent 参数表示配置立即生效,但是不会对该配置进行存储,相当于重启服务器就会丢失。如果带上则会将配置存储到配置文件,但是这种仅仅是将配置存储到文件,却并不会实时生效,需要执行 firewall-cmd --reload 命令重载配置才会生效。

1.重载防火墙配置
firewall-cmd --reload
2.查看防火墙运行状态
firewall-cmd --state
3.查看默认区域的设置
firewall-cmd --list-all

2. 配置命令

1. 区域管理

# 查看默认区域
[root@server ~]# firewall-cmd --get-default-zone 

# 查看当前活动区域和接口网卡
[root@server ~]# firewall-cmd --get-active-zones 

# 查看所有区域
[root@server ~]# firewall-cmd --get-zones

# 设置默认区域
[root@server ~]# firewall-cmd --set-default-zone=work

2. 服务管理

# 查看预定义服务
[root@server ~]# firewall-cmd --get-services 

# 查看public区域的详细信息
[root@server ~]# firewall-cmd --list-all --zone=public 

# 把http服务加入到public区域中,永久生效
[root@server ~]# firewall-cmd --add-service=http --zone=public --permanent

[root@server ~]# firewall-cmd --reload 

[root@server ~]# firewall-cmd --list-all --zone=public 

# 把http服务从public区域中永久移除

[root@server ~]# firewall-cmd --remove-service=http --zone=public --permanent

[root@server ~]# firewall-cmd --reload 

# 在默认区域中添加http和https2个服务
[root@server ~]# firewall-cmd --add-service=http --add-service=https

[root@server ~]# firewall-cmd --list-all

3. 端口管理

# 在默认区域中添加/删除tcp的3306端口
[root@server ~]# firewall-cmd --add-port=3306/tcp

[root@server ~]# firewall-cmd --list-all

[root@server ~]# firewall-cmd --remove-port=3306/tcp

# 在默认区域中添加udp端口2048-2050
[root@server ~]# firewall-cmd --add-port=2048-2050/udp

[root@server ~]# firewall-cmd --list-all

4. 综合配置(包含网段)

# 将默认区域设置为dmz区域,来自192.168.100.0网段的流量全部分配给internal区域,并且打开internal区域的80端口供用户访问
[root@server ~]# firewall-cmd --set-default-zone=dmz

[root@server ~]# firewall-cmd --add-source=192.168.100.0/24 --zone=internal --permanent

[root@server ~]# firewall-cmd --add-service=http --zone=internal --permanent

[root@server ~]# firewall-cmd --reload 

[root@server ~]# firewall-cmd --list-all

[root@server ~]# firewall-cmd --list-all --zone=internal 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值