如何在iptables中允许某些ips并阻止所有其他连接?
解决方法:
我很久以前写了一个blog post on basic Iptables rules for the desktop user,你可能应该阅读它,以及它在Stateful firewall design上的链接文章.但是内核2.6.39(包括ipset,如果你有超过10个白名单,你可能想用它来将IP列入白名单) (其中10是任意的)).
首先处理我们知道要接受或删除的状态,以及接口.
iptables -P FORWARD DROP # we aren't a router
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -s 192.168.1.1 -j ACCEPT
iptables -P INPUT DROP # Drop everything we don't accept
如果你只想通过IP进行允许,没有状态
iptables -A INPUT -s 192.168.1.1 -j ACCEPT
iptables -A OUTPUT -d 192.168.1.1 -j ACCEPT
iptables -P INPUT DROP
iptables -P OUTPUT DROP
尽管如此,你可能会遇到问题,我建议使用状态让你的生活更轻松.例如,不允许-i lo和-o lo肯定会导致某些应用程序出现问题.
标签:linux,iptables,firewall
来源: https://codeday.me/bug/20190808/1625088.html