我正在研究一些iptables防火墙规则,并且看到了许多例子,这些例子说明阻止来自不可路由的IP地址空间的可能的stream量的重要性。 这将包括来自RFC 1918,RFC 1700,RFC 5735,RFC 3927,RFC 3068,RFC 2544,RFC 5737,RFC 3171和RFC 919的项目。一些示例包括以下内容:
一些例子表明,如果它是stream量的来源,你只需要担心检查这个stream量。 例子:
$IPT -A ANTISPOOF -s 0.0.0.0/8 -m limit --limit 5/min --limit-burst 5 -j LOG --log-prefix "Denied Spoofed Source IP Address: " $IPT -A ANTISPOOF -s 0.0.0.0/8 -j DROP
在其他示例中,在检查input和输出的来源和目的地时采取更激进的立场。 例子包括:
iptables -A INPUT -d 172.0.0.0/8 -j DROP iptables -A INPUT -s 172.0.0.0/8 -j DROP iptables -A OUTPUT -d 172.0.0.0/8 -j DROP iptables -A OUTPUT -s 172.0.0.0/8 -j DROP
我仍然有以下问题:
在此先感谢您的帮助。
上述规则集中的大部分都涉及通常称为“Bogon Filtering”的内容: http : //en.wikipedia.org/wiki/Bogon_filtering – 这些是来自/未分配地址空间区域的数据包。
然而,这些范围中的3个是RFC1918专用networking: http : //en.wikipedia.org/wiki/Private_networks – 来自这些networking的数据包仍然可以按照Bogons的类别进行分类,但前提是它们不合法。 (即使玫瑰是一种杂草,如果它正在一个停车场的中间…)
如果这是您正在使用的路由器,请考虑以下事项:
-i
标志,它可以让你限制匹配给一个给定的networking适配器。
* Do I need to check for the source address of the IP ranges listed above in the bulleted list?
是的,即使你的isp / nsp丢弃它们,你也不希望你的服务器试图回答/发送数据包到列出的地址。
* Do I need to check for the destination address of the IP ranges listed above in the bulleted list?
是的,传入的数据包不会被传递到操作系统,但是您想阻止尝试靠近系统/networking的边缘。
* Is is important to create rules for the IP ranges listed above that would include both the INPUT and OUTPUT chains?
是的,你不希望发送数据包到列出的地址。
* Are there any IP ranges that I have forgotten to check from that are missing from the bulleted list above?
是的,您的IP地址应拒绝传入给您。 您可以通过使用( http://www.team-cymru.org/Services/Bogons/ )获得更积极的态度,但是当剩余的ipv4地址被分配时,您可能会阻止合法的源。
iptables命中计数将帮助您确定哪些规则正在工作,并且logging将有助于识别连接是否被拒绝或被接受。