iptables已经快跌落神坛了,它还默默无名

105 阅读2分钟

前面文章也有提到过,云计算时代已经到来,运维方式也早已千变万化,许多过去复杂的操作,开始代码化、平台化、智能化了。

这其中,就包括了Linux安全一代名将:iptables。

早些年,不管部署什么服务,初始化脚本里少不了iptables,运维兄弟们无不熟知四表五链、增插删改。甚至遇到代码层搞不定的cc、ddos,还得跑个脚本把异常ip抓出来全给封禁掉。

上云后,入口层往往有界面化的安全组配置,一键配置,动态查看封禁记录。再也不用担心是-I还是-A,规则有没被更优先的规则给绕走了。

入口流量进来后当然还有大量的东西流量,但是内网调用通常不需要太复杂规则,加上容器化封装,iptables确实接触机会越来越少了。

然而世人皆知iptables,可有人认得背后任劳任怨的功臣:netfilter。

二者有什么关系呢?可以理解成,iptables就是netfilter提供出来的openapi。

netfilter运行在Linux内核空间,iptables运行在用户空间。用户通过修改iptables,间接地操作了底层的netfilter。iptables的四表五链规则,其实就是作用在了netfilet模块提供的钩子函数。

额外聊聊,内核空间和用户空间又是什么意思呢?

对系统来说,最重要的莫过于内核。所以内核空间是不能受用户进程干扰的,不管你进程有些什么bug,不能把我的系统给搞崩了。

所以要隔离,把用户的进程隔离在最上层,所有对底层的操作,都只能通过内核。

用户进程所在的空间,也就是用户空间了。