如何检查iptables防火墙规则状态?

在Linux系统中,防火墙是保护系统安全的核心组件,不同发行版可能使用不同的防火墙管理工具,因此查看防火墙状态的方法也各有差异,以下将详细介绍主流防火墙工具的查看方法,操作前请确保您拥有管理员权限(使用sudo),并谨慎执行命令以避免误操作。
iptables 是传统的Linux防火墙工具,适用于CentOS 6、Debian 9及更早版本。
查看规则命令:

sudo iptables -L -n -v  # 查看IPv4规则(详细模式)
sudo ip6tables -L -n -v # 查看IPv6规则
  • 关键参数说明:
    -L:列出规则链(如INPUT、FORWARD、OUTPUT)。
    -n:显示IP地址和端口号(不解析域名)。
    -v:显示详细信息(数据包计数、字节数)。
  • 示例输出解读:
    Chain INPUT (policy ACCEPT 100 packets, 15000 bytes)
     pkts bytes target     prot opt in     out     source    destination
        0     0 DROP       tcp  --  *      *       0.0.0.0/0 0.0.0.0/0   tcp dpt:22

    表示INPUT链默认策略为ACCEPT,有一条规则丢弃所有访问22端口(SSH)的TCP请求。


查看 firewalld 防火墙

firewalld 是CentOS 7+/RHEL 8+、Fedora的默认防火墙,支持动态更新。
查看运行状态:

sudo firewall-cmd --state  # 显示"running"或"not running"

查看活动区域和规则:

sudo firewall-cmd --list-all  # 显示默认区域(如public)的详细规则
  • 输出示例:
    public (active)
      target: default
      services: ssh dhcpv6-client http  # 允许的服务
      ports: 80/tcp 443/tcp             # 允许的端口
      forward: no

    查看所有区域配置:

    sudo firewall-cmd --list-all-zones

查看 ufw 防火墙

ufw(Uncomplicated Firewall)是Ubuntu/Debian的简化工具,基于iptables。
检查状态:

sudo ufw status  # 显示"Status: active"表示启用

查看详细规则(含端口和策略):

sudo ufw status verbose  # 显示允许/拒绝的端口及方向
  • 输出示例:
    Status: active
    To                         Action      From
    --                         ------      ----
    22/tcp                     ALLOW       Anywhere
    80/tcp                     DENY        192.168.1.0/24

其他工具查看方法

  1. nftables(iptables的替代品)
    sudo nft list ruleset  # 列出所有规则
  2. 直接查看配置文件
    • iptables规则保存位置:/etc/sysconfig/iptables(CentOS)或/etc/iptables/rules.v4(Debian)。
    • ufw配置文件:/etc/ufw/user.rules

操作注意事项

  1. 备份规则
    修改前务必备份,例如iptables:

    sudo iptables-save > ~/iptables_backup.txt
  2. 避免锁定自己
    远程操作时,确保允许当前SSH端口(如22)的访问。
  3. 验证工具兼容性
    若同时安装多个防火墙(如iptables+firewalld),可能冲突,使用systemctl status firewalldsystemctl status ufw检查服务状态。

  • 初学者推荐:Ubuntu/Debian用ufw status,CentOS/RHEL用firewall-cmd --list-all
  • 高级用户:使用iptables -L -vnft list ruleset查看底层规则。
  • 通用检查:通过sudo netstat -tuln验证端口监听状态,辅助分析防火墙是否生效。

引用说明参考Linux官方文档(iptables、firewalld、ufw)及Red Hat/Ubuntu技术手册,确保方法经过实践验证,操作时请遵循最小权限原则,必要时咨询专业运维人员。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6580.html

(0)
酷番叔酷番叔
上一篇 2025年7月7日 13:41
下一篇 2025年7月7日 13:52

相关推荐

  • Linux内存满了导致不足,如何添加内存解决?

    Linux系统内存不足会导致系统响应缓慢、进程频繁被OOM(Out of Memory)杀手终止,甚至服务崩溃,解决内存不足问题需从“诊断-临时缓解-长期扩容”三步入手,以下是详细操作指南,内存不足的表现与诊断典型表现系统卡顿,命令行响应延迟高,应用打开缓慢;频繁出现“Out of memory: Kill p……

    2025年10月7日
    10000
  • Linux下bin文件如何解压?打开方式有哪些?

    在Linux系统中,处理.bin文件时,首先需要明确.bin文件的类型,因为.bin并非标准的压缩或文件格式扩展名,它可能包含多种内容,如可执行二进制程序、CD/DVD镜像文件、自解压脚本或特定应用程序的数据包等,不同类型的.bin文件需要采用不同的打开或解压方式,本文将详细分类说明处理方法,通过file命令判……

    2025年9月10日
    14300
  • 如何调试Linux动态库?

    在Linux环境下调试动态库是开发过程中常见的任务,尤其当程序因动态库加载失败、符号未解析、内存泄漏或运行时崩溃时,系统化的调试方法能快速定位问题,以下从调试准备、静态分析、动态调试、问题排查等方面详细说明操作步骤和工具使用,调试前准备:确保调试信息完整动态库调试的前提是程序包含调试符号(通常为.debug节……

    2025年9月26日
    14700
  • Linux下如何使用GDB调试程序?

    在Linux系统中,GDB(GNU Debugger)是功能强大的调试工具,主要用于C/C++等程序的调试,支持断点设置、变量查看、内存分析、堆栈跟踪等功能,掌握GDB的使用能显著提升程序问题定位的效率,以下从安装、启动、基本操作到高级功能详细说明其使用方法,安装与启动GDB安装GDB不同Linux发行版的安装……

    2025年9月18日
    16000
  • 网关有什么用?必须设置吗?

    网关是连接不同网络的”出口”,Linux系统通过网关实现与外部网络(如互联网)的通信,正确设置网关对服务器运维、网络调试和日常连接至关重要,以下为详细操作指南,涵盖临时/永久配置及主流发行版差异,前置检查:确认当前网络状态查看现有网关ip route show default # 或使用传统命令:route……

    2025年7月15日
    15300

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信