Konwertuję certyfikaty na obsługiwany format

Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
info

Z tego dokumentu dowiesz się, jak przekonwertować certyfikat TLS i powiązany klucz prywatny do formatu PEM lub PFX (PKCS #12).

Apigee Edge obsługuje przechowywanie w magazynach kluczy i zaufania tylko certyfikatów w formacie PEM lub PFX. Konwersja certyfikatów z dowolnego formatu na format PEM lub PFX wymaga użycia pakietu narzędzi OpenSSL i jest możliwa w każdym środowisku, w którym jest dostępny OpenSSL.

Zanim zaczniesz

Zanim zastosujesz czynności opisane w tym dokumencie, zapoznaj się z tymi tematami:

  • Jeśli nie znasz formatów PEM ani PFX, przeczytaj artykuł Informacje o protokole TLS/SSL.
  • Jeśli nie znasz formatów certyfikatów, przeczytaj artykuł Formaty certyfikatów SSL.
  • Jeśli nie znasz jeszcze biblioteki OpenSSL, przeczytaj artykuł OpenSSL.
  • Jeśli chcesz używać przykładowych wierszy poleceń z tego przewodnika, zainstaluj lub zaktualizuj klienta OpenSSL do najnowszej wersji.

Konwertowanie certyfikatu z formatu DER na format PEM

W tej sekcji opisano, jak przekonwertować certyfikat i powiązany z nim klucz prywatny z formatu DER do formatu PEM.

  1. Przekaż plik zawierający pełną łańcuch certyfikatów (certificate.der) oraz powiązany klucz prywatny (private_key.der), który chcesz przekonwertować do formatu PEM, na komputer z zainstalowanym OpenSSL za pomocą narzędzia scp, sftp lub dowolnego innego.

    Aby przenieść plik do katalogu /tmp na serwerze zawierającym OpenSSL, użyj polecenia scp w następujący sposób:

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

    Gdzie servername to nazwa serwera zawierającego OpenSSL.

  2. Zaloguj się na komputerze, na którym zainstalowano OpenSSL.
  3. W katalogu, w którym znajdują się certyfikaty, uruchom to polecenie, aby przekonwertować certyfikat i powiązany klucz prywatny z formatu DER na format 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. Sprawdź, czy certyfikat został przekonwertowany na format PEM

Konwertuję certyfikat z formatu P7B na format PEM

W tej sekcji opisano, jak przekonwertować certyfikaty z formatu P7B na format PEM.

  1. Przekaż plik zawierający pełny łańcuch certyfikatów (certificate.p7b), który chcesz przekonwertować do formatu PEM, na komputer z zainstalowanym OpenSSL za pomocą scp, sftp lub innego narzędzia.

    Na przykład za pomocą polecenia scp możesz przesłać plik do katalogu /tmp na serwerze z OpenSSL w ten sposób:

    scp certificate.p7b servername:/tmp

    Gdzie servername to nazwa serwera zawierającego OpenSSL.

  2. Zaloguj się na komputerze, na którym zainstalowano OpenSSL.
  3. W katalogu, w którym znajdują się certyfikaty, uruchom to polecenie, aby przekonwertować certyfikat z formatu P7B na PEM:
    openssl pkcs7 -print_certs -in certificate.p7b -out certificate.pem
  4. Sprawdź, czy certyfikat został przekonwertowany do formatu PEM.

Konwertowanie certyfikatu z formatu PFX na format PEM

W tej sekcji opisano, jak przekonwertować certyfikaty TLS z formatu PFX na format PEM.

Podczas konwertowania pliku PFX na format PEM OpenSSL umieszcza wszystkie certyfikaty i klucz prywatny w jednym pliku. Musisz otworzyć plik w edytorze tekstowym i skopiować każdy certyfikat oraz klucz prywatny (wraz z instrukcjami BEGIN i END) do osobnych plików tekstowych. Zapisz je odpowiednio jako certificate.pfx, Intermediate.pfx (jeśli dotyczy), CACert.pfxprivateKey.key.

Apigee obsługuje format PFX/PKCS #12, ale format PEM jest wygodny z wielu powodów, w tym weryfikacji.

  1. Przenieś certyfikaty i klucz prywatny (certificate.pfx, Intermediate.pfx CACert.pfx, privateKey.key), które chcesz przekonwertować do formatu PEM, na komputer z zainstalowanym OpenSSL za pomocą scp, sftp lub innego narzędzia.

    Aby przenieść plik do katalogu /tmp na serwerze zawierającym OpenSSL, użyj polecenia scp w następujący sposób:

    scp certificate.pfx servername:/tmp

    Gdzie servername to nazwa serwera zawierającego OpenSSL.

  2. Zaloguj się na komputerze, na którym zainstalowano OpenSSL.
  3. W katalogu, w którym znajdują się certyfikaty, uruchom to polecenie, aby przekonwertować certyfikat z formatu P7B na format PEM:
    openssl pkcs12 -in certificate.pfx -out certificate.pem -nodes
  4. Sprawdź, czy certyfikat został przekonwertowany do formatu PEM.

Konwertowanie certyfikatu z formatu P7B na format PFX

W tej sekcji opisano, jak przekonwertować certyfikaty TLS z formatu P7B na format PFX.

Aby przekonwertować certyfikat na format PFX, musisz też uzyskać klucz prywatny.

  1. Przenieś certyfikat (certificate.p7b), który chcesz przekonwertować na format PFX, na komputer, na którym zainstalowano OpenSSL za pomocą scp, sftp lub innego narzędzia.

    Na przykład za pomocą polecenia scp możesz przesłać plik do katalogu /tmp na serwerze z OpenSSL w ten sposób:

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

    Gdzie servername to nazwa serwera zawierającego OpenSSL.

  2. Zaloguj się na komputerze, na którym zainstalowano OpenSSL.
  3. W katalogu, w którym znajdują się certyfikaty, uruchom te polecenia, aby przekonwertować certyfikat z formatu P7B na PFX i wyeksportować certyfikaty podmiotu i pośredniego urzędu certyfikacji do oddzielnych plików:
    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

Weryfikuję certyfikat w formacie PEM

W tej sekcji dowiesz się, jak sprawdzić, czy certyfikat jest w formacie PEM.

  1. Aby wyświetlić certyfikat w formacie PEM, uruchom to polecenie:
    openssl x509 -in certificate.pem -text -noout
  2. Jeśli możesz wyświetlić treść certyfikatu w formacie zrozumiałym dla człowieka bez żadnych błędów, możesz sprawdzić, czy certyfikat jest w formacie PEM.
  3. Jeśli certyfikat jest w innym formacie, zobaczysz takie błędy:
    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

Pakowanie plików klucza PEM i certyfikatu do pliku PKCS12/PFX

  1. Upewnij się, że plik klucza prywatnego jest w formacie PEM. Jeśli masz osobne pliki PEM dla łańcucha, otwórz je w edytorze tekstu i złącz je w jeden plik, jak pokazano poniżej:
    -----BEGIN CERTIFICATE-----
    ...
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    ...
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    ...
    -----END CERTIFICATE-----
  2. Przesyłaj pliki na komputer, na którym jest zainstalowany OpenSSL, za pomocą narzędzia scp, sftp lub innego narzędzia:
    scp certificate.pem servername:/tmp
    scp private.key servername:/tmp
  3. Zaloguj się na komputerze, na którym zainstalowano OpenSSL.
  4. W katalogu, w którym znajdują się pliki, uruchom to polecenie, aby spakować pliki do pliku PKCS12 z aliasem myalias. Gdy pojawi się prośba, podaj odpowiednie hasło:
    openssl pkcs12 -export -in certificate.pem -inkey private.key -out keystore.pfx -name myalias