已整理-firewalld防火墙配置

 

目录:

  1、firewalld防火墙介绍
  2、firewalld区域与配置规则
  3、firewall-cmd配置

 

1、firewalld防火墙介绍
防火墙作用:隔离,严格过滤入站,允许出站;

系统服务: firewalld
管理工具: firewall-cmd , firewall-config

 

2、firewalld区域与配置规则
根据所在的网络场所区分,预设保护规则集:

-public:        仅允许访问本机的sshd,dhcp,ping少数几个服务
-trusted:       允许任何访问
-block:         阻塞任何来访请求(明确拒绝)
-drop:         丢弃任何来访的数据包(直接丢弃,不给客户端回应,节省资源)

 

firewalld默认提供了九个zone配置文件:block.xml、dmz.xml、drop.xml、external.xml、 home.xml、internal.xml、public.xml、trusted.xml、work.xml,都保存在/usr/lib/firewalld/zones/目录下。


配置规则的位置:
- 运行时(runtime)
- 永久(permanent)

运行方式是: 匹配及停止;
当收到数据包,至少有: 源IP地址,目标IP地址,数据
1)查看数据包中源IP地址,然后查询所有区域中规则,哪一个区域中有该源IP地址的规则,则进入哪一个区域;
2)进入默认区域(public),不是sshd,dhcp,ping,都拒绝;

与iptables区别:
1)iptables 仅能通过命令行进行配置;而 firewalld 提供了图形接口,类似windows防火墙的操作方式;
2)iptables 每一个单独更改意味着清除所有旧的规则,并从 /etc/sysconfig/iptables 中读取所有新的规;则;而 firewalld 在有规则变动后,可以仅仅运行规则中的不同之处,即在 firewalld 运行时间内,改变设置时可以不丢失现行链接;
3)iptables 的配置文件在 /etc/sysconfig/iptables 中;而 firewalld 的配置文件在 /usr/lib/firewalld/ 和 /etc/firewalld/ 中的各种 XML 文件中;
4)iptables 没有守护进程,并不能算是真正意义上的服务;而 firewalld 有守护进程;
5)iptables 通过控制端口来控制服务,而 firewalld 则是通过控制协议来控制端口;
【firewalld】默认是拒绝;而【iptables】默认是允许。

 

3、firewall-cmd配置
查看防火墙默认区域:

# firewall-cmd --get-default-zone    #默认就是public
public

 

修改默认区域:

# firewall-cmd --set-default-zone=block    #修改默认区域为: block 区域

 

在一个区域添加协议:

# firewall-cmd --zone=public --list-all            #查看区域public里面的所有配置,ping服务没有列出来
# firewall-cmd --zone=public --add-service=http       #runtime,添加http到public区域中,可以正常访问http了
# firewall-cmd --zone=public --add-service=ftp       #runtime,添加ftp到public区域中,可以正常访问ftp了

# firewall-cmd --zone=public --add-service=http --permanent    #永久添加,写到了相当的配置文件中了

# firewall-cmd --zone=public --remove-service=dhcpv6-client --permanent    #从public中永久的移除dhcpv6-client服务

 

重新加载配置:

# firewall-cmd --reload

 

拒绝源IP:

# firewall-cmd --zone=block --add-source=10.10.67.40 --permanent    #1个源IP只能在1个区域中,在block区域中,就不能在trusted区域中了

 

宽松模式,默认区域为: trusted ,单独拒绝的源ip地址写入block,适合于拒绝的少,允许的多的应用场景:
严格模式,默认区域为: block,单独允许的源IP地址写入trusted,适合于允许的少,拒绝的多的应用场景;


实现本机的端口映射:
本地应用的端口重定向(8080-->80),应用场景:
从客户机访问 8080 的请求,自动映射 到本机 80

# firewall-cmd --permanent --zone=public --add-forward-port=port=8080:proto=tcp:toport=80    #8080映射到80    
# firewall-cmd --reload

 

posted on 2022-10-20 18:19  tengq  阅读(2837)  评论(0编辑  收藏  举报

导航