Linux防火墙之——iptables和firewalld

目录

1. 防火墙介绍

2. iptables和firewalld的关系

3. iptables和firewalld的区别

4. 四表五链

4.1 四表

4.2 五链

5. 对应关系

6. 在处理各种数据包时,5种默认规则链的应用时间点

7. iptables 命令的管理控制选项

8. iptables举例

8. iptables和firewalld的应用场景及总结


1. 防火墙介绍

● 防火墙是位于内外网之间的一组软硬件部件的组合,主要目的是保护内外网的数据流通的安全,当外网访问内网的时候发送的数据包必须经过内网的防火墙检验是否符合规则。
● 能够指定火墙策略的两个工具包: iptables和firewalld
● Linux的防火墙体系主要工作在网络层,针对TCP/IP数据包实时过滤和限制,属于典型的包过滤防火墙或称作网络层防火墙(iptables)
● Firewalld:只用于管理Linux防火墙的命令程序,属于“用户态”(User Space。又称为用户空间)的防火墙管理体系。支持网络区域所定义的网络链接以及接口安全等级的动态防火墙管理工具。

2. iptables和firewalld的关系

在这里插入图片描述

 参考链接:Linux--防火墙{Firewalld和Iptables的关系,iptables四表五链,firewalld网络区域以及通过图形工具进行操作}_Kevin古月的博客-CSDN博客_firewalld iptables 关系

3. iptables和firewalld的区别

对比项

Firewalld

Iptables

创建规则

允许更新规则而不破坏现有会话和连接

在修改了规则后必须得全部刷新才可以生效

使用区域和服务而不是链式规则

默认策略

默认是拒绝的

默认是允许的

相同

firewalldiptables一样,它们的作用都用于维护规则,而真正使用规则干活的是内核的netfilter

4. 四表五链

  • 常说防火墙三表五链,其实应该说四表五链比较合适,不过raw表应用较少,因此也常用三表五链来描述防火墙

4.1 四表

优先级:

  • 当数据包抵达防火墙时,将依次应用raw、mangle、nat和filter表中对应链内的规则(如果有)如下图所示

在这里插入图片描述

 

4.2 五链

 图示:

在这里插入图片描述

5. 对应关系

● filter表,包含三个规则链:INPUT,FORWARD,OUTPUT。
● nat表,包含三个规则链:PREROUTING,POSTROUTING,OUTPUT。
● mangle表,包含五个规则链:PREROUTING,POSTROUTING,INPUT,OUTPUT,FORWARD。
● raw表,包含两条规则链:OUTPUT、PREROUTING。

注:在iptables的四个规则表中,mangle表和raw的表应用相对较少

6. 在处理各种数据包时,5种默认规则链的应用时间点

● INPUT链:当接收到防火墙本机地址的数据包(入站)时,应用此链中的规则。
● OUTPUT链:当防火墙本机向外发送数据包(出战)时,应用次链中的规则。
● FORWARD链:当接收到需要通过防火墙发送给其他地址的数据包(转发)时,应用次链中的规则。
● PREROUTING链:在对数据包作路由选择之前,应用次链中的规则。
● POSTROUTING链:在对数据包作路由选择之后,应用次链中的规则。

注:INPUT、OUTPUT链更多的应用在“主机防火墙”中,即主要针对服务器本机进出数据的安全控制;而FORWARD、PREROUTING、POSTROUTING链更多的应用在“网络防火墙”中,特别是防火墙服务器作为网关使用时的情况。

7. iptables 命令的管理控制选项

8. iptables举例

常用指令:

Iptables [-t table] command [match] [target允许拒绝等]

iptables -t 表名 <-A/I/D/R> 规则链名 [规则号] <-i/o 网卡名> -p 协议名 <-s IP/源子网> --sport 源端口 <-d 目标IP/目标子网> --dport 目标端口 -j 动作

iptables -L -n -t nat

查看表的规则

Iptables -P forward drop

移除

Iptables -A forwad -p tcp –dport 22 -j accept

Forward 添加规则。允许22端口访问

iptables -A OUTPUT -j ACCEPT

#允许所有本机向外的访问

Iptables -R forwad -s 192.168.229.1 -j accept

-s 指定源头 -R修改,将ip更改为接收

Iptables -D forwad 1

-D 删除forwad 第1条策略

增删改查

指令commend

动作

-A #添加策略

-L #查看

-D 删除规则

-I #插入规则

-R #更改规则

-P #更改默认规则

-t 选择表(默认filter)

-n  ##不做解析,显示IP地址

-L ##查看

-I 选择链

-i 选择设备

-s指定源头 表示192.168.132.0/24

-j动作策略,DROP表示丢弃

-p 选择协议(如tcp、udp)

–dport  ##目的地端口

ACCEPT#允许

DROP#丢弃

REJECT#拒绝

SNAT#源地址转换

DNAT#目的地地址转换

Iptables –t filter –I INPUT –i eht0 –s 192.168.132.0/24 –j DROP	源地址是192.168.132.0/24 的禁止连接

8. iptables和firewalld的应用场景及总结

  1. firewalld可以动态修改单条规则,动态管理规则集,允许更新规则而不破坏现有会话和连接。而iptables,在修改了规则后必须得全部刷新才可以生效;
  2. firewalld使用区域和服务而不是链式规则;
  3. firewalld默认是拒绝的,需要设置以后才能放行。而iptables默认是允许的,需要拒绝的才去限制;
  4. firewalld自身并不具备防火墙的功能,而是和iptables一样需要通过内核的netfilter来实现。也就是说,firewalld和iptables一样,它们的作用都用于维护规则,而真正使用规则干活的是内核的netfilter。只不过firewalld和iptables的结果以及使用方法不一样!
  5. firewalld是iptables的一个封装,可以让你更容易地管理iptables规则。它并不是iptables的替代品,虽然iptables命令仍可用于firewalld,但建议firewalld时仅使用firewalld命令。

  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: CentOS 系统防火墙有两种:iptablesfirewalld。 1. iptables:是 Linux 内核的一部分,是一个防火墙管理工具。使用 iptables 命令管理防火墙规则。 2. firewalld:是一个防火墙管理工具,可以动态管理防火墙规则。使用 firewall-cmd 命令管理防火墙规则。 ### 回答2: CentOS 系统有两种防火墙iptablesfirewalld。这两种防火墙都可以用于保护系统免受网络攻击和恶意访问。 iptables 是一种传统的 Linux 防火墙工具,可以通过命令行来配置、管理和监控防火墙规则。以下是一些常用的 iptables 命令: 1. iptables -L:列出当前防火墙规则列表。 2. iptables -F:清空所有防火墙规则。 3. iptables -A INPUT -p tcp --dport 80 -j ACCEPT:允许所有进入端口 80 的 TCP 连接。 4. iptables -A INPUT -p tcp --dport 22 -j DROP:禁止所有进入端口 22 的 TCP 连接。 5. iptables-save > /etc/sysconfig/iptables:保存当前防火墙规则至文件。 firewalld 是 CentOS 7 及更新版本中引入的防火墙管理工具,相比于 iptables,它提供了更加灵活和方便的使用方式。以下是一些常用的 firewalld 命令: 1. systemctl start firewalld:启动 firewalld 服务。 2. firewall-cmd --state:检查 firewalld 是否处于运行状态。 3. firewall-cmd --list-all:显示当前防火墙规则和配置的详细信息。 4. firewall-cmd --zone=public --add-port=80/tcp --permanent:永久性开放 80 端口,使其对外可访问。 5. firewall-cmd --reload:重新加载防火墙规则。 总之,对于 CentOS 系统,在使用防火墙时可以根据具体需求选择合适的工具。如果对于命令行操作更为熟悉或需要更精细的控制,可以使用 iptables;而如果需要更简单的操作和集中管理,可以选择 firewalld

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值