浅析Linux防火墙

如下图,linux中的NetFilter框架
浅析Linux防火墙
linux防火墙如何工作的?
当数据在网络接口层传输过来,在到达网络层之前。NetFilter在网络层布置 钩子函数做拦截数据包处理。当一个数据包到达后,通过NetFilter模块,然后检查Filter表,当Filter表允许通过,数据包就可以通过网络层继续到传输层。
数据包从应用层传下来的流程也是如此。会被网络层的 钩子函数拦截处理。判断数据包的走向。

钩子函数:并不改变网络层的代码,只是添加了检测功能。好比是在高速上设拦查酒驾,没酒驾合法的车放通,酒驾的车直接扣留。

介绍NetFilter的三个表
Filter表:主要用于网络安全的,定义哪些数据包可以通过,哪些数据包不可以通过
NAT表:拦截数据包后做地址转换
Mangle表:修改数据包的一些值,如:TTL
这些表都是使用iptables规则创建的,iptables有IP和tables组成的,tables就是以上的表。防火墙工作在网络层。

原文地址:https://blog.****.net/wxywxywxy110/article/details/78621232