윈 토토 : 문서 : 9.4 : 윈 토토 | |||
---|---|---|---|
PostgreSQL : 문서 : 9.4 : 토토 베이 옵션 | 젠 토토 : 문서 : 9.4 : 서버 설정 및 작동 | 17 장. 서버 설정 및 작동 | PostgreSQL : 문서 : 9.4 : SSH 터널로 토토 사이트/IP 토토 사이트을 보호 |
PostgreSQL사용에 대한 기본 지원이 있습니다SSL보안 강화를 위해 클라이언트/서버 통신 암호화에 대한 무지개 토토. 이것은 필요합니다OpenSSL클라이언트 및 서버 시스템 모두에 설치되고 해당 지원PostgreSQL빌드 시간에 활성화되어 있습니다 (참조15 장).
withSSL지원 컴파일,postgresql서버를 시작할 수 있습니다SSL매개 변수를 설정하여 활성화SSLtooninpostgresql.conf. 서버는 정상과를 모두 듣습니다.SSL동일한 TCP 포트의 무지개 토토 및 사용 여부에 대해 무지개 토토 클라이언트와 협상 할 것입니다SSL. 기본적으로 이것은 클라이언트의 옵션입니다. 보다섹션 19.1사용이 필요한 서버를 설정하는 방법SSL일부 또는 모든 무지개 토토의 경우
PostgreSQL시스템 전체를 읽습니다OpenSSL구성 파일. 기본적 으로이 파일은입니다.OpenSSL.CNFOpenSSL 버전 -D. 이 기본값은 환경 변수를 설정하여 재정의 할 수 있습니다OpenSSL_CONF원하는 구성 파일의 이름으로.
OpenSSL다양한 강도의 광범위한 암호 및 인증 알고리즘을 지원합니다. 암호 목록은에 지정할 수 있습니다.OpenSSL구성 파일, 수정하여 데이터베이스 서버에서 사용하기 위해 특별히 암호를 지정할 수 있습니다SSL_CIPHERSinpostgresql.conf.
참고 :사용하여 암호화 오버 헤드없이 인증을 가질 수 있습니다Null-Sha또는NULL-MD5암호. 그러나 중간에 사람은 클라이언트와 서버 간의 통신을 읽고 통과 할 수 있습니다. 또한 인증 오버 헤드에 비해 암호화 오버 헤드가 최소화됩니다. 이러한 이유로 Null 암호는 권장되지 않습니다.
시작하려면SSL모드, 서버 무지개 토토와 개인 키가 포함 된 파일이 있어야합니다. 기본적 으로이 파일은 명명 될 것으로 예상Server.crtandServer.key각각 서버의 데이터 디렉토리에서 구성하지만 구성 매개 변수를 사용하여 다른 이름과 위치를 지정할 수 있습니다SSL_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.4 : 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. 언제ClientCert는 지정되지 않았거나 0으로 설정되어 있지 않으면 서버가 CA 목록에 대해 제시된 클라이언트 인증서를 확인한 경우에도 여전히 클라이언트 인증서를 제시 할 것을 주장하지 않습니다..
클라이언트 무지개 토토를 설정하는 경우를 사용할 수 있습니다.cert인증 방법, 인증서가 사용자 인증을 제어하고 무지개 토토 보안을 제공하도록합니다. 보다섹션 19.3.9자세한 내용.
표 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.crtandIntermediate.crt인증서 파일 번들에 연결하고 서버에 저장해야합니다.Server.key서버에 저장해야합니다.root.crt클라이언트에 저장되어 클라이언트가 서버의 리프 인증서가 신뢰할 수있는 루트 인증서에 무지개 토토된 일련의 인증서로 서명되었는지 확인할 수 있습니다.root.keyandIntermediate.key향후 무지개 토토 생성에 사용하기 위해 오프라인으로 저장해야합니다.
이전 | 윈 토토 : 문서 : 9.4 : 윈 토토 9.4.26 문서화 | PostgreSQL : 문서 : 9.4 : SSH 터널로 토토 사이트/IP 토토 사이트을 보호 |
암호화 옵션 | 젠 토토 : 문서 : 9.4 : 서버 설정 및 작동 | 보안 TCP/IP 무지개 토토SSH터널 |