Konwertuję certyfikaty na obsługiwany format

Przeglądasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
Informacje

Ten dokument wyjaśnia, jak przekonwertować certyfikat TLS i powiązany klucz prywatny na format PEM lub PFX (PKCS #12).

Apigee Edge obsługuje przechowywanie w magazynach kluczy i magazynach zaufania tylko certyfikatów w formacie PEM lub PFX. Czynności wymagane do konwersji certyfikatów z dowolnego istniejącego formatu na format PEM lub PFX zależą od zestawu narzędzi OpenSSL i można je zastosować w każdym środowisku, w którym dostępny jest OpenSSL.

Zanim zaczniesz

Zanim wykonasz czynności opisane w tym dokumencie, upewnij się, że rozumiesz następujące zagadnienia:

  • Jeśli nie znasz formatu PEM lub PFX, przeczytaj artykuł Informacje o TLS/SSL.
  • Jeśli nie znasz formatów certyfikatów, przeczytaj artykuł o formatach certyfikatów SSL.
  • Jeśli nie znasz biblioteki OpenSSL, przeczytaj artykuł OpenSSL.
  • Jeśli chcesz używać przykładów wiersza poleceń podanych w tym przewodniku, zainstaluj lub zaktualizuj klienta OpenSSL do najnowszej wersji.

Konwersja certyfikatu z formatu DER na PEM

Ta sekcja opisuje, jak przekonwertować certyfikat i powiązany klucz prywatny z formatu DER na format PEM.

  1. Przenieś plik zawierający pełny łańcuch certyfikatów (certificate.der) i powiązany klucz prywatny (private_key.der), które chcesz przekonwertować na format PEM, na komputer, na którym zainstalowano OpenSSL za pomocą scp, sftp lub innego narzędzia.

    Na przykład użyj polecenia scp, aby przenieść plik do katalogu /tmp na serwerze zawierającym OpenSSL w ten 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 do formatu PEM.

Konwersja certyfikatu z formatu P7B na PEM

Ta sekcja zawiera informacje o konwertowaniu certyfikatów z formatu P7B na format PEM.

  1. Przenieś plik zawierający pełny łańcuch certyfikatów (certificate.p7b), który chcesz przekonwertować na format PEM, na komputer, na którym zainstalowano OpenSSL za pomocą scp, sftp lub innego narzędzia.

    Na przykład użyj polecenia scp, aby przenieść plik do katalogu /tmp na serwerze zawierającym 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.

Konwertuję certyfikat z formatu PFX na PEM

Ta sekcja zawiera informacje na temat konwertowania certyfikatów 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 tekstu i skopiować każdy certyfikat i każdy klucz prywatny (w tym instrukcje BEGIN/END) do poszczególnych plików tekstowych i zapisać je odpowiednio jako certificate.pfx, Intermediate.pfx (w stosownych przypadkach), CACert.pfx i privateKey.key.

Apigee obsługuje format PFX/PKCS #12; jednak ten format jest wygodny z wielu powodów, w tym ze walidacji.

  1. Przenieś certyfikaty i klucz prywatny (certificate.pfx, Intermediate.pfx CACert.pfx, privateKey.key), które chcesz przekonwertować na format PEM, na komputer, na którym zainstalowano OpenSSL przy użyciu scp, sftp lub innego narzędzia.

    Na przykład użyj polecenia scp, aby przenieść plik do katalogu /tmp na serwerze zawierającym OpenSSL w ten 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 PEM:
    openssl pkcs12 -in certificate.pfx -out certificate.pem -nodes
    
  4. Sprawdź, czy certyfikat został przekonwertowany do formatu PEM.

Konwertuję certyfikat z formatu P7B na PFX

Ta sekcja zawiera informacje na temat konwertowania certyfikatów TLS z formatu P7B na format PFX.

Aby dokonać konwersji na format PFX, musisz też uzyskać klucz prywatny.

  1. Przenieś certyfikat (certificate.p7b), który chcesz przekonwertować na plik PFX, na komputer, na którym zainstalowano OpenSSL przy użyciu scp, sftp lub innego narzędzia.

    Na przykład użyj polecenia scp, aby przenieść plik do katalogu /tmp na serwerze zawierającym 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 następujące polecenia, aby przekonwertować certyfikat z formatu P7B na PFX oraz wyeksportować certyfikat jednostki i certyfikaty pośredniego urzędu certyfikacji do osobnych 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 opisaliśmy, 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ć zawartość certyfikatu w formacie czytelnym dla człowieka bez żadnych błędów, możesz potwierdzić, że jest on w formacie PEM.
  3. Jeśli certyfikat jest w innym formacie, zobaczysz błędy podobne do tych:
    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