브라우저에서 JavaScript를 활성화해 주시기 바랍니다!
시나리오: PostgreSQL 서버 인증
모두 펼치기 | 모두 접기
PostgreSQL 서버를 인증하려면 TLS 인증서를 사용할 것을 권장합니다. 신뢰할 수 있는 인증 기관(CA)의 인증서 또는 자체 서명 인증서를 사용할 수 있습니다. 자체 서명 인증서의 보호는 제한적이므로 신뢰할 수 있는 CA의 인증서를 사용하십시오.
중앙 관리 서버는 PostgreSQL에 대해 단방향 및 양방향 SSL 인증을 모두 지원합니다.
PostgreSQL 서버 인증은 다음과 같은 단계로 진행됩니다.
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 및 .key 파일에 대한 올바른 경로 지정).
listen_addresses ='localhost, server-ip'
ssl = on
ssl_cert_file = '<psql.crt>'
ssl_key_file = '<psql.key>'
양방향 SSL 인증
postgresql.conf를 다음과 같이 수정합니다(.crt 및 .key 파일에 대한 올바른 경로 지정).
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 유틸리티는 중앙 관리 서버가 설치된 폴더에 있습니다. 기본 설치 경로는 <디스크>:\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 유틸리티는 중앙 관리 서버가 설치된 폴더에 있습니다. 기본 설치 경로는 <디스크>:\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
중앙 관리 서버 서비스 다시 시작
맨 위로