- A+
不知不觉,已经总结了13篇IPTABLES文章,这些文章中有一些需要注意的地方。
此处,我们对前文中的一些注意点进行总结,我们可以理解为对"常用套路"的总结。
记住这些套路,能让我们事半功倍。
阅读这篇文章之前,请确定你已经阅读了之前的文章,否则你有可能会不理解为什么要这样做。
1、规则的顺序非常重要。
如果报文已经被前面的规则匹配到,IPTABLES则会对报文执行对应的动作,通常是ACCEPT或者REJECT,报文被放行或拒绝以后,即使后面的规则也能匹配到刚才放行或拒绝的报文,也没有机会再对报文执行相应的动作了(前面规则的动作为LOG时除外),所以,针对相同服务的规则,更严格的规则应该放在前面。
2、当规则中有多个匹配条件时,条件之间默认存在"与"的关系。
如果一条规则中包含了多个匹配条件,那么报文必须同时满足这个规则中的所有匹配条件,报文才能被这条规则匹配到。
3、在不考虑1的情况下,应该将更容易被匹配到的规则放置在前面。
比如,你写了两条规则,一条针对sshd服务,一条针对web服务。
假设,一天之内,有20000个请求访问web服务,有200个请求访问sshd服务,
那么,应该将针对web服务的规则放在前面,针对sshd的规则放在后面,因为访问web服务的请求频率更高。
如果将sshd的规则放在前面,当报文是访问web服务时,sshd的规则也要白白的验证一遍,由于访问web服务的频率更高,白白耗费的资源就更多。
如果web服务的规则放在前面,由于访问web服务的频率更高,所以无用功会比较少。
换句话说就是,在没有顺序要求的情况下,不同类别的规则,被匹配次数多的、匹配频率高的规则应该放在前面。
4、当IPTABLES所在主机作为网络防火 墙时,在配置规则时,应着重考虑方向性,双向都要考虑,从外到内,从内到外。
5、在配置IPTABLES白名单时,往往会将链的默认策略设置为ACCEPT,通过在链的最后设置REJECT规则实现白名单机制,而不是将链的默认策略设置为DROP,如果将链的默认策略设置为DROP,当链中的规则被清空时,管理员的请求也将会被DROP掉。
好了,套路就总结到这里,希望能够对你有所帮助。

2019年11月19日 下午2:50 沙发
之前学习的时候总是被琐事打断,进程较慢;终于抽空连续学完,受益匪浅。感谢博主!
2019年11月11日 下午3:49 板凳
谢谢博主, 一天看完, 收货颇丰,再次感谢!
2019年10月31日 下午3:49 地板
入门
2019年10月23日 下午1:06 4楼
复习+1
2019年10月16日 下午4:22 5楼
三天复习完,很棒,学到很多新的知识
2019年10月7日 下午3:01 6楼
非常棒 节省我好多时间!打赏5元给大佬喝肥仔快乐水喝哈
2019年10月6日 上午12:55 7楼
一口气全看完了,作者写得很好,原来浏览过别的资料,仅对IPTABLES有过皮毛了解,看完作者的,基本上八九不离十了,谢谢作者的辛勤劳作,以后一定经常来
2019年10月1日 下午8:22 8楼
必须赞!
2019年9月19日 下午5:27 9楼
天才少年,给个大大的赞
2019年9月18日 下午2:37 10楼
很棒的文章,接着看nginx
2019年9月7日 下午7:22 11楼
看完了博主的iptables和nginx,正则,awk收获良多。非常感谢~ 希望博主有空继续更新下LVS,或者OSPF等。都是生产环境非常实用的服务架构。
2019年8月7日 上午11:41 12楼
虽说已经接触了一点iptables,但看完双印的iptables介绍,感觉重新学了一遍。十分感谢
2019年7月4日 下午4:07 13楼
谢谢博主,终于把您全部iptables的内容看完了,收获颇丰!非常感谢!!!
2019年7月6日 下午8:42 1层
@ttmy5 嗯嗯,继续加油吧,哈哈哈哈哈~
2019年6月20日 下午1:44 14楼
这是我所见过对iptables讲的最透彻的教程,受教了,非常感谢
2019年6月7日 上午12:39 15楼
今晚花了几个小时从第一篇读到了这一篇,真的是受益匪浅,让我忍不住在评论里表示感谢!您的文章行文流畅,思路清晰,与其他类似文章相比,感觉完全不一样。您的文章很好地帮我重新梳理了一下iptables的知识体系,并让我对iptables有了更加深入的理解,总之,,真的很赞!
2019年6月7日 上午10:00 1层
@Hafrans 能真正的帮助到你也是文章价值的体现,有你们的认可前进的动力会更大的,加油~共勉~
2019年5月25日 下午1:24 16楼
这是最好的iptables教程,没有之一,期待对raw和mangle list的讲解
2019年5月14日 下午2:23 17楼
踩了docker和ufw的安全坑,所以来学习iptables的知识,三天时间断断续续把iptables系列看完了,感觉受益匪浅,应该是全网最好的iptables的教程了。
2019年5月19日 下午10:14 1层
@Hety 瞎说什么大实话~后续还有其他教程~了解一下~
2019年4月30日 上午10:35 18楼
iptables算是入门了
2019年3月13日 下午3:52 19楼
谢谢!
期待更新,比如自定义扩展 :)
2019年3月13日 下午12:26 20楼
收获满满,谢谢博主。请问博主,整个 个人日志 网页是自己开发的么?????有个这样的WEB界面来写一些文章分享很不错。
2019年3月13日 下午9:01 1层
@散人零零一 不是的,wordpress搭建的,兄弟诗不错~
2019年2月26日 下午3:49 21楼
全部看完了,收获颇丰,感谢博主
2019年2月12日 下午4:24 22楼
一篇篇看下来,心情好舒畅,之前困惑的好几个iptables的问题都理解了,真的非常感谢博主的分享!好文章,赞!
2019年1月23日 下午6:25 23楼
可以增加ipset相关的内容,用dnsmasq+ipset+iptables+ss可以做些科学上有意义的事哈。
另外最近一直在看ebpf的东西 国内基本没什么资料,希望大神抽点空分享一下。
2019年1月17日 下午3:29 24楼
老哥 什么时候更新iptables nat系列啊
2018年12月29日 下午7:25 25楼
看了三四天,看完理解一遍,又写了一遍。很全面,受益匪浅
2018年12月21日 下午9:39 26楼
感谢作者, 写的此篇博文. 引导入门iptables的方法.
2018年12月7日 下午3:14 27楼
半个多月时间,拜读完成,受益匪浅! 感谢作者
2018年11月19日 下午10:07 28楼
感谢博主好文。期待更多精彩文章,谢谢!
下面还是错误字。
如果将链的默认策略设置诶DROP
2018年10月15日 下午7:14 29楼
感谢博主,写的非常清晰易懂,不过少了nat的内容,后续还会有nat的内容吗?
2018年10月10日 下午2:45 30楼
感谢博主,作为一个偏前端的人我也能看懂,而且还知道哪些是我目前需要的,感谢
2018年10月6日 下午9:21 31楼
感谢博主带我理解了iptables。博主的其他文章对我也很有帮助。感谢大佬!!!
2018年9月28日 上午8:42 32楼
花了两天时间,看完了朱兄的iptables系列,朱兄讲解的真是层次分明,浅显易懂,非常感谢朱兄
2018年9月4日 上午9:35 33楼
全篇终于看完,前后用了一个月,自己也做了大量测试,真的万分感谢您的BLOG,带我进入iptables大门,谢谢
2018年8月25日 下午4:22 34楼
我一般看过帖子不评论的,但是看了博主的这个帖子,真的写的不错,通俗易懂还很全面。拜读完毕,准备看你其他的内容了,感谢分享!!!
2018年8月21日 下午3:46 35楼
看了一天看完了,感谢博主…
2018年8月16日 下午3:30 36楼
写得太棒了,逻辑清晰!感谢
2018年7月27日 下午6:12 37楼
你好,看完了你的这个系列文章,让我对 iptables 有了更全面和更深刻的认识。感谢。但是看到这里发现博主好像没有提到 iptables 的 snat 和 dnat 这一部分内容。最近在学习 iptables 除了做过滤规则,还有就是想做转发规则。期待博主能继续更新。
2018年7月10日 下午3:59 38楼
看完博主的iptables系列真是受益匪浅,非常细致详细!
2018年6月13日 下午5:02 39楼
也是在研究k8,看到博主这篇,豁然开朗,感谢。
2018年6月10日 下午12:30 40楼
最近在研究kubernetes网络,无意中看到博主的文章,这组博文是入门iptables非常好的材料,实验清晰,讲述名白,用了一个周末拜读完毕。写的很细致,博主应该是个暖男类型
。再次感谢。
2018年6月11日 上午9:03 1层
@宇宙尽头 666,能有所帮助就好,加油哦,共勉~
2018年5月11日 下午12:02 41楼
hello 请问作者了解如何用iptables 做本地主机的应用控制吗?就是在这个机器里只让某些进程访问网络,其他进程不能访问?
2018年4月27日 下午10:06 42楼
文章写得很专业很细致,终于我把防火墙这部分给弄懂了。但是好像缺了NAT部分的一些内容。
2018年4月11日 上午9:45 43楼
感谢,看完了,舒畅!
2018年4月8日 下午9:22 44楼
博主写得很好,长见识了,谢谢!
2018年4月2日 下午4:18 45楼
请问一下大佬,我见过有些地方动作指定为MARK的,好像也不是自定义链,有什么特殊作用吗,像下面的
Chain KUBE-MARK-MASQ (41 references)
target prot opt source destination
MARK all — 0.0.0.0/0 0.0.0.0/0 MARK or 0x4000
2018年6月10日 下午3:47 1层
@思绪飘然 这里的MRAK也是-j的target,nfmark是个32bit,将数据包的nfmark和0x4000做“位或”操作,就是让nfmark最高位置1。这个数据包的nfmark应该会和ip rule中的fwmark做匹配来进行策略路由之类的应用。
2018年3月15日 上午10:27 46楼
看完了,很有启发!
2018年1月13日 下午8:28 47楼
感觉还有好多没有讲。能不能再进一步,讲多点。我目前是用的ros。ros是基于iptables开发的,为了搞清楚防火墙的应用,于是从iptables学起。ros防火墙的选项貌远不止这些,iptables肯定也是有对应的。
2018年1月5日 下午3:03 48楼
朱工,iptables可以记录一个规则上匹配到的数据包和字节个数,这样我们可以实现流量统计。有个问题就是,有没有办法直接限制一个规则最多可以匹配到的字节数,以实现流量限制(这个流量限制不是网速的限制,而是一个总的流量的限制)?非常感谢
2017年12月29日 下午8:22 49楼
centos 7已默认不使用iptables了,希望能写个:firewall-cmd和firewalld的教程!
2017年12月29日 下午8:19 50楼
写得非常好,是我在整个互联网中找到的最好的教程,已全部保存为mhtml文件并准备打印供同事们一起学习!
2017年12月29日 下午8:33 1层
@iptables 希望能推荐同事看在线版本,大家都能保存,但是肯捧场的不多,谢谢肯定,常来
2017年12月11日 上午10:04 51楼
完结打卡😆
2017年11月28日 上午8:57 52楼
ACCEPT icmp — anywhere anywhere icmp echo-reply
ACCEPT icmp — anywhere anywhere icmp echo-request limit: avg 10/sec burst 20
DROP icmp — anywhere anywhere icmp echo-request
比如我有以上规则,其实drop是不会发生的对吧?
2018年1月10日 下午5:19 1层
@我只看看 1对1的测试肯定不丢,因为发包的频率低于生成令牌的速率,如果N个人一起ping,肯定有人丢了
2017年10月25日 下午6:00 53楼
谢博主,很详细。
2017年10月24日 下午4:59 54楼
一口气看完的,感谢,共勉
2017年10月20日 下午4:36 55楼
谢谢指导,看完后对整个iptables基本入门了,十分感激。
2017年10月9日 下午2:23 56楼
看了两遍,基本已经入门,非常感谢你的分享
2017年10月9日 下午2:44 1层
@fantastic_show 能够帮助到你就是好的,加油~~~
2017年10月7日 上午9:05 57楼
总结的确实不错,根据iptables系列下来完全可以入门了
2017年9月24日 下午10:52 58楼
无意发现这篇博客,博主总结的很多东西都非常棒,写的每个知识点都有看了一遍,真心感谢,希望持续更新Linux相关知识
2017年9月25日 上午9:23 1层
@linux菜鸟 谢谢客官捧场,如果想要提高博客质量,总是需要花费更多的时间,不过有你们的肯定与支持,我有空了肯定会继续更新的,一起加油~~
2017年8月18日 上午10:51 59楼
博主iptables系列的文章相当棒啊,一口气读下来感觉神清气爽啊,希望读到更多博主的文章
2017年8月18日 下午4:06 1层
@yuyang 神清气爽,常来捧场,客官评论没毛病~~~~
2017年7月31日 上午10:13 60楼
博主,iptables 的文章很不错。
2017年7月28日 下午2:48 61楼
棒棒哒,话说你是前端出身吗?
2017年7月28日 下午11:50 1层
@请输入您的QQ号 不是的哟~~之前干的都是打杂的活~~
~~~
2017年7月10日 上午6:24 62楼
博主你好,初次接触Linux,第一次看到这么好的文章,一口气读完14章节的IPTABLES,受益匪浅。敬佩之情油然而生。希望能有关于squid的专题,谢谢。
2017年6月27日 上午9:46 63楼
写的灰常好,我现在还有个疑惑,我看iptables扩展匹配还有过滤mac的功能,我以前以为到iptables作用的时候把二层帧首部剥掉了,那mac又是如何过滤的呢?还是我从根本上的认识就错了、、在iptables的时候还包含二层mac首部?
2017年6月27日 上午10:38 1层
@呆呆呆不懂 你的这个疑问似乎从如下帖子中能找打答案
http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=4253339&pid=24596205&page=1
iptables的mac模块我用的很少,mac不能跨路由,iptables与限制主机都在一个网络以内了,一般都能够通过别的方法控制了。
用的不多,仅供参考,常来呦~
2017年6月27日 下午5:55 2层
@朱双印 会场感谢!看了下skb,再看下留言提供的代码,豁然开朗!
2017年6月21日 下午6:06 64楼
支持下,总结的很好,看完后对iptables了解更清晰了,感谢!
2017年6月4日 下午10:29 65楼
写的真棒!看完收获颇丰
2017年5月26日 下午4:52 66楼
消灭零回复
2017年5月26日 下午9:01 1层
@小石头 iptables的总结已经告一段落了,之后会总结其他方面的知识,不过我会坚持更新的,谢谢关注~