我希望 iptables 只过滤一个面向 WAN 的接口 eth0。如何才能做到这一点?我想在 eth0 上保持 ftp 和 ssh 端口打开。
sci*_*rus 31
因此,对于除一个接口之外的所有接口,您都希望接受所有流量,并且在 eth0 上您希望丢弃除 ftp 和 ssh 之外的所有传入流量。
首先,我们可以设置默认接受所有流量的策略。
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
Run Code Online (Sandbox Code Playgroud)
然后,我们可以重置您的防火墙规则。
iptables -F
Run Code Online (Sandbox Code Playgroud)
现在我们可以说我们想要允许 eth0 上的传入流量,这是我们已经允许的连接的一部分。
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
此外,我们希望允许 eth0 上的传入 ssh 连接。
iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
但是应该删除 eth0 上传入的任何其他内容。
iptables -A INPUT -i eth0 -j DROP
Run Code Online (Sandbox Code Playgroud)
如需更深入的信息,请参阅此 CentOS wiki 条目。
FTP 比 ssh 更棘手,因为它可以使用随机端口,因此请参阅上一个问题。
这样的事情应该可以完成这项工作:
iptables -A INPUT -i eth1 -p all -j DROP
iptables -A INPUT -i eth0 -p all -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
110256 次 |
最近记录: |