分享交流
合作共赢!

Linux深入学习【四】——iptables

一、简介

讲到iptables,先说下 Firewall,防火墙或包过滤性防火墙,或称为隔离工具,主要分为主机防火墙和网络防火墙。工作于主机或网络的边缘,对于进出本主机或者网络的报文,根据事先定义好的规则做匹配,对于能够匹配到的报文做相应处理的组件(硬件或软件或软硬件组合)。

iptables称为规则(hook function:钩子函数)管理工具,分为四表五链;framework netfilter即网络过滤器框架,起到防火墙的功能。

NOTE: 添加规则时考量点:

  • 要实现哪种功能,判断添加在哪张表上;
  • 报文流经的路径,判断添加在哪个链上;

二、四表五链

1.  四表

iptables功能(每个功能有一张表,4表)及实现位置(查看命令iptables -t 功能名称 -L,如:iptables -t nat -L):

  • filter,过滤,防火墙;实现位置:INPUT, FORWARD,OUTPUT
  • nat:network address translation,网络地址转换;实现位置:PREROUTING(DNAT),INPUT, OUTPUT, POSTROUTING(SNAT)
  • mangle: 拆解报文,做出修改,封装报文;实现位置:PREROUTING,INPUT,FORWARD,OUTPU,POSTROUTING
  • raw: 关闭nat表上启用的连接追踪机制;实现位置:PREROUT, OUTPUT

功能的优先级次序:raw –> mangle –> nat –> filter

2. 五链(内置链):

  • PREROUTING: 路由前
  • INPUT: 输入到用户空间
  • FORWARD: 转发
  • OUTPUT: 本机转发
  • POSTROUTING: 路由后

链上规则的次序,即为检查的次序:因此隐含一定的法则(优化策略如下):

  • 同类规则(控制同一种应用的访问),匹配范围小的放上面
  • 不同类规则(访问不同应用),匹配到报文频率较大的放上面
  • 将可由一条规则表述的多个规则合并为一个
  • 设置默认策略;

规则的组成部分:报文的匹配条件(根据协议报文特征指定分为基本匹配条件和扩展匹配条件);匹配到之后的处理动作(分为内建处理机制和自定义处理机制)

NOTE: 报文不会自动经过自定义链,只能在内置链上通过规则进行引用后生效。

报文途径:

  • 流入:PREROUTING –> INPUT
  • 流出:OUTPUT –> POSTROUTING
  • 转发:PREROUTING –> FORWARD –> POSTROUTING

路由发生的时刻:报文进入本机后,判断目标主机;报文发出之前,判断经由那个接口送往下一跳;

三、iptables的使用

iptables即规则管理工具,可以对规则进行添加、修改、删除、显示等。

规则和链有计数器:

  • pkgs: 由规则或链所匹配到的报文的个数;
  • bytes: 由规则或链匹配到的所有报文的大小之和;

iptables命令:

此内容查看价格0.5立即购买

Linux深入学习之iptables如何开放被动模式下的FTP服务【五】

Linux深入学习之iptables网络防火墙【六】

NOTE:

Centos7 : 引入了新的iptables前端管理服务工具: firewalld

firewalld-cmd

firewalld-config

参考文章:https://www.ibm.com/developerworks/cn/linux/1507_caojh/index.html

https://www.cnblogs.com/wangkangluo1/archive/2012/04/19/2457072.html

赞(2) 打赏
未经允许不得转载:琼杰笔记 » Linux深入学习【四】——iptables

评论 抢沙发

评论前必须登录!

 

分享交流,合作共赢!

联系我们加入QQ群

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

登录

找回密码

注册