参考:https://wooyun.js.org/drops/Iptables%E5%85%A5%E9%97%A8%E6%95%99%E7%A8%8B.html

1. iptables 介绍

linux的包过滤功能,即linux防火墙,它由netfilter 和 iptables 两个组件组成。

netfilter 组件也称为内核空间,是内核的一部分,由一些信息包过滤表组成,这些表包含内核用来控制信息包过滤处理的规则集。

iptables 组件是一种工具,也称为用户空间,它使插入、修改和除去信息包过滤表中的规则变得容易。

2. iptables 的结构

iptables的结构:

iptables -> Tables -> Chains -> Rules

简单地讲,tables由chains组成,而chains又由rules组成。iptables 默认有四个表Filter, NAT, Mangle, Raw,其对于的链如下图。

3. iptables 工作流程

4. filter 表详解

在iptables中,filter表起过滤数据包的功能,它具有以下三种内建链:

  • INPUT链 – 处理来自外部的数据。
  • OUTPUT链 – 处理向外发送的数据。
  • FORWARD链 – 将数据转发到本机的其他网卡设备上。

数据流向场景:

  • 访问本机:在INPUT链上做过滤
  • 本机访问外部:在OUTPUT链上做过滤
  • 通过本机访问其他主机:在FORWARD链上做过滤

Iptables 基本操作(ubuntu 上不需要这些):

  • 启动iptables:service iptables start
  • 关闭iptables:service iptables stop
  • 重启iptables:service iptables restart
  • 查看iptables状态:service iptables status
  • 保存iptables配置:service iptables save
  • Iptables服务配置文件:/etc/sysconfig/iptables-config
  • Iptables规则保存文件:/etc/sysconfig/iptables
  • 打开iptables转发:echo “1”> /proc/sys/net/ipv4/ip_forward
作者:jackzang  创建时间:2024-05-22 14:23
最后编辑:jackzang  更新时间:2024-10-30 16:25