Linux之防火墙简单总结
防火墙是外网和内网之间的保护屏障,在保护数据的安全性方面起着至关重要的作用,
主要功能是根据策略规则对穿越防火墙自身的流量进行过滤;
iptables和firewalld只是用来定义防火墙策略的管理工具,
其服务会把配置好的防火墙策略交由内核层面的过滤器来处理,
只需要学习并熟练掌握其中一种就可以;
防火墙会按照从上至下的顺序来读取配置的策略规则,
找到匹配项后就去执行定义的行为(即放行或阻止),若没有匹配项则执行默认策略;
1.iptables
iptables服务把策略条目称之为规则,多条规则可以组成一个规则链,
根据数据包处理位置不同可以分为以下五种,
PREROUTING-INPUT-OUTPUT-FORWARD-POSTROUTING,
使用最多的就是INPUT即流入规则链;
执行动作包括ACCEPT-REJECT-LOG-DROP等,
使用iptables配置的防火墙规则会在下一次重启时失效,
永久生效需执行保存命令 service iptables save;
2.firewalld
firewalld是RHEL7/CentOS7中默认的防火墙配置工具,拥有CLI和GUI两种管理方式,
其支持动态更新并加入了区域(zone)的概念,即预先准备的策略集合,可快速切换;
永久生效用--permanent参数,立即生效用--reload参数;
注意:默认区域和当前使用区域的不同,
可将网卡与某个区域关联来激活该区域,一个网卡只能关联一个区域,
启用应急状况模式及阻断一切网络连接,
富规则更细致更详细,优先级最高;
3.服务的访问控制列表
Linux系统有两个层面的防火墙,
第一种即是基于TCP/IP协议的流量过滤工具,
第二种是TCP Wrappers服务,即能允许或禁止Linux系统提供服务;
TCP Wrappers服务由两个控制列表文件控制,即允许控制列表(/etc/hosts.allow)和拒绝控制列表(/etc/hosts.deny),
用户可以通过编辑这两个控制列表文件来放行或阻止对服务的请求流量,
系统会先检查允许文件,匹配到则放行,否则再去检查拒绝文件,匹配到则阻止,
都没匹配到,默认放行;