我正在build立一个服务器作为tor继电器,没有别的。 我设置iptables只允许在端口9001谈话,它工作正常,但有一个问题,时钟需要适当设置和维护继电器正常工作,所以我需要ntpd设置和运行,但由于某种原因,我无法让iptables工作,因为我想要它。 我试图让它只允许tor和ntpd通过networking进行通信,但是当我设置允许端口123使用udp时,突然忽略了我的-A OUTPUT! -s 127.0.0.1 -j DROP并允许一切通过。 我应该怎么做呢? 请原谅我的无知,我已经全新的iptables。
我经历了一些排列,但现在我的规则是:
-A INPUT -p udp --sport 123 --dport 123 -j ACCEPT -A OUTPUT -p udp --sport 123 --dport 123 -j ACCEPT -A INPUT -p tcp -m tcp --sport 9001 -j ACCEPT -A OUTPUT -p tcp -m tcp --dport 9001 -j ACCEPT -A INPUT ! -s 127.0.0.1 -j DROP -A OUTPUT ! -s 127.0.0.1 -j DROP
两个通用提示。 作为第一条规则总是说:
iptables -P DROP iptables -F # clean things up. i assume you connect locally, otherwise your ssh will stop to work. itables -A INPUT -i lo -j ACCEPT itables -A OUTPUT -o lo -j ACCEPT iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
然后你的常客
iptables -A INPUT -p udp --dport 123 -j ACCEPT # assuming you are ntp server iptables -A OUTPUT -p udp --dport 123 -j ACCEPT # try to narrow it down using -s to couple public ntp servers iptables -A INPUT -m state --state NEW -p tcp --dport 9001 -j ACCEPT # assuming you take incomming tor connections here iptables -A OUTPUT -m state --state NEW -p tcp --dport 9001 -j ACCEPT # assuming you allow outgoing connections to other tor nodes