CentOS:私のポート5432はインターネットからアクセスできませんか?

CentOS:私のポート5432はインターネットからアクセスできませんか?

テストのために、Debianとは少し異なる設定で新しいCentOSサーバーをインストールしました。現時点では、ポート5432が安全かどうかはわかりません。そうでない場合は、postgresqlが実行されているポート5432をインターネットからアクセスできないようにどのように保護できますか?ポート5432のルールを追加した記憶がありますが、Iptablesには表示されません。

これは Debian システムではありません。

iptables-S:

-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited


netstat -tulpn | grep 5432
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      2938/postgres       
tcp6       0      0 ::1:5432                :::*                    LISTEN      2938/postgres  

答え1

netstat -tulpn | awk 'NR==2 || /:5432/'自分の代わりに実行すると、netstat ... grep列ヘッダーも取得できます。

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      2938/postgres
tcp6       0      0 ::1:5432                :::*                    LISTEN      2938/postgres

列を見ると、ループバックアドレス()のみを受信するLocal Addressことがわかります。これに基づいて、他のシステムからの要求を受け入れないので、安心できます。postgres127.0.0.1

このポートをブロックすると述べたファイアウォールルールは、明らかに現在のルールセットには存在しないため、保存していない可能性があります(ルールをiptables最初に保存しない限り、再起動後もルールは保持されません)。 ~によるとCentOS Wikiルールセットを保存する正しい方法はです/sbin/service iptables save

関連情報