限制特定用户的本地端口访问

限制特定用户的本地端口访问

我试图限制 Debian 上特定用户对特定端口的访问。

假设用户的 ID 是 1000,我想要阻止的端口是 5000。

我尝试通过以下命令使用 iptables:

iptables -I OUTPUT -o lo -p tcp --dport 5000 --match owner --uid-owner 1000 -j DROP

如果用户执行curl 127.0.0.1:5000或执行,则它有效,curl <machine_ip>:5000但如果用户执行,则无效curl localhost:5000

我不明白为什么它不起作用。我虽然localhost被转换为127.0.0.1.有什么不同 ?

在我的 /etc/hosts 文件中,我有

127.0.0.1   localhost

# The following lines are desirable for IPv6 capable hosts
::1 localhost   ip6-localhost ip6-loopback

答案1

对 IPv6 执行相同操作... localhost 解析为 IPv4 和 IPv6 地址,并且首选 v6。

编辑1:

ip6tables -I OUTPUT -o lo -p tcp --dport 5000 --match owner --uid-owner 1000 -j DROP

相关内容