Linux16-防火墙与firewalld

 

目录

一、netfilter与firewalld

二、firewalld与firewall-cmd、firewall-config

2.1、预定义区域

2.2、预定义服务

2.3、firewall-cmd和firewall-config配置工具

2.4、富规则rich-rule


一、netfilter与firewalld

linux内核有个防火墙模块netfilter,它是一个 包过滤防火墙,工作在OSI的2、3、4层。netfilter通过策略来控制和匹配条件,满足数据包的状态。与netfilter交互需要工具。最常见的就是iptables和firewalld书写和加载策略的工具。

RHEL6:iptables 没有明确的拒绝就是允许
RHEL7:firewalld 没有明确的允许就是拒绝

二、firewalld与firewall-cmd、firewall-config

CentOS/RHEL7以后引入了一个与netfilter交互的新方法firewalld服务。通过启动和关闭firewalld服务来打开和关闭防火墙,通过直接编辑firewalld配置文件、firewall-cmd命令行工具、firewall-config图形化工具来配置防火墙规则。

[root@server0 ~]# systemctl status firewalld.service
firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled)
   Active: active (running) since Sun 2021-03-28 15:19:30 CST; 1h 15min ago

2.1、预定义区域

firewalld随附了一些预定义区域,适合不同用途,默认区域为publlic。随附区域有trusted、home、internal、work、public、external、dmz、block、drop区域。相关设置,可以编辑配置文件/etc/firewalld/zones/zone.xml。关于各个区域的功能和配置文件语法,直接man 5 firewalld.zone。

2.2、预定义服务

firewalld随附了预定义服务,可以方便允许流量通过防火墙。配置文件/etc/firewalld/services/service.xml。关于各个服务的功能和配置文件语法,直接man 5 firewalld.service。

amanda-client        ftp                  ipsec                mdns                 pmcd                 radius               tftp
bacula               high-availability    kerberos             mountd               pmproxy              rpc-bind             tftp-client
bacula-client        http                 kpasswd              ms-wbt               pmwebapi             samba                transmission-client
dhcp                 https                ldap                 mysql                pmwebapis            samba-client         vnc-server
dhcpv6               imaps                ldaps                nfs                  pop3s                smtp                 wbem-https
dhcpv6-client        ipp                  libvirt              ntp                  postgresql           ssh
dns                  ipp-client           libvirt-tls          openvpn              proxy-dhcp           telnet

2.3、firewall-cmd和firewall-config配置工具

常用的firewall-cmd命令常用选项如下。
更改规则以后,--reload加载到内存,规则才生效。
--permanent是写入配置文件,保证重启后依旧生效。

其他具体用法直接 man firewall-cmd。
firewall-config是firewall-cmd的图形化界面,不推荐使用。

firewall-cmd --list-all                          # 查看当前防火墙策略
firewall-cmd --permanent --add-port=123/udp      # 添加入站规则 端口/协议
firewall-cmd --permanent --add-service=https     # 添加入站规则 服务
firewall-cmd --permanent --remove-port=80/tcp    # 删除入站规则 端口/协议
firewall-cmd --permanent --remove-service=telnet # 删除入站规则 服务
firewall-cmd --reload                            # 加载到内存才生效

2.4、富规则rich-rule

此外,firewalld还提供了自定义的防火墙规则rich-rule富规则。具体用法直接 man 5 firewalld.richlanguage。这里展示一个语法和手册的一个ipv6端口转发的例子。

firewall-cmd --permanent --add-rich-rule='rule'    # 添加富规则
firewall-cmd --permanent --remove-rich-rule='rule' # 删除富规则

Example 5
       Forward IPv6 port/packets receiving from 1:2:3:4:6:: on port 4011 with protocol tcp to 1::2:3:4:7 on port 4012
           rule family="ipv6" source address="1:2:3:4:6::" forward-port to-addr="1::2:3:4:7" to-port="4012" protocol="tcp" port="4011"

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

苦行僧(csdn)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值