千家信息网

iptables基础知识详解

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,iptables被称为数据包过滤器,只能检查数据链路层,IP层以及传输层的协议iptables有五个内置链:PREROUTING:路由钱(不能做过滤)INPUT:报文转发到本机FORWARD:报文转发
千家信息网最后更新 2026年11月01日iptables基础知识详解

iptables被称为数据包过滤器,只能检查数据链路层,IP层以及传输层的协议

iptables有五个内置链:

PREROUTING:路由钱(不能做过滤)

INPUT:报文转发到本机

FORWARD:报文转发输出到其它机器

OUTPUT:经由本机进程转发

POSTROUTING:路由决策发生以后

iptables的功能:

filter:过滤,防火墙

nat:用于修改源IP或目标IP,也可以修改端口;

mangle:拆解报文,作出修改后,并重新封装起来;

raw:关闭nat表上启用的连接追踪机制

功能<-->链的对应关系:

功能只能应用到那些链上面

raw:PREROUTING,OUTPUT

mangle:PREOUTING,INPUT,FORWARD,OUTPUT,POSTROUTING

nat:PREROUTING,{Centos 7 INPUT}OUTPUT,POSTROUTING

filter:INPUT,FORWARD,OUTPUT

报文流向:

流入本机:PREROUTING-->INPUT

由本机流出:OUTPUT-->POSTROUTING

转发:PREROUTING-->FORWARD-->POSTROUTING


iptables(管理工具,命令行配置)/netfilter(内核模块,具体功能它来实现)

组成部分:根据规则匹配条件来尝试匹配报文,一旦匹配成功,就有规则定义的处理动作做出处理;

匹配条件:

基本匹配条件

扩展匹配条件

处理动作:

基本处理动作

扩展处理动作

自定义处理动作

添加过则的考量点:

(1)要实现那种功能:判断添加到哪个表上;

(2)报文流经的路径:判断添加到哪个链上;

链:链上 的规则次序,即为检查的次序;因此,隐含一定的应用法则;

(1)同类规则(访问同一应用),匹配范围小的放上面;

(2)不同类的规则(访问不同应用),匹配到报文频率较大的放上面;

(3)将那些可由一条规则描述的多个规则合并起来;

(4)设置默认策略;

iptables规则格式:

iptables [-t table] COMMAND chain [-m matchname [per-match-options]] -j targetname[per-target-options]

-t table: 不加-t选项的默认为filter

raw,mangle,nat,filter

COMMAND:

链管理:

-N:new,自定义一条新的规则链;

-X:delete,删除自定义的规则链;

-P:Policy,设置默认策略;对filter表中的链而言,其默认策略有;

ACCEPT:接受

DROP:丢弃

REJECt:拒绝

-E:重命名自定义链;引用计数不为0的自定义链不能够被重命名,也不能被删除;

规则管理:

-A:append,追加;

-I:Insert,插入,要指明位置,省略时表示第一条;

-D:delete,删除;

(1)指明规则序号;

(2)指明规则本身;

-R:replace,替换指定的规则链;

-F:flush,清空指定的规则链;

-Z:zero,置零;

iptables的每条规则都有两个计数器;

(1)匹配到的报文的个数;

(2)匹配到的所有报文的大小之和;

查看:

-L:list,列出指定链上的所有规则;

-n --line-numbers,以数字格式显示地址和端口号;

-v:verbose,详细信息

-x:exactly,显示计数器结果的精确值;

chain:

PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING

匹配条件:

基本匹配条件:无需加载任何模块,由iptables/netfilter自行提供;

[!]-s,--source address[/mask][,...]:检查报文中的源IP地址是否符合此处理的地址或范围

[!]-d,--destination address[/mask][,...]:检查报文中的目标IP地址是否符合此处指定的地址范围;

[!]-p,--protocol protocol

protocol:tcp,udp,icmp

[!]-i,--in-interface name:数据报文流入的接口;只能应用于数据报文流入的缓解,只能应用于PREROUTING,INPUT和FORWARD链;

[!]-o,--out-Interface name:数据报文流出的接口;只能应用于数据报文流出的环节,只能

扩展匹配条件:需要加载扩展模块,方可生效;

隐式扩展:不需要手动加载扩展模块;因为他们是对协议的扩展,所以,但凡使用-p指明了协议,就表示已经指明的要扩展的模块;

tcp:

[!]--source-port,--sport port[:port]:匹配报文的源端口;可以是端口范围;

[!]--destination-port,--dport port[:port]:匹配报文的目标端口;可以是端口范围;

[!]--tcp-flage mask comp

例如:"--tcp-flagsSYN,ACK,FIN,RST SYN"表示,要检查的标志位为SYN,ACK,FIN,RST四个,其中SYN必须为1,余下的必须为0;

[!]--syn:用于第一次握手,相当于"--tcp-flagsSYN,ACK,FIN,RST SYN";

udp:

[!]--source-port,--sport port[:port]:匹配报文的源端口;可以是端口范围;

[!]--destination-port --dport port[:port]:匹配报文的目标端口;可以是端口范围;

icmp:

[!]--icmp-type {type[/code]|typename}

echo-requesr:8 请求

echo-reply:0:响应

显示扩展:必须要手动加载扩展模块,[-m matchname [per-match-options]];

显示扩展将在下一小结用具体示例详解

处理动作:

-j targetname

ACCEPT

DROP

REJECT

防火墙(服务)

Centos 6:

sevice iptables {start|stop|restart|status}

start:读取事先保存的规则,并应用到netfilter上;

stop:清空netfilter上的规则,以及还原默认策略等;

status:显示生效的规则

restart:清空netfilter上的规则,再读取事先保存的规则,并应用到netfilter上;

Centos 7:

systemctl start|stop|restart|status firewalld.service

systemctl disabled firewalld.server

systemctl stop firewalld.service

防火墙基本配置命令:

查看iptables规则链命令

iptables -t filter -L -n --line-numbers -v

清空规则链

iptables -t filter -F

清空自定义规则链

iptables -t filter -X

现在我们设置192.168.32.144(本机)拒绝192.168.32.145主机所有的访问

iptables -t filter -A INPUT -s 192.168.32.145 -d 192.168.32.144 -j DROP

删除这一条规则则

iptables -t filter -D INPUT 1

修改上述规则链只限制192.168.32.145对本机的icmp协议

iptables -t filter -R INPUT 1 -s 192.168.32.145 -d 192.169.32.144 -p icmp -j REJECT

iptables -A INPUT -s 192.168.32.145 -d 192.168.32.144 -p icmp -j REJECT

在本机流入接口做限制192.168.32.145的icmp协议访问

iptables -A INPUT -s 192.168.32.145 -d 192.168.32.144 -p icmp -o eno16777736 -j DROP

限制192.168.32.145主机使用ssh访问192.168.32.144

iptables -t filter -A INPUT -s 192.168.32.145 -d 192.168.32.144 -p tcp --dport 22 -j DROP

限制其它主机ping本主机,但是不限制本主机ping其它主机

iptables -A INPUT -d 192.168.32.144 -p icmp --icmp-type 8 -j DROP





规则 报文 端口 应用 处理 条件 范围 本机 主机 动作 数据 模块 功能 地址 检查 限制 目标 命令 接口 策略 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技活动banner 互联网与科技金融数据 善班互联网科技有限公司 互联网养老 桔豆科技 互联网科技公司做什么 上海电发互联网科技有限公司 互联网和黑科技的看法 移动互联网科技公司 特约风豹互联网科技为什么扣费 群盈汇互联网科技有限公司 工业互联网展湾科技股份有限公司 黑科技 体验场景 互联网大会 山东星卡互联网科技有限公司官网 互联网科技融合创新 东营紫格互联网科技 广州梦谷互联网科技有限公司领导 互联网金融运营模式中的金融科技 北京天晋互联网科技有限公司 数字互联网科技有限公司 科技美学互联网 艺术 互联网科技企业 互联网金融科技委员会 互联网科技大会案例 云创客互联网科技公司 武汉健翔互联网络科技有限公司 996高科技互联网公司 北京市互联网新科技 福仕德教育科技互联网 互联网领先科技成果宣传视频 上海旺乐尼互联网科技有限公司
0