阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Netfilter/Iptables概述

91次阅读
没有评论

共计 1966 个字符,预计需要花费 5 分钟才能阅读完成。

/ 位于  /sbin/iptables

  四表五链

  四表 filter. nat. mangle. raw

  五链 INPUT. FORWARD. OUTPUT. PREROUTING. POSTROUTING

  表的处理优先级  raw >mangle >nat >filter

 

  filter:执行所有的过滤动作

  nat:(端口映射,地址转换),所有网络地址转换都在 nat 上执行

  mangle:用于数据包的修改

  raw:加快封包穿越防火墙的速度,可提高防火墙性能

 

  五个链的作用

  INPUT: 处理入站数据包,通过路由表后目的地为本机

  OUTPUT:由本级产生,向外转发

  FORWARD:通过路由表后,目的地不为本机

  PREROUTING:数据包进入路由表之前

  POSTROUTING:在进行路由选择前处理数据包,数据包进入路由表之前

 

  规则链之间的匹配顺序

  入站数据:PREROUTING >INPUT

  出站数据:OUTPUT >POSTROUTING

  转发数据:PREROOUTING >FORWARD >POSTROUTING

  1. 当数据包的目标地址是本机时

(1)数据包进入网络接口

(2)进入 NAT 表的 prerouting 链,根据需要做 DNAT

(3)进入 mangle 表的 prerouting 链,在这里根据需要改变数据包头内容(比如 TTL 值)

(4)进入路由判断,(进入本地还是转发)

(5)进入 mangle 表的 INPUT 链,在路由之后到达本地程序之前修改数据包头内容

(6)进入 filter 表的 INPUT 链,所有目标地址是本机的数据包都会经过这里

(7)到达本机应用程序处理

 

  2. 当数据包的源地址是本机时、

(1)本机应用程序产生数据包

(2)路由判断

(3)进入 mangle 表的 OUTPUT 链,在这里可以根据需要改变包头内容

(4)进入 nat 表的 OUTPUT 链,根据需要对防火墙产产生的数据作 DNAT

(5)进入 filter 表的 OUTPUT 链,在这里可以对数据包的过滤条件进行设置

(6)进入 mangle 表的 PREROUTING 链,这里主要做 DNAT 动作

(7)进入 NAT 表的 PREROUTING 链,这里主要做 DNAT 动作

(8)离开本机

 

  3. 经由本机转发的数据包(源、目标地址都不是本机)

(1)数据包进入网络接口

(2)mangle 表的 PREROUTING 链,在这里可以根据需要改变数据包内容(TTL 值)

(3)nat 表中 FORWARD 链,可根据需要对数据包做 DNAT

(4)mangle 表的 FORWARD 链,在这里数据包头内容被修改

(5)filter 表的 FORWARD 链,需要转发的数据包会到这里

(6)mangle 表的 PREROUTING 链

(7)nat 表的 POSTROUTING 链,在这里根据需要对数据包做 SNAT

(8)离开网络接口

 

      Iptables 表和链的动作

  filter 表主要用于过滤数据包,对数据包进行(ACCEPT DROP REJECT LOG RETURN)

  filter 表包含:

  INPUT 链,过滤所有目标地址是本机的数据包

  FORWARD 链,过滤由本机转发的数据包

  OUTPUT 链,过滤有本机产生的数据包

 

  NAT 表主要用于网络地址转换

  (1)DNAT,主要用于改变数据包目的地址,使包能重新路由到某台主机

  (2)SNAT, 改变数据包的源地址,将源地址转换成公网地址

  NAT 表包含三条链

(1)PREROUTING 链,在数据包到达防火墙的时候改变目标地址

(2)OUTPUT 链,可以改变数据包的目的地址

(3)POSTROUTING,在数据包离开防火墙时改变数据包源地址

 

  MANGLE 表

  mangle 表主要用于修改数据包,通过 mangle 表可以改变(TTL)等

  mangle 表主要包含 5 条链

(1)PREROUTING、(2)POSTROUTING、(3)OUTPUT、(4)INPUT、(5)FORWARD、

推荐阅读:

iptables—包过滤(网络层)防火墙 http://www.linuxidc.com/Linux/2013-08/88423.htm

Linux 防火墙 iptables 详细教程 http://www.linuxidc.com/Linux/2013-07/87045.htm

iptables+L7+Squid 实现完善的软件防火墙 http://www.linuxidc.com/Linux/2013-05/84802.htm

iptables 的备份、恢复及防火墙脚本的基本使用 http://www.linuxidc.com/Linux/2013-08/88535.htm

Linux 下防火墙 iptables 用法规则详解 http://www.linuxidc.com/Linux/2012-08/67952.htm

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-20发表,共计1966字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中