2012-08-01 2 views
14

指定したIPからの接続だけを受け入れるようにPostgreSQLを設定します。他のIPからの要求を受け入れるべきではありません。PostgreSQLがLOCALHOSTまたは指定されたIP +ポートでのみ動作するように設定してください

+0

Pgのバージョン指定されましたか? OS?あなたはローカルホストだけを意味しますか?または、「名前の付いた非ローカルIPアドレスからの接続のみを受け入れる」? –

答えて

13

次pg_hba.confのは、地元のことができますし、Ipが特権ログイン、 を持っていますが、他の人を拒否。

# TYPE DATABASE  USER   ADDRESS     METHOD 
local all    all          trust 
host testdb   testuser  192.168.1.1/32    md5 
host all    all   0.0.0.0/0     reject 
4

PostgreSQLのデータフォルダ内のpg_hba.confファイルを確認してください。これはクライアント認証設定ファイルです。

# TYPE DATABASE  USER   ADDRESS     METHOD 
host testdb   testuser  192.168.1.1    md5 
local testdb   all          md5 

ほとんどの最も簡単な方法は、PostgreSQLは着信接続のためにのみlocalhostでリッスンすることですpg_hba.confファイル

+1

PostgreSQLは、 'postgresql.conf'の' listen_addresses'を介してバインドされているインターフェイスから、そのポートへのTCPソケット接続を受け付けますが、認証することはできません。 TCPハンドシェイクさえ防止したい場合は、 'iptables'を使う必要があります。 –

9

に上記を追加します。関連するパラメータは、postgresql.conflisten_addressesです。ドキュメントはhereです。

関連する問題