我正在尝试使用积极的防火墙,并使用 iptables 阻止世界其他地方。因此,我将 INPUT 链默认设置为 DROP,允许应有访问权限的特定 IP。
基本上,
iptables -P 输入删除 iptables -I 输入 -s XXX.XXX.XXX.XXX -j 接受
但是,我必须启用下载、更新等连接。据我所知,这可以通过接受 ESTABLISHED、RELATED 连接(通过状态或 conntrack 模块)来实现。比如说,
iptables -A INPUT -m 状态 --状态 ESTABLISHED,RELATED -j ACCEPT # - -或者 - - iptables -A 输入 -m conntrack --ctstate 已建立,相关 -j 接受
此时,我想知道是否有其他方法可以让连接(如下载)正常工作,而无需使用 state 或 conntrack 等复杂模块。如果可能的话,我喜欢坚持使用基本的 iptables 内容,以避免在可能的攻击期间变得混乱。
感谢您的想法/意见。谢谢!
答案1
将链 INPUT 设置为 DROP才不是破坏任何东西,您仍然可以更新您的系统(这是一个OUTPUT连接)并允许文件下载(只需打开与提供该文件的服务相关的端口)。
DROP 表示流量将被丢弃除非还有一条规则说明了其他内容。此外,使用 conntrack 模块是管理iptables
规则的一种非常标准的方式。
如果您的防火墙的目的是仅接受来自已知 IP/范围组的流量,并且您想避免在每次组更改时编辑规则,则可以使用ipset
。