千家信息网

iptables与netfilter基础与示例

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,该怎么描述防火墙的实现呢?既然说不明白那就不说了,自己领悟吧!一、防火墙是什么?通过一些规则在网络数据报文必经的几个钩子上做端口的限制,实现数据过滤的功能。二、数据报文传输的路径是怎样的?1、 客户端
千家信息网最后更新 2026年11月01日iptables与netfilter基础与示例

该怎么描述防火墙的实现呢?既然说不明白那就不说了,自己领悟吧!

一、防火墙是什么?

通过一些规则在网络数据报文必经的几个钩子上做端口的限制,实现数据过滤的功能。


二、数据报文传输的路径是怎样的?

1、 客户端发出数据报文---->到达服务器的网络接口-----(判断目标是服务器自己)将报文送入内核处理---->将处理好的数据报文转发出去---->通过网络接口发还给客户端

2、客户端发出数据报文---->到达服务器的网络接口-----(判断目标不是服务器)将数据转发出去---->通过网络接口送去目标地址

三、哪些地方是数据流必经的点?

1.报文进入网卡,但是还没有经过路由,这个点叫做prerouting

2.报文经过路由后送入内核之前,这个点叫做input

3.路由功能节点,这个点叫forward

4.报文由内核处理完毕,发送给路由之前,这个点叫output

5.报文经过路由后,就要经过网卡发送出去,这个点叫postrouting

这些点在专业术语中称为hooks funcation即钩子函数,因为所有的数据流必经这五个点,所以我们的防火墙规则写在这5个点上就可以了。


四、有哪些规则可以防火?

这就要谈一下防火墙的历史了,最开始linux是没有防火墙设计的,基于安全的考虑OpenBSD最先将防火墙的概念在其unix内核中实现。后来linux的维护者看到有这么好的东西,就把它移植到linux的内核中去了,最开始这个规则叫做firewall,但是其太简陋了,只能起到数据报文过滤filter的功能。随着时间的发展其功能得到了非常多的扩展,比如实现了nat、mangle、raw等功能,所以后来给这些功能统一一起来起了个好听的名字--netfilter,怎么样?好听吧......

netfilter叫做规则,它有四种功能:

1.filter 过滤

2.nat 网络地址转换

3.mangle 修改数据报文首部的可修改信息

4.raw 关闭net表上启动的连接追踪功能


五、什么是链?chain?

在一个钩子上添加了很多规则功能,这些规则功能连起来就叫chain。但是有些功能只有在特定的钩子上才起作用,下面是五个链的对应表:

preroutingrawmanglenat
inputmanglefilter

outputrawmanglenatfilter
forwardmanglefilter

postroutingmanglenat

链上面的规则检查是要按顺序检查的:

1.同类规则匹配范围小的方上面

2.不同类规则,匹配次数频繁的方上面

3.应该设定默认的规则

六、什么是表?table

每个功能都对应几个链,把这些链排起来就是表,下面是四个功能表:

filterinputforwardoutput

natpreroutingoutput
postrouting

mangle

preroutinginputoutputforwardpostrouting
rawpreroutingoutput


七、上面所说的规则功能怎么添加到linux中?

iptables是一个接口,也是一个工具,可以让程序员使用命令行模式输入设定的规则到指定的hooks funcation上,实现防火墙的功能。

格式:

# iptables [-t TABLE] SUBCOMMAND CHAIN CRETERIA -j TARGET

TABLE: filter, nat, mangle, raw

SUBCOMMAND:

-P 设置链的默认处理 #iptables -P INPUT DROP

-F 清空指定链上的所有规则 #iptables -F INPUT

-Z 将链上的流经的数据报文数据清零

-N 新建一个链,自定义的链
-X 删除用户自定义的空链

-E 重命名自定义链

-A 在指定链的最后添加一条规则
-I 插入一条规则,默认插入为第一条

-D 删除指定的规则

-R 替换指定的规则

-L 列出指定链上的所有规则

-L -n 以数字方式列出

-L -n -v 更相信的信息

-L -n --line-numbers 显示规则编号

-L -n -v -x 显示计数器的精确值

CHAIN: PREROUTING INPUT FORWARD OUTPUT POSTROUTING

CRETERIA:

通用:-p 检查协议tcp,udp,icmp

-s 源IP

-d 目标IP

-i 进入网卡接口

-o 出去网卡接口

隐式:(如果-p指明了协议-m 和协议可以省略)

-m tcp --dport|sport|syn|tcp-flags LIST1 LIST2

-m udp --dport|sport

-m icmp --icmp-type 8|0(8为ping请求,0为ping响应)


显示:

-m multiport 指定多个端口

--sports

--dports

-m iprange 指定IP范围

--src-range 源 (注意:前面可使用 ! 表示否定含义)

--dst-range 目标

-m string 指定过滤的字符串

--algo {kmp|bm} 指定解析算法

--string 字符串

--hex-string 十六进制编码后的字符串

-m time 基于时间做限制

--datestart

--datestop

--timestart

--timestop

--weekdays

-m connlimit 基于并发连接数做限制

--connlimit-above

-m limit 基于链接速率做限制

--limit n[/second|/minit|/hour|/day] 限制链接速度多久一次

--limit-burst n 突发链接速率最快每秒n个

TARGET:

内置目标:ACCEPT(接受),DROP(不响应),REJECT(拒绝)

自定义的链chain

八、未完待续




规则 功能 报文 数据 防火 接口 防火墙 目标 网络 内核 路由 限制 服务器 网卡 钩子 处理 服务 字符 字符串 客户 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网高科技 北京路客互联网科技有限公司 今日互联网科技 朗新科技与工业互联网 互联网科技缩写 四个字互联网科技公司取名 无锡溥仪互联网科技有限公司 现代科技和互联网有关系吗 深圳前海聚择互联网科技有限公司 中国的互联网科技企业的崛起 现代互联网科技股 全球顶尖互联网科技公司 阿大互联网科技有限公司 高科技互联网发展前景如何 广州千川互联网科技有限公司 启辰互联网科技 普陀区互联网教育科技管理办法 马化腾互联网科技教学 安徽零酒互联网科技有限公司 承德科技产业互联网平台 哈尔滨大商圈互联网科技有限公司 互联网 卓越科技 互联网科技的英文 互联网科技论文 互联网科技公司名称 重庆科技学院互联网 互联网时代科技改变生活 互联网科技新闻 艺电能源互联网科技有限公司招聘 小牛互联网科技有限公司地址
0