[openssl] openssl을 사용하여 pfx를 pem으로 변환

OpenSSL을 사용하여 PFX 파일에서 .pem CA 인증서클라이언트 인증서 를 생성하는 방법 .



답변

OpenSSL 명령 줄 도구를 사용할 수 있습니다. 다음 명령이 트릭을 수행해야합니다.

openssl pkcs12 -in client_ssl.pfx -out client_ssl.pem -clcerts

openssl pkcs12 -in client_ssl.pfx -out root.pem -cacerts

파일을 암호로 보호하려면 추가 옵션이 있습니다.

여기 에서 전체 문서를 읽을 수 있습니다 .


답변

Linux에서 수행하는 또 다른 관점은 결과 단일 파일에 암호 해독 된 개인 키가 포함되어 HAProxy와 같은 것이 암호를 묻지 않고 사용할 수 있도록하는 방법입니다.

openssl pkcs12 -in file.pfx -out file.pem -nodes

그런 다음 file.pem 파일을 사용하도록 HAProxy를 구성 할 수 있습니다.


이것은 -nodes 옵션이 단순히 개인 키 암호화를 우회한다는 것을 깨달을 때까지 이러한 여러 단계를 거친 이전 버전의 편집입니다. 하지만 가르치는 데 도움이 될 수 있으므로 여기에 남겨 두겠습니다.

openssl pkcs12 -in file.pfx -out file.nokey.pem -nokeys
openssl pkcs12 -in file.pfx -out file.withkey.pem
openssl rsa -in file.withkey.pem -out file.key
cat file.nokey.pem file.key > file.combo.pem
  1. 첫 번째 단계에서는 PFX를 열기위한 암호를 입력하라는 메시지가 표시됩니다.
  2. 두 번째 단계에서는 키에 대한 암호를 구성하기 위해 해당 플러스를 입력하라는 메시지가 표시됩니다.
  3. 세 번째 단계에서는 복호화 된 저장을 위해 방금 만든 암호를 입력하라는 메시지가 표시됩니다.
  4. 네 번째는 모든 것을 하나의 파일에 넣습니다.

그런 다음 file.combo.pem 파일을 사용하도록 HAProxy를 구성 할 수 있습니다.

키가있는 파일과 키가없는 파일을 표시하는 별도의 두 단계가 필요한 이유는 암호화 된 키와 암호 해독 된 키가 모두있는 파일이있는 경우 HAProxy와 같은 항목이 다음과 같은 경우 암호를 입력하라는 메시지를 계속 표시하기 때문입니다. 그것을 사용합니다.


답변

다른 답변은 정확하고 철저히 설명되었지만 이해하는 데 어려움이 있습니다. 다음은 내가 사용한 방법입니다 ( 여기에서 가져옴 ).

첫 번째 경우 : PFX 파일을 인증서와 개인 키가 모두 포함 된 PEM 파일로 변환하려면 :

openssl pkcs12 -in filename.pfx -out cert.pem -nodes

두 번째 경우 : PFX 파일을 별도의 공개 및 개인 키 PEM 파일로 변환하려면 :

PFX에서 개인 키를 PEM 파일로 추출합니다.

openssl pkcs12 -in filename.pfx -nocerts -out key.pem

인증서를 내 보냅니다 (공개 키만 포함).

openssl pkcs12 -in filename.pfx -clcerts -nokeys -out cert.pem

추출 된 개인 키 (선택 사항)에서 암호 (패러 프레이즈)를 제거합니다.

openssl rsa -in key.pem -out server.key


답변