特定のユーザーへのローカルポートアクセスの制限

特定のユーザーへのローカルポートアクセスの制限

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

おすすめ記事