iptablesで特定のプログラムをホワイトリストに追加できますか?

iptablesで特定のプログラムをホワイトリストに追加できますか?

特定のプログラムへのすべてのトラフィックを許可できますかiptables?そうしないと、同時使用nmapと厳格な構成は不可能に見えます。iptables

答え1

iptables を使用すると、特定のプログラムからのすべてのトラフィックを許可することを指定することはできませんが、特定のユーザーとして実行されているアプリケーションからのトラフィックを許可することを指定できます。

例えば。

$ iptables -A OUTPUT -p tcp --dport 992 -d localhost -m owner ! --uid-owner root -j REJECT

この規則は、ルートプロセスの1つで送信されない限り、ローカルTCPポート992に送信されたパケットを拒否するようにカーネルに指示します。

答え2

IMHOモジュールの所有者も解決策でなければなりません。ただし、バイナリをSUIDとして実行することは役に立ちません(SUIDルートではなくても)。代わりに、SGIDで実行し、コンテナソリューションよりもはるかに簡単に使用できます--gid-owner--uid-ownerそして、すべてのユーザーの協力なしに望ましい効果を強制できます)。このプログラム専用グループやファイアウォールの妨げにならないすべてのプログラム専用グループを作成できます。

関連情報