阻止除少数端口和重定向之外的传入流量

阻止除少数端口和重定向之外的传入流量

我使用的是 Ubuntu 12.04.2 LTS

cat /proc/sys/net/ipv4/ip_forward
0

我使用以下命令重置了 iptables:

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

我想要将发往端口 80 的流量重定向到 1337。以下命令可实现此目的:

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 1337
iptables -t nat -A OUTPUT -o lo -p tcp --dport 80 -j REDIRECT --to-ports 1337

我继续执行以下命令来阻止除 SSH 之外的所有传入流量,并且我希望端口重定向仍然有效:

iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --dport ssh -j ACCEPT
iptables -A INPUT -j DROP

但端口重定向不再起作用。

添加iptables -A INPUT -p tcp --dport 80 -j ACCEPT之前iptables -A input -j DROP也不会使其起作用。

我还需要添加或更改什么?

答案1

为了阻止 1337 上的直接流量,您可以执行以下操作:

iptables -A INPUT -p tcp -s 127.0.0.1/8 --dport 1337 -j ACCEPT因此只接受来自主机本身(即重定向)的流量。

相关内容