인증서를 지원되는 형식으로 변환

Apigee Edge 문서입니다.
Apigee X 문서로 이동
정보

이 문서에서는 TLS 인증서 및 연결된 비공개 키를 PEM 또는 PFX (PKCS #12) 형식으로 변환하는 방법을 설명합니다.

Apigee Edge는 키 저장소 및 트러스트 저장소에 PEM 또는 PFX 형식 인증서만 저장할 수 있도록 지원합니다. 인증서를 기존 형식에서 PEM 또는 PFX 형식으로 변환하는 데 사용되는 단계는 OpenSSL 툴킷을 기반으로 하며 OpenSSL을 사용할 수 있는 모든 환경에 적용할 수 있습니다.

시작하기 전에

이 문서의 단계를 사용하기 전에 다음 주제를 이해해야 합니다.

  • PEM 또는 PFX 형식에 익숙하지 않다면 TLS/SSL 정보를 참고하세요.
  • 인증서 형식에 익숙하지 않다면 SSL 인증서 형식을 참고하세요.
  • OpenSSL 라이브러리에 익숙하지 않으면 OpenSSL을 참고하세요.
  • 이 가이드의 명령줄 예시를 사용하려면 OpenSSL 클라이언트를 최신 버전으로 설치하거나 업데이트합니다.

인증서를 DER 형식에서 PEM 형식으로 변환

이 섹션에서는 인증서와 연결된 비공개 키를 DER 형식에서 PEM 형식으로 변환하는 방법을 설명합니다.

  1. scp, sftp 또는 기타 유틸리티를 사용하여 OpenSSL이 설치된 머신으로 PEM 형식으로 변환하려는 전체 인증서 체인(certificate.der) 및 연결된 비공개 키(private_key.der)가 포함된 파일을 전송합니다.

    예를 들어 다음과 같이 scp 명령어를 사용하여 OpenSSL이 포함된 서버의 /tmp 디렉터리로 파일을 전송합니다.

    scp certificate.der servername:/tmp
    scp private_key.der servername:/tmp

    여기서 servername은 OpenSSL이 포함된 서버의 이름입니다.

  2. OpenSSL이 설치된 머신에 로그인합니다.
  3. 인증서가 있는 디렉터리에서 다음 명령어를 실행하여 인증서 및 연결된 비공개 키를 DER 형식에서 PEM 형식으로 변환합니다.
    openssl x509 -inform DER -in certificate.der -outform PEM -out certificate.pem
    openssl rsa -inform DER -in private_key.der -outform PEM -out private.key
  4. 인증서가 PEM 형식으로 변환되었는지 확인합니다.

인증서를 P7B 형식에서 PEM 형식으로 변환

이 섹션에서는 인증서를 P7B 형식에서 PEM 형식으로 변환하는 방법을 설명합니다.

  1. PEM 형식으로 변환하려는 전체 인증서 체인(certificate.p7b)이 포함된 파일을 scp, sftp 또는 기타 유틸리티를 사용하여 OpenSSL이 설치된 머신으로 전송합니다.

    예를 들어 scp 명령어를 사용하여 다음과 같이 OpenSSL을 포함하는 서버의 /tmp 디렉터리로 파일을 전송합니다.

    scp certificate.p7b servername:/tmp

    여기서 servername은 OpenSSL이 포함된 서버의 이름입니다.

  2. OpenSSL이 설치된 머신에 로그인합니다.
  3. 인증서가 있는 디렉터리에서 다음 명령어를 실행하여 인증서를 P7B 형식에서 PEM 형식으로 변환합니다.
    openssl pkcs7 -print_certs -in certificate.p7b -out certificate.pem
  4. 인증서가 PEM 형식으로 변환되었는지 확인합니다.

인증서를 PFX 형식에서 PEM 형식으로 변환

이 섹션에서는 TLS 인증서를 PFX 형식에서 PEM 형식으로 변환하는 방법을 설명합니다.

PFX 파일을 PEM 형식으로 변환할 때 OpenSSL은 모든 인증서와 비공개 키를 단일 파일에 저장합니다. 텍스트 편집기에서 파일을 열고 각 인증서와 비공개 키 (BEGIN/END 문 포함)를 개별 텍스트 파일에 복사하여 각각 certificate.pfx, Intermediate.pfx (해당하는 경우), CACert.pfx, privateKey.key로 저장해야 합니다.

Apigee는 PFX/PKCS #12 형식을 지원하지만 PEM 형식은 검증을 비롯한 여러 가지 이유로 편리합니다.

  1. PEM 형식으로 변환하려는 인증서 및 비공개 키(certificate.pfx, Intermediate.pfx, CACert.pfx, privateKey.key)를 scp, sftp 또는 기타 유틸리티를 사용하여 OpenSSL이 설치된 머신으로 전송합니다.

    예를 들어 다음과 같이 scp 명령어를 사용하여 OpenSSL이 포함된 서버의 /tmp 디렉터리로 파일을 전송합니다.

    scp certificate.pfx servername:/tmp

    여기서 servername은 OpenSSL이 포함된 서버의 이름입니다.

  2. OpenSSL이 설치된 머신에 로그인합니다.
  3. 인증서가 있는 디렉터리에서 다음 명령어를 실행하여 인증서를 P7B 형식에서 PEM 형식으로 변환합니다.
    openssl pkcs12 -in certificate.pfx -out certificate.pem -nodes
  4. 인증서가 PEM 형식으로 변환되었는지 확인합니다.

인증서를 P7B 형식에서 PFX 형식으로 변환

이 섹션에서는 TLS 인증서를 P7B 형식에서 PFX 형식으로 변환하는 방법을 설명합니다.

PFX 형식으로 변환하려면 비공개 키도 가져와야 합니다.

  1. PFX로 변환하려는 인증서 (certificate.p7b)를 scp, sftp 또는 기타 유틸리티를 사용하여 OpenSSL이 설치된 머신으로 전송합니다.

    예를 들어 scp 명령어를 사용하여 다음과 같이 OpenSSL을 포함하는 서버의 /tmp 디렉터리로 파일을 전송합니다.

    scp certificate.p7b servername:/tmp
    scp private_key.key servername:/tmp

    여기서 servername은 OpenSSL이 포함된 서버의 이름입니다.

  2. OpenSSL이 설치된 머신에 로그인합니다.
  3. 인증서가 있는 디렉터리에서 다음 명령어를 실행하여 인증서를 P7B 형식에서 PFX 형식으로 변환하고 항목 및 중간 CA 인증서를 별도의 파일로 내보냅니다.
    openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer
    
    openssl pkcs12 -export -in certificate.cer -inkey private_key.key -out certificate.pfx -certfile CACert.cer

인증서가 PEM 형식인지 확인

이 섹션에서는 인증서가 PEM 형식인지 확인하는 방법을 설명합니다.

  1. PEM 형식의 인증서를 보려면 다음 명령어를 실행합니다.
    openssl x509 -in certificate.pem -text -noout
  2. 오류 없이 인간이 읽을 수 있는 형식으로 인증서 내용을 볼 수 있으면 인증서가 PEM 형식임을 확인할 수 있습니다.
  3. 인증서가 다른 형식인 경우 다음과 같은 오류가 표시됩니다.
    unable to load certificate
    12626:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:647:Expecting: TRUSTED CERTIFICATE View DER encoded Certificate

PEM 키 및 인증서 파일을 PKCS12/PFX로 패키징

  1. 비공개 키 파일이 PEM 형식인지 확인합니다. 인증서의 경우 체인에 별도의 PEM 파일이 있는 경우 텍스트 편집기에서 각 파일을 열고 아래와 같이 단일 파일로 연결합니다.
    -----BEGIN CERTIFICATE-----
    ...
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    ...
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    ...
    -----END CERTIFICATE-----
  2. scp, sftp 또는 기타 유틸리티를 사용하여 OpenSSL이 설치된 머신으로 파일을 전송합니다.
    scp certificate.pem servername:/tmp
    scp private.key servername:/tmp
  3. OpenSSL이 설치된 머신에 로그인합니다.
  4. 파일이 있는 디렉터리에서 다음 명령어를 실행하여 파일을 별칭이 myalias인 PKCS12 파일로 패키징합니다. 메시지가 표시되면 적절한 비밀번호를 입력합니다.
    openssl pkcs12 -export -in certificate.pem -inkey private.key -out keystore.pfx -name myalias