Postgresql 9.3.25 문서화 | ||||
---|---|---|---|---|
PostgreSQL : 문서 : 9.3 : 롤 토토 옵션 | PostgreSQL : 문서 : 9.3 : 사설 토토 사이트 설정 및 작동 | 17 장 서버 설정 및 작동 | 다음 |
PostgreSQL기본 지원이 있습니다 사용을 위해SSL토토 사이트 순위 보안 증가를 위해 클라이언트/서버 통신을 암호화합니다. 이것 필요OpenSSL가 설치되었습니다 클라이언트 및 서버 시스템 및 해당 지원에서PostgreSQL빌드 시간에 활성화되어 있습니다 (참조15 장).
withSSL지원 컴파일, 그만큼PostgreSQL서버가 될 수 있습니다 시작SSL활성화 매개 변수 설정SSLtooninpostgresql.conf. 그만큼 서버는 정상과를 모두 듣습니다.SSL동일한 TCP 포트의 토토 사이트 순위 및 의지 사용 여부에 대한 토토 사이트 순위 클라이언트와 협상SSL. 기본적으로 이것은에 있습니다 고객의 선택; 보다섹션 19.1사용해야 할 서버를 설정하는 방법SSL일부 또는 전부 사이.
PostgreSQL읽습니다 시스템 전체OpenSSL구성 파일. 기본적 으로이 파일은입니다.OpenSSL.CNF그리고 디렉토리에 있습니다 보고OpenSSL 버전 -D. 이것 환경 변수를 설정하여 기본값을 재정의 할 수 있습니다OpenSSL_CONF원하는 이름으로 구성 파일.
OpenSSL광범위한 범위를 지원합니다 암호 및 인증 알고리즘, 다양한 강도. 암호 목록은에 지정할 수 있습니다.OpenSSL구성 파일, 지정할 수 있습니다 수정하여 데이터베이스 서버에서 사용하기 위해 특별히 암호SSL_CIPHERSinpostgresql.conf.
참고 :없이 인증을받을 수 있습니다 사용하여 암호화 오버 헤드Null-Sha또는NULL-MD5암호. 그러나 a Man-in-the-Middle은 클라이언트 간의 커뮤니케이션을 읽고 통과 할 수 있습니다 그리고 서버. 또한 암호화 오버 헤드는 그것에 비해 최소입니다 인증의 오버 헤드. 이러한 이유로 널 암호는 그렇지 않습니다 추천.
시작하려면SSL모드, 파일 서버 인증서와 개인 키가 포함되어 있어야합니다. 에 의해 기본값,이 파일은 명명 될 것으로 예상Server.crtandServer.key13696_13828SSL_CERT_FILEandssl_key_file. UNIX 시스템에서 권한이Server.key세계에 대한 접근을 허용하지 않아야합니다 그룹; 명령으로 이것을 달성CHMOD 0600 Server.key. 개인 키가 암호로 보호되는 경우 서버는 암호를 신속하게하고 시작하지 않을 때까지 시작하지 않습니다. 입력되었습니다.
첫 번째 인증서Server.crt서버의 인증서는 서버의 인증서 여야합니다. 개인 키. 의 증명서"중간"증명서 당국도 가능합니다 파일에 추가되었습니다. 이렇게하면 저장의 필요성을 피할 수 있습니다 루트를 가정하고 클라이언트의 중간 인증서 중간 인증서는V3_CA확장. 이것은 더 쉽게 만료를 허용합니다 중간 증명서.
루트 인증서를 추가 할 필요는 없습니다Server.crt. 대신, 클라이언트는 근본이 있어야합니다 서버 인증서 체인의 인증서
클라이언트가 신뢰할 수있는 인증서를 제공하도록 요구하려면 루트 인증서 인증서 (CAs) 데이터 디렉토리의 파일을 신뢰합니다. 매개 변수 설정SSL_CA_FILEinpostgresql.conf새 파일 이름으로 인증 옵션 추가ClientCert = 1적절한hostsslin inPG_HBA.conf. 그러면 인증서가 될 것입니다 SSL 연결 시작 중 클라이언트로부터 요청했습니다. (보다토토 사이트 순위 : 문서 : 9.3 : SSL 지원방법에 대한 설명 클라이언트에서 인증서를 설정하려면 서버가 고객의 인증서는 신뢰할 수있는 사람 중 하나에 서명합니다. 인증 당국.
기존 루트까지 연쇄되는 중간 인증서 인증서는 파일에도 표시 될 수 있습니다root.crt저장을 피하려면 클라이언트 (루트 및 중간 인증서를 가정 한 것입니다 로 생성V3_CA확장). 인증서 취소 목록 (CRL) 항목도 매개 변수SSL_CRL_FILE가 설정되었습니다. (보다http : //h41379.www4.hpe.com/doc/83final/ba554_90007/ch04s02.htmlSSL 인증서 사용을 보여주는 다이어그램의 경우)
theClientCert옵션PG_HBA.conf모든 인증에 사용할 수 있습니다 방법, 그러나로 지정된 줄에 대해서만hostssl. 언제ClientCertIS 지정되지 않았거나 0으로 설정되어 있으면 서버는 여전히 확인합니다. CA 목록에 대한 클라이언트 인증서를 제시 한 경우 구성된 - 그러나 클라이언트 인증서가 발표.
클라이언트 인증서를 설정하는 경우 사용하고 싶을 수도 있습니다. 그만큼cert인증 방법 인증서는 사용자 인증을 제어하고 제공합니다 토토 사이트 순위 보안. 보다섹션 19.3.10자세한 내용.
표 17-2요약 서버의 SSL 설정과 관련된 파일. (그만큼 표시된 파일 이름은 기본 또는 일반적인 이름입니다. 로컬 구성된 이름은 다를 수 있습니다.)
표 17-2. SSL 서버 파일 사용
파일 | 내용 | 효과 |
---|---|---|
SSL_CERT_FILE($ pgdata/server.crt) | 서버 인증서 | 서버의 ID를 표시하기 위해 클라이언트에게 전송 |
ssl_key_file($ pgdata/server.key) | 서버 개인 키 | 서버 인증서가 소유자가 전송했음을 증명합니다. 그렇지 않습니다 인증서 소유자가 신뢰할 수 있음을 나타냅니다 |
SSL_CA_FILE($ pgdata/root.crt) | 신뢰할 수있는 인증서 당국 | 클라이언트 인증서가 신뢰할 수있는 사람에 의해 서명되었는지 확인합니다 인증 기관 |
SSL_CRL_FILE($ pgdata/root.crl) | 인증서 당국이 취소 한 인증서 | 클라이언트 인증서는이 목록에 있어야합니다 |
파일Server.key, Server.crt, root.crt및root.crl(또는 해당 구성된 대안 이름)은 서버 시작 중에 만 검사됩니다. 따라서 다시 시작해야합니다 발효 할 서버가 적용됩니다.
서버에 대한 간단한 자체 서명 인증서를 만들려면 유효합니다. 365 일 동안 다음을 사용하십시오OpenSSL명령, 교체dbhost.yourdomain.com서버 호스트와 함께 이름:
OpenSSL REQ -New -X509 -Days 365 -Nodes -Text -out Server.crt \ -keyout server.key -subj "/cn =dbhost.yourdomain.com"
그런 다음 :
CHMOD OG-RWX Server.key
권한이있는 경우 서버가 파일을 거부하기 때문에 이것보다 더 자유 롭습니다. 만드는 방법에 대한 자세한 내용은 서버 개인 키 및 인증서, 참조OpenSSL문서.
자체 서명 인증서를 테스트하는 데 사용할 수 있지만 인증서에 의해 서명 된 인증서 (CA) (일반적으로 기업 전역의 루트CA)를 사용해야합니다 생산.
신원을 검증 할 수있는 서버 인증서를 작성하려면 클라이언트에 의해 먼저 인증서 서명 요청을 만듭니다 (CSR) 및 공개/개인 키 파일:
OpenSSL REQ -New -Nodes -text -out root.csr \ -keyout root.key -subj "/cn =root.yourdomain.com" chmod og-rwx root.key
그런 다음 루트 인증서를 만들기 위해 키가있는 요청에 서명하십시오. 권한 (기본값 사용OpenSSL구성 파일 위치Linux) :
OpenSSL X509 -req -in root.csr -text -days 3650 \ -extfile /etc/ssl/openssl.cnf -extensions v3_ca \ -signkey root.key -out root.crt
마지막으로 새 루트가 서명 한 서버 인증서 작성 인증 기관 :
OpenSSL Req -New -Nodes -text -out server.csr \ -keyout server.key -subj "/cn =dbhost.yourdomain.com" chmod og-rwx server.key OpenSSL x509 -req -in server.csr -text -days 365 \ -ca root.crt -cakey root.key -cacreateserial \ -out server.crt
Server.crtandServer.key서버에 저장해야하며root.crt클라이언트에 저장해야합니다 따라서 클라이언트는 서버의 리프 인증서가 신뢰할 수있는 루트 인증서로 서명했습니다.root.key사용하기 위해 오프라인으로 저장해야합니다 향후 인증서 만들기.
포함하는 신뢰 체인을 만들 수도 있습니다. 중간 증명서 :
# 루트 OpenSSL req -new -nodes -text -out root.csr \ -keyout root.key -subj "/cn =root.yourdomain.com" chmod og-rwx root.key OpenSSL x509 -req -in root.csr -text -days 3650 \ -extfile /etc/ssl/openssl.cnf -extensions v3_ca \ -signkey root.key -out root.crt # 중간 OpenSSL REQ -New -Nodes -text -out intermediate.csr \ -keyout intermediate.key -subj "/cn =intermediate.yourdomain.com" CHMOD OG-RWX Intermediate.key OpenSSL x509 -req -in intermediate.csr -text -days 1825 \ -extfile /etc/ssl/openssl.cnf -extensions v3_ca \ -ca root.crt -cakey root.key -cacreateserial \ -out intermediate.crt # 잎 OpenSSL Req -New -Nodes -text -out server.csr \ -keyout server.key -subj "/cn =dbhost.yourdomain.com" chmod og-rwx server.key OpenSSL x509 -req -in server.csr -text -days 365 \ -ca intermediate.crt -cakey intermediate.key -cacreateserial \ -out server.crt
Server.crt및Intermediate.crta로 연결되어야합니다 인증서 파일 번들 및 서버에 저장됩니다.Server.key서버에 저장해야합니다.root.crt클라이언트에 저장해야합니다 따라서 클라이언트는 서버의 리프 인증서가 신뢰할 수있는 루트에 토토 사이트 순위된 일련의 인증서로 서명 자격증.root.key및Intermediate.key사용하기 위해 오프라인으로 저장해야합니다 향후 인증서 생성.
이전 | 배트맨 토토 : 문서 : 9.3 : 배트맨 토토 9.3.25 문서화 | 다음 |
암호화 옵션 | PostgreSQL : 문서 : 9.3 : 사설 토토 사이트 설정 및 작동 | 보안 TCP/IP 와의 토토 사이트 순위SSH터널 |