防火墙的白名单和黑名单
前言:
- 在防火墙中,配置黑名单和白名单是管控网络访问权限的核心方法。黑名单用于阻断特定来源的访问,而白名单则只允许受信任的来源访问,直接放行且不经过其他安全策略检查
- 该章节为防火墙系列的第三章,主要来介绍防火墙的黑名单和白名单的区别,实现对防火墙黑名单和白名单的命令和Web端配置,继续加深对防火墙的学习
在实验中理解黑白名单
实验配置
实验所需步骤:
- 搭建如上的拓扑图
- 开始配置防火墙的接口、划分区域并配置安全策略
路由器 [R1] int g0/0/0 [R1-GigabitEthernet0/0/0]ip add 172.16.1.1 24 [R1]ip route-static 192.168.1.0 255.255.255.0 172.16.1.2 防火墙 接口配置 [FW1]int g1/0/0 [FW1-GigabitEthernet1/0/0]ip add 172.16.1.2 24 [FW1-GigabitEthernet1/0/0]service-manage ping permit [FW1-GigabitEthernet1/0/0]q [FW1]int g1/0/1 [FW1-GigabitEthernet1/0/1]ip add 192.168.1.1 24 [FW1-GigabitEthernet1/0/1]service-manage ping permit 划分区域 [FW1]firewall zone trust [FW1-zone-trust]add interface GigabitEthernet 1/0/1[FW1]firewall zone dmz [FW1-zone-dmz]add interface GigabitEthernet 1/0/0 配置安全策略 [FW1]security-policy [FW1-policy-security]rule name t-to-dmz [FW1-policy-security-rule-t-to-dmz]source-zone trust [FW1-policy-security-rule-t-to-dmz]destination-zone dmz [FW1-policy-security-rule-t-to-dmz]action permit
此时两台PC都可以 Ping通路由器
此时开始配置黑名单,要求:阻止PC1(192.168.1.254)访问路由器,而PC2还可以继续访问
[FW1]firewall blacklist enable 开启黑名单 [FW1]firewall blacklist item source-ip 192.168.1.254 将源IP为192.168.1.254的IP地址加入到黑名单中
此时,就完成了PC1无法 Ping 通路由器,而PC2 不受任何影响
白名单配置实验(通常使用安全策略来实现)下述命令只是举个例子。要求:将PC2加入到白名单里,白名单就是代表明确放行
[FW1]firewall whitelist enable 开启白名单 [FW1]firewall whitelist item source-ip 192.168.1.252 将源地址为192.168.1.252的IP地址加入到白名单中
黑名单
黑名单,是指根据报文的源VPN和源IP地址进行过滤的一种方式。和ACL相比,由于进行匹配的域非常简单,可以以很高的速度实现报文的过滤,从而有效地将特定IP地址发送来的报文屏蔽,同时支持用户静态配置黑名单和防火墙动态生成黑名单。
黑名单是一种基于报文的源VPN和源IP地址进行过滤的机制。与ACL(访问控制列表)相比,黑名单的匹配域更为简单,能以更快的速度来实现报文过滤,有效屏蔽特定IP地址发送的报文。它支持用户静态配置,也可由防火墙动态生成
除了用户可以静态配置黑名单外,设备在检测到特定IP地址发起IP扫描攻击或端口扫描攻击时,会自动将该IP地址(发动攻击的)加入黑名单,如果黑名单处于开启状态话,会在一定时间内过滤来自该IP地址的所有报文
自动加入黑名单的条件
- IP扫描攻击:设备检测到某个源IP地址每秒发往不同目的IP地址的报文数超过设定的阈值
- 端口扫描攻击:设备检测到某个源IP地址每秒发出的报文中目的端口不同的报文数超过设定的阈值
黑名单的作用
- 在黑名单有效期内,设备会过滤掉来自该IP地址的所有报文,阻止其进一步访问网络资源
除此之外,设备的黑名单还可以通过以下方式来增强网络安全防护能力。具体来说:
- 自动识别并阻断扫描攻击:通过识别扫描行为和扫描器特征,阻止攻击者或扫描器对网站的大规模扫描行为,自动阻断高频Web攻击、高频目录遍历攻击,并封禁攻击源IP一段时间,帮助Web业务降低被入侵的风险并减少扫描带来的垃圾流量
- 配置黑名单老化时间:用户可以配置静态和动态黑名单的老化时间,以便在一定时间后自动解除对某些IP地址的封锁,如果不配置老化时间,就是默认允许这个黑名单一直生效
- 防火墙丢弃命中黑名单的数据包:无论命中了黑名单的数据包是否为ACL规则允许的访问,防火墙都会对此类数据包予以丢弃
- 导出和导入黑名单配置信息:用户可以将黑名单配置信息导出到文件中,也可以通过文件导入黑名单配置,方便管理和备份
白名单
在防火墙上配置白名单后,该设备不会再被加入动态和静态黑名单,白名单通过源VPN和IP地址来标识一个白名单设备
白名单主要应用于网络上特定设备发出的合法业务报文,这些报文可能具有IP扫描攻击或端口扫描攻击的特性,通过白名单机制,可以防止这些特定设备被防火墙误判并加入黑名单
和黑名单不一样的是,白名单只有是静态配置的,只能用户自己手动增加
白名单的作用:
- 在白名单有效期内,只允许已知的受信任IP地址(加入白名单)的访问,阻止其他所有流量。但这些被白名单拒绝的流量,仍可进入防火墙的后续策略检查流程。最终能否通过,取决于防火墙的整体安全策略配置
白名单的主要特点包括其对特定IP地址的保护机制,以及与其他安全过滤功能的协同工作。具体如下:
保护机制
- 防止误判:如果用户将某个主机的VPN和IP地址加入防火墙白名单,防火墙就不会对该主机发出的报文进行IP扫描攻击和端口扫描攻击检查,也不会将其IP地址生成动态黑名单
- 限制添加:白名单中的主机也不会被允许添加到静态黑名单中,确保这些主机的通信始终不受防火墙的阻断
协同工作
虽然白名单提供了对特定IP地址的保护,但防火墙的其他安全过滤功能,如ACL包过滤、ASPF、流量统计和监控等,仍然会对这些特定IP地址的报文进行检查,以达到最大安全过滤效果
老化时间
可以自主配置白名单的老化时间,就是IP地址在白名单中生效的时间。超过老化时间后,IP地址将自动从白名单中释放,如果不配置老化时间,就是默认允许这个白名单一直生效
配置管理
和黑名单一样,用户可以将白名单配置信息导出到文件中,也可以通过文件导入白名单配置
匹配顺序
防火墙是一个多层级、按顺序进行策略检查的系统
优先级:黑白名单的匹配优先级通常高于普通的防护规则,命中后直接执行动作,不再进行后续策略检查
假设有一个外部IP:203.0.113.100。
现在,它尝试访问一台内部受白名单保护的服务器
它没有加入黑名单:这仅仅意味着它不会被“黑名单”这个功能直接阻断
它也没有加入白名单:这意味着它无法享受白名单的“免检通行”特权
常规安全策略:只有一条,就是允许任何IP服务访问服务器的Web端口(80)
正确的匹配顺序:
防火墙检查白名单,未命中
防火墙检查黑名单,未命中
然后它进入常规安全策略检查。安全策略规则里有一条是“允许任何IP访问服务器的Web端口(80)”。那么,这个IP访问80端口的请求会被允许。但如果它尝试访问SSH端口(22),而安全策略里没有允许它的规则,那么请求就会被拒绝
总结:
黑名单的作用是 “御敌于门外” ,用于快速、精准地阻断已识别的威胁源,是一种灵活但防御深度不足的工具
白名单的作用是 “画地为牢” ,用于为最关键资源构建一个极度严格的信任边界,是一种安全性极高但管理复杂的模型