测试防火墙规则 (Linux)

信息安全 linux iptables
2021-08-11 18:34:29

我有一个关于如何测试防火墙规则的问题。更具体地说,出于学术目的,我必须设置一台机器来接受所有类型的数据包和特定接口。

我添加了一个 IP 表规则:

sudo iptables –A INPUT –i eth0 –j ACCEPT

我需要一个实际证明这个接口接受所有类型的数据包。有谁知道可以帮助我的特定方法或工具。我找不到比

nmap -p 80 <ipAddress>

或者

nmap - sU <ipAddress>

或者也许有人可以提出一个更好的解决方案来证明接口接受所有类型的数据包。

2个回答

在大多数情况下nmap -p 0-65535 -PN <ip>,测试远程防火墙的 TCP 规则集效果很好。如果你想要更高级的东西,你可以使用hping这样的数据包制作工具,它旨在测试防火墙规则集。 以下是有关使用 hping 构建数据包的一些信息。

您还可以使用 -j LOG 选项在您的 iptables 中实现日志记录功能并修改您的操作系统以生成日志文件,我这样做是为了新安装 PBX。

iptables -N SIP-Firewall
iptables -A SIP-Firewall -s 110.10.0.0/255.255.255.0 -j ACCEPT
iptables -A SIP-Firewall -s 204.9.161.164 -j ACCEPT
iptables -A SIP-Firewall -s 63.209.144.201 -j ACCEPT
iptables -A SIP-Firewall -s 66.54.140.46 -j ACCEPT
iptables -A SIP-Firewall -m string --string "tel:" --algo bm --to 65 -j DROP
iptables -A SIP-Firewall -m string --string "OPTIONS sip:" --algo bm --to 65 -j ACCEPT
iptables -A SIP-Firewall -m string --string "INVITE sip:" --algo bm --to 65 -m hashlimit --hashlimit 4/min --hashlimit-burst 1 --hashlimit-mode srcip,dstport --hashlimit-name sip_i_limit -j ACCEPT
iptables -A SIP-Firewall -m string --string "REGISTER sip:" --algo bm --to 65 -m hashlimit --hashlimit 2/min --hashlimit-burst 1 --hashlimit-mode srcip,dstport --hashlimit-name sip_r_limit -j ACCEPT
iptables -A SIP-Firewall -m hashlimit --hashlimit 10/min --hashlimit-burst 1 --hashlimit-mode srcip,dstport --hashlimit-name sip_o_limit -j ACCEPT
iptables -A SIP-Firewall -j LOG
iptables -A SIP-Firewall -j DROP



vi /etc/syslog.conf
kern.warning /var/log/iptables.log
service syslog restart

这里的一些信息:

http://openvz.org/Traffic_accounting_with_iptables