温馨提示×

Debian iptables命令行操作指南

小樊
74
2025-04-13 21:07:53
栏目: 智能运维

在Debian系统上操作iptables命令行,首先需要了解iptables的基本概念、工作流程、表和链的结构,以及如何进行规则的添加、删除和查看。以下是详细的操作指南:

一、iptables简介

  • 功能:iptables是基于包过滤的防火墙工具,用于灵活控制流入和流出服务器的数据包。
  • 特点:功能强大、使用灵活。

二、iptables工作流程

  1. 防火墙按照配置规则的顺序从上到下、从前到后进行过滤。
  2. 如果匹配上相应规则,数据包不再向下匹配新规则。
  3. 如果没有匹配上规则,数据包继续向下匹配,直到匹配默认规则。
  4. 防火墙的默认规则在所有规则执行完成后执行。

三、iptables中的四表五链

  • 四表

    • filter:主要用于过滤,控制数据包是否允许进出及转发。链有INPUT、FORWARD、OUTPUT。
    • nat:主要用于地址转换。链有PREROUTING、INPUT、OUTPUT、POSTROUTING。
    • mangle:主要用于修改数据包中的原数据。链有PREROUTING、INPUT、FORWARD、OUTPUT、POSTROUTING。
    • raw:主要用于控制NAT表中连接追踪机制的启用状况。链有PREROUTING、OUTPUT。
  • 五链

    • PREROUTING:进入路由之前的数据包。
    • INPUT:过滤进来的数据包。
    • FORWARD:转发。
    • OUTPUT:发出去的数据包。
    • POSTROUTING:路由之后修改的数据包。

四、安装iptables

在Debian系统上,iptables通常预装。如果需要安装或确保iptables服务可用,可以使用以下命令:

sudo apt update sudo apt install iptables iptables-persistent 

五、iptables命令参数

  • -n:以数字形式显示地址及端口等相关信息。
  • -L:列出一个链或所有链中的规则相关信息。
  • -v:以更详细的方式显示规则相关信息。
  • -F:清空所有的规则信息。
  • -D:删除链内指定内容的一条规则信息。
  • -P:为指定的链设置默认规则。
  • -t:指定表名,如果不指定-t,默认使用filter表。
  • -I:在链的开头或者指定序号插入一条规则信息。
  • -A:在链的末尾追加一条规则信息。
  • –line-number:用于查看规则时,显示其在链上的相应的编号。
  • -S:用于显示指定链的所有规则信息。
  • -m iprange:用于IP匹配,指定多个连续的源IP地址。
  • -m multiport:用于端口匹配,指定多个源端口或目的端口。

六、配置文件和规则文件

  • 配置文件位置/etc/sysconfig/iptables
  • 记录规则文件位置/etc/sysconfig/iptables-config

注意事项

  • 在Debian系统中,如果同时存在ufw服务,需要先停用ufw服务,以避免规则冲突。
    sudo systemctl stop ufw sudo systemctl disable ufw 

以上就是Debian系统上iptables命令行操作的指南,希望对您有所帮助。

0