シナリオ:PostgreSQL サーバーの認証
すべて表示 | すべて非表示
PostgreSQL サーバーの認証には TLS 証明書を使用することを推奨します。信頼できる証明機関(CA)の証明書または自己署名証明書を使用できます。自己署名証明書による保護は限られているため、信頼できる CA の証明書を使用します。
管理サーバーは、PostgreSQL に対して一方向および双方向の SSL 認証の両方をサポートします。
PostgreSQL の SSL 認証を設定するには、次の手順に従います:
- PostgreSQL サーバーの証明書を生成します。
OpenSSL ベースのクロスプラットフォームユーティリティで、次のコマンドを実行します。
openssl req -new -x509 -days 365 -nodes -text -out psql.crt -keyout psql.key -subj "/CN=psql"
chmod og-rwx psql.key
- 管理サーバーの証明書を生成します。
次のコマンドを実行します:CN 値は、管理サーバーの代わりに PostgreSQL に接続するユーザーの名前と一致する必要があります。ユーザー名は既定で postgres に設定されます。
openssl req -new -x509 -days 365 -nodes -text -out postgres.crt -keyout postgres.key -subj "/CN=postgres"
chmod og-rwx postgres.key
- クライアント証明書認証を設定します。
pg_hba.conf を次のように変更します:
hostssl all all 0.0.0.0/0 md5
pg_hba.conf に host
で始まるレコードが含まれていないことを確認してください。
- PostgreSQL の証明書を指定します。
一方向 SSL 認証
postgresql.conf を次のように変更します(.crt およびライセンス情報ファイルへの正しいパスを指定します):
listen_addresses ='localhost, server-ip'
ssl = on
ssl_cert_file = '<psql.crt>'
ssl_key_file = '<psql.key>'
双方向 SSL 認証
postgresql.conf を次のように変更します(.crt およびライセンス情報ファイルへの正しいパスを指定します):
listen_addresses ='localhost, server-ip'
ssl = on
ssl_ca_file = '<postgres.crt>'
ssl_cert_file = '<psql.crt>'
ssl_key_file = '<psql.key>'
- PostgreSQL デーモンを再起動します。
次のコマンドを実行します:
systemctl restart postgresql-14.service
- 管理サーバーのサーバーフラグを指定します。
一方向 SSL 認証
klscflag ユーティリティを使用して KLSRV_POSTGRES_OPT_SSL_CA サーバーフラグを作成し、その値として証明書へのパスを指定します。
Windows コマンドプロンプトを管理者権限で実行し、現在のディレクトリを klscflag ユーティリティのあるディレクトリに変更します。klscflag ユーティリティは、管理サーバーがインストールされているフォルダーにあります。既定のインストールパス:<Disk>:\Program Files (x86)\Kaspersky Lab\Kaspersky Security Center。
次のコマンドを実行します:
klscflag -fset -pv klserver -n KLSRV_POSTGRES_OPT_SSL_CA -v <
psql.crt へのパス
> -t s
双方向 SSL 認証
klscflag ユーティリティを使用してサーバーフラグを作成し、その値として証明書ファイルへのパスを指定します。
Windows コマンドプロンプトを管理者権限で実行し、現在のディレクトリを klscflag ユーティリティのあるディレクトリに変更します。klscflag ユーティリティは、管理サーバーがインストールされているフォルダーにあります。既定のインストールパス:<Disk>:\Program Files (x86)\Kaspersky Lab\Kaspersky Security Center。
次のコマンドを実行します:
klscflag -fset -pv klserver -n KLSRV_POSTGRES_OPT_SSL_CA -v <psql.crt
へのパス
> -t s
klscflag -fset -pv klserver -n KLSRV_POSTGRES_OPT_SSL_CERT -v <postgres.crt
へのパス
> -t s
klscflag -fset -pv klserver -n KLSRV_POSTGRES_OPT_SSL_KEY -v <postgres.key
へのパス
> -t s
postgres.key
にパスフレーズが必要な場合は、KLSRV_POSTGRES_OPT_TLS_PASPHRASE フラグを作成し、その値としてパスフレーズを指定します:
klscflag -fset -pv klserver -n KLSRV_POSTGRES_OPT_TLS_PASPHRASE -v <
パスフレーズ
> -t s
- 管理サーバーサービスを再起動します。
ページのトップに戻る