博客
关于我
IPTABLE 规则详解
阅读量:641 次
发布时间:2019-03-14

本文共 1397 字,大约阅读时间需要 4 分钟。

iptables 常用命令与规则操作指南

1. 规则表概述

iptables 是 Linux 防火墙工具,主要用于管理网络流量规则。其核心功能包括过滤、重定向、伪装、日志记录等。iptables 有三个内建规则表:natmanglefilter。默认规则表为 filter,其他规则表在特定场景下使用。

nat 规则表

  • 功能:主要用于 SNAT(源网络地址转换)和 DNAT(目的网络地址转换)。
  • 特点
    • SNAT:改写封包来源 IP,适用于静态 IP 转换。
    • DNAT:改写封包目的 IP,适用于动态 IP 转换。
    • 优点:每个封包只经过一次规则表处理,提升处理效率。

mangle 规则表

  • 功能:支持 Prerouting、FORWARD 和 Postrouting 三个规则链。
  • 用途
    • 修改封包属性(如 TTL、TOS、MARK)。
    • 适用于特殊应用场景(如流量统计、防洪水攻击)。

filter 规则表

  • 功能:用于基本的封包过滤操作。
  • 规则链:包括 INPUT、FORWARD 和 OUTPUT。
  • 用途:定义封包处理动作(如 ACCEPT、DROP、REJECT 等)。

2. 常用 iptables 命令

1. 规则添加与删除

  • -A, --append:新增规则到指定规则链,规则按顺序执行。
  • -D, --delete:删除指定规则或规则链中的所有规则。
  • -R, --replace:替换规则,原有规则被新规则完全取代。
  • -I, --insert:插入规则,原有规则向后移动。

2. 规则列表

  • -L, --list:列出指定规则链中的所有规则。
  • -F, --flush:清除指定规则链中的所有规则。
  • -Z, --zero:重置规则链中的封包计数器。

3. 新规则链定义

  • -N, --new-chain:定义新规则链。
  • -X, --delete-chain:删除指定规则链。

4. 处理策略定义

  • -P, --policy:定义规则链的处理策略(默认策略)。
  • -E, --rename-chain:重命名规则链。

3. 封包比对参数

1. 通讯协议类型

  • -p, --protocol:指定比对的通讯协议。
    • 示例:iptables -A INPUT -p tcp
    • 特殊用语:
      • ! tcp:除 tcp 外的所有协议。
      • all:所有协议。

2. IP 地址比对

  • -s, --src, --source:指定来源 IP 或 IP 范围。
    • 示例:iptables -A INPUT -s 192.168.1.1
    • 特殊用语:
      • ! 192.168.0.0/24:除指定网络的 IP。
  • -d, --dst, --destination:指定目的地 IP 或 IP 范围。

3. 网络接口比对

  • -i, --in-interface:指定进入规则链的网络接口。
    • 示例:iptables -A INPUT -i eth0
    • 特殊用语:
      • ! eth0:除指定接口的所有接口。

4. 埠号比对

  • -sport, --source-port:指定来源埠号或范围。
  • -dport, --destination-port:指定目的地埠号或范围。

5. TCP 状态比对

  • --tcp-flags:比对 TCP 状态旗号。
    • 示例:iptables -p tcp --tcp-flags SYN,FIN,ACK SYN
    • 可选

转载地址:http://zublz.baihongyu.com/

你可能感兴趣的文章
Python听写汇总结果
查看>>
python吊打Excel?屁!那是你不会用!
查看>>
Python合并两张图片 | 先叠透明度再合并 (附Demo)
查看>>
python各进制的表述与转换
查看>>
python各种库安装
查看>>
python可视化matplotlib_如何使用Python中最强大的可视化工具Matplotlib?
查看>>
python可维护性_使用这7大神器,让你的Python 代码更容易于维护
查看>>
Python只运行一次while循环
查看>>
python变量的详细教程_Python零基础入门教程之语法入门[变量](第二期)
查看>>
Python变量命名方法-ChatGPT4o作答
查看>>
Python变量与运算符
查看>>
Python变量/运算符/函数/模块/string
查看>>
python发送邮件的时候出现 error (535, b‘5.7.3 Authentication unsuccessful‘) 解决方法
查看>>
python系列【仅供参考】:python flask框架 debug功能
查看>>
python发送notes邮件_使用python在Lotus Notes中发送邮件
查看>>
Python双版本下创建一个Scrapy(西瓜皮)项目
查看>>
Python双版本下No module named 'requests'
查看>>
python及pycharm2018软件安装教程
查看>>
python去重txt文本_Python实现的txt文件去重功能示例
查看>>
python去掉列表的逗号,从Python列表项中删除标点符号
查看>>