当前位置:首页 > 技术知识 > 正文内容

探究 CentOS 7 下 iptables 和 firewalld 切换过程中,谁主沉浮

maynowei9个月前 (08-23)技术知识74

背景

最近需要开发一个 iptables 的可视化管理平台,研究了一下 iptables 和 firewalld 这两个防火墙。

CentOS 6 上 iptables 作为默认防火墙,这个比较好控制。对于 CentOS7 中,这两个防火墙之间切换时,到底谁起主要作用呢?又怎么控制规则呢?

本文来探讨这个问题:

  1. firewalld 底层用的是 iptables ,所以能不能统一成 iptables 一种防火墙呢?
  2. firewalld 启动后,iptables 还生效吗?不生效
  3. firewalld 启动后,再关闭,iptables 还有规则吗?没有了
  4. 切换 firewalld 后再切回到 iptables ,怎么使旧规则再生效?切换之前 iptables-save 备份规则,切回 iptables 后再 iptabels-restore 恢复规则。
  5. firewalld 服务未启用,且 iptables 服务也为 inactive ,iptables 规则还生效吗?生效

本文按上述步骤来验证 CentOS 7 下两个防火墙的切换过程。

关闭 firewalld

第一步,执行 systemctl stop firewalld 命令,关闭 firewalld 服务。
第二步,执行 iptables -F ,清空 iptables 规则。
第三步,添加一条阻断规则 iptables -t filter -I INPUT -s '192.168.xx.xx' -j REJECT

第四步,在目标源机器上 ping 当前主机


关闭 firewalld 后,iptables 生效。

启动 firewalld

启动 firewalld 后观察目标机器的 ping 的结果如下:


此时查看 iptables,有一堆 firewalld 赋予的默认的规则 :

再关闭 firewalld

再关闭 firewalld 服务,此时规则失效,目标机器的 ping 能够联通,此时查看 iptables 规则列表,里面是空白的:


由此可见,firewalld 启动后,会以自己的配置添加规则到 iptables 表中,iptables 原有的旧规则会被丢弃。

启示录

第一点,iptables 是 firewalld 背后工具,就算它的状态是未启用的,只要 firewalld 没有启用,iptables 就是默认的守护神,跟它自己的服务状态没有关系。

第二点,切换 firewalld 的过程中,要想保留 iptables 的规则,以便下次启用 iptables 时继续使用,可以先用 iptables-save > xxx 备份,再用 iptables-restore < xxx 还原。

相关文章

btrace 3.0 重磅新增 iOS 支持!免插桩原理大揭秘!

重磅更新btrace 是由字节跳动抖音基础技术团队自主研发的面向移动端的性能数据采集工具,它能够高效的助力移动端应用采集性能 Trace 数据,深入剖析代码的运行状况,进而辅助优化提升移动端应用的性能...

C++11 同步机制:互斥锁和条件变量

前段时间,我研究了 ROS2(Jazzy)机器人开发系统,并将官网中比较重要的教程和概念,按照自己的学习顺序翻译成了中文,进行了整理和记录。到目前为止,已经整理了20多篇文章。如果你想回顾之前的内容,...

6 张图带你彻底搞懂分布式事务 XA 模式

XA 协议是由 X/Open 组织提出的分布式事务处理规范,主要定义了事务管理器 TM 和局部资源管理器 RM 之间的接口。目前主流的数据库,比如 oracle、DB2 都是支持 XA 协议的。mys...

Oracle数据库无法连接问题排查(oracle数据库连接不成功)

数据库告警日志 如下图 。发现 问题时间段,没有 数据库服务故障 报错,但是存在较多 TNS-12535 、 12560 、 12170 、 00505 错误:通过检查问题时间段应用日志, 也记录了...

Oracle 11g安装教程完整版(oracle 11g 安装教程)

由于工作需要,将安装的经验分享给大家。第一步:首先准备安装文件包:Oralce 11.2.0.4 64bit和plsqldev1405x64如图所示:第二步:将2个文件解压到同一个目录,如图所示:第三...

oracle和mysql的优缺点对比(oracle和mysql哪个简单)

oracle的优缺点优点:开放性:oracle 能所有主流平台上运行(包括 windows)完全支持所有工业标准采用完全开放策略使客户选择适合解决方案对开发商全力支持;可伸缩性,并行性:Oracle...