보안 데이터베이스 연결을 위한 SSL 인증서 생성 및 활성화하기
이 태스크에 대한 정보
SSL/TLS는 클라이언트(이 경우 웹 서버)와 서버(이 경우 데이터베이스 서버) 간의 정보 전송이 중간에 있는 네트워크상의 누군가에 의해 변조되거나 도청되지 않도록 보호합니다(두 컴퓨터에 접속할 수 있는 경우 포함). SSL이 유용한지 평가하려면 공격자가 SSL이 사용자를 보호하도록 설계된 공격을 완료할 수 있는 위치에 있다고 가정해야 합니다. 즉, 공격자는 네트워크 또는 컴퓨터에서 패킷을 스니핑할 수 있는 위치에 있어야 합니다.
중요: 자체 인증서를 사용하는 경우 개인 키 매개변수에 비밀번호가 없는지 확인하세요. 비밀번호 사용 개인 키는 지원되지 않습니다.
프로시저
- CA 인증 기관을 만듭니다.
openssl genrsa -out CAKey.pem 2048
openssl req -new -x509 -days 365 -key CAKey.pem -sha512 -out cacert.pem
- 서버 인증서를 만듭니다.명령을 실행하고 런타임 지침을 따릅니다:
openssl genrsa -aes256 -out svr-key.pem 2048
openssl req -new -key svr-key.pem -out server.csr
openssl x509 -req -days 365 -in server.csr -CA cacert.pem -CAkey CAKey.pem -set_serial 00001 -sha512 -out server-cert.pem
- '
server-private key
'에서 비밀번호를 제거합니다.openssl rsa -in svr-key.pem -out server-key.pem
참고: 자체 인증서를 사용하는 경우, 'server-private key
'의 비밀번호를 제거해야 합니다. - 변경 사항을 확인합니다.
openssl x509 -in cacert.pem -text -noout
openssl x509 -in server-cert.pem -text -noout
- 디렉토리를 변경하십시오.
cd /nz/kit/share/security
- '
server-cert.pem
' 및 'server-key.pem
' 파일을 ' /nz/kit/share/security '에 복사하고 다음 명령을 실행합니다.- 11.0.7.1 이상 버전:
mv server-cert-sp800-131a.pem.sample server-cert-sp800-131a.pem.sample.BKP
mv server-key-sp800-131a.pem.sample server-key-sp800-131a.pem.sample.BKP
mv server-cert.pem server-cert-sp800-131a.pem.sample
mv server-key.pem server-key-sp800-131a.pem.sample
- '
enable_tls_v12
'이 없는 11.0.7.0 이하의 경우 :mv server-key.pem.sample server-key.pem.sample.BKP
mv server-cert.pem.sample server-cert.pem.sample.BKP
mv server-key.pem server-key.pem.sample
mv server-cert.pem server-cert.pem.sample
- 11.0.7.0 이하에서 '
enable_crypto_std_v1 =1
'을 사용하는 경우 :mv server-cert-sp800-131a.pem.sample server-cert-sp800-131a.pem.sample.BKP
mv server-key-sp800-131a.pem.sample server-key-sp800-131a.pem.sample.BKP
mv server-cert.pem server-cert-sp800-131a.pem.sample
mv server-key.pem server-key-sp800-131a.pem.sample
- 11.0.7.1 이상 버전:
- 시스템을 다시 시작하십시오.
nzstop
nzstart
- 변경 사항을 확인합니다.
- 디렉터리를 ' /nz/data/security'로 변경합니다.
cd /nz/data/security
openssl x509 -in server-cert.pem -text -noout
- ' nzsql ' 명령을 실행합니다:
예:nzsql -u admin -pw password -securityLevel onlySecured
SSL enabled connection. Cipher:AES256-SHA, bits: 256는 올바른 SSL 통신을 사용하고 있음을 지정합니다.nz@netezza01 ?]$ nzsql -u admin -p password -securityLevel onlySecured Welcome to nzsql, the IBM Netezza SQL interactive terminal. Type: \h for help with SQL commands \? for help on internal slash commands \g or terminate with semicolon to execute query \q to quit SSL enabled connection. Cipher: AES256-SHA, bits: 256
- '
postgres/pg.log
'에서 다음 항목을 찾습니다.DEBUG: Attempting SSL_accept() DEBUG: SSL_accept succeeded
- Windows에서는 '
"SSL Mode" = "Require"
' 옵션으로 연결을 설정합니다.
- 디렉터리를 ' /nz/data/security'로 변경합니다.