Iptables を使用して fastcgi のポートを開く正しい方法

Iptables を使用して fastcgi のポートを開く正しい方法

私は nginx と fastcgi を使ってサーバーを稼動しています。Fastcgi には Unix ソケットではなく TCP ソケットを使用しています。これは、こちらの方がスケーラビリティが高いと読んだからです。Fastcgi サーバーは fastcgi://127.0.0.1:9000 で稼動しています。トラフィックを通過させるには、iptables にどのようなルールを追加すればよいか考えています。わかっていることはこれだけです。

-A INPUT -p tcp -m tcp -d 127.0.0.1 --dport 8999 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -m tcp -s 127.0.0.1 --sport 8999 -m state --state NEW,ESTABLISHED -j ACCEPT

しかし、INPUT ルールの送信元ポートと送信元 IP、OUTPUT ルールの宛先ポートと宛先 IP (セキュリティ上の理由) も指定する必要があると思います。正しい値は何でしょうか?

私の質問が意味を成すことを願っています。

答え1

これらは、以下に示すように、ループバック iptable ルールと呼ばれるものです。

iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT 

fast_cgi ポートは、php-fpm と Web サーバー間の内部ポートです。これがサーバーの一部であるかどうかを確認するには、すべての IP トラフィックをブロックし、任意の php ファイル テストを実行してサーバーへの fast_cgi 接続をテストします。

次の方法でトラフィックをブロックできます:

iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

関連情報