2.5. 개인 CA를 사용하여 OpenSSL이 있는 CSR의 인증서 발행
시스템이 TLS 암호화 통신 채널을 설정할 수 있도록 하려면 CA(인증 기관)에서 유효한 인증서를 제공해야 합니다. 개인 CA가 있는 경우 시스템에서 인증서 서명 요청(CSR)에 서명하여 요청된 인증서를 생성할 수 있습니다.
사전 요구 사항
- 개인 CA를 이미 구성했습니다. 자세한 내용은 OpenSSL을 사용하여 개인 CA 생성 섹션을 참조하십시오.
- CSR이 포함된 파일이 있습니다. 2.3절. “OpenSSL을 사용하여 TLS 서버 인증서에 대한 개인 키 및 CSR 생성” 섹션에서 CSR을 생성하는 예를 찾을 수 있습니다.
프로세스
선택 사항: 선택한 텍스트 편집기를 사용하여 인증서에 확장 기능을 추가하기 위해 OpenSSL 구성 파일을 준비합니다. 예를 들면 다음과 같습니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이전 예제에서는 원칙만 설명하고
openssl
은 인증서에 모든 확장 기능을 자동으로 추가하지는 않습니다. CNF 파일에 필요한 확장을 추가하거나openssl
명령의 매개변수에 추가해야 합니다.X
509
유틸리티를 사용하여 CSR을 기반으로 인증서를 생성합니다. 예를 들면 다음과 같습니다.openssl x509 -req -in <server_cert.csr> -CA <ca.crt> -CAkey <ca.key> -days 365 -extfile <openssl.cnf> -extensions <server_cert> -out <server_cert.crt>
$ openssl x509 -req -in <server_cert.csr> -CA <ca.crt> -CAkey <ca.key> -days 365 -extfile <openssl.cnf> -extensions <server_cert> -out <server_cert.crt> Signature ok subject=C = US, O = Example Organization, CN = server.example.com Getting CA Private Key
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 보안을 강화하려면 CSR에서 다른 인증서를 생성하기 전에 serial-number 파일을 삭제합니다. 이렇게 하면 일련 번호가 항상 임의의지 확인합니다. 사용자 지정 파일 이름을 지정하는
CAserial
옵션을 생략하면 serial-number 파일 이름이 인증서의 파일 이름과 동일하지만 확장자는.srl
확장자(이전 예에서server-cert.srl
)로 교체됩니다.