iptables 与 tor 和 ntpd 配合良好

iptables 与 tor 和 ntpd 配合良好

我正在设置一个服务器,用作 tor 中继,不做其他任何事情。我将 iptables 设置为仅允许在端口 9001 上进行通信,并且它运行良好,但有一个问题,需要正确设置和维护时钟才能使中继正常工作,因此我需要设置并运行 ntpd,但出于某种原因,我无法让 iptables 按照我的意愿工作。我试图让它只允许 tor 和 ntpd 通过网络通信,但当我将其设置为允许使用 udp 的端口 123 时,它突然忽略了我的 -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

答案1

两个通用提示。正如第一条规则总是说的那样:

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

相关内容