Konfigurowanie TLS/SSL dla serwerów brzegowych

Edge for Private Cloud w wersji 4.18.05

TLS (Transport Layer Security, którego poprzednikiem jest SSL) to standardowa technologia zabezpieczeń zapewniająca bezpieczne, zaszyfrowane wiadomości w całym środowisku interfejsu API, od aplikacji przez Apigee Edge po usługi backendowe.

Niezależnie od konfiguracji środowiska interfejsu API zarządzania – na przykład od tego, czy przed interfejsem API zarządzania używasz serwera proxy, routera lub systemu równoważenia obciążenia – Edge umożliwia włączanie i konfigurowanie TLS, co daje Ci kontrolę nad szyfrowaniem wiadomości w środowisku zarządzania interfejsem API w Twojej organizacji.

W przypadku instalacji Edge Private Cloud na urządzeniu lokalnym możesz skonfigurować TLS w kilku miejscach:

  1. między routerem a procesorem wiadomości;
  2. Aby uzyskać dostęp do interfejsu Edge Management API
  3. Dostęp do interfejsu zarządzania Edge
  4. Dostęp aplikacji do interfejsów API
  5. Dostęp z Edge do usług backendowych

Konfigurowanie TLS w przypadku pierwszych 3 elementów opisano poniżej. Wszystkie te procedury zakładają, że masz plik JKS zawierający certyfikat TLS i klucz prywatny.

Aby skonfigurować TLS dla dostępu aplikacji do interfejsów API (punkt 4 powyżej), zapoznaj się z artykułem Konfigurowanie dostępu TLS do interfejsu API w chmurze prywatnej. Aby skonfigurować TLS na potrzeby dostępu z Edge do usług backendowych, wykonaj punkt 5 powyżej, czyli skonfiguruj TLS na potrzeby dostępu z Edge do backendu (w chmurze i w Private Cloud).

Pełny przegląd konfigurowania TLS w Edge znajdziesz w artykule TLS/SSL.

Tworzenie pliku JKS

Magazyn kluczy jest reprezentowany jako plik JKS, który zawiera certyfikat TLS i klucz prywatny. Plik JKS można utworzyć na kilka sposobów, m.in. za pomocą narzędzi openssl i keytool.

Na przykład masz plik PEM o nazwie server.pem zawierający certyfikat TLS oraz plik PEM o nazwie private_key.pem zawierający klucz prywatny. Aby utworzyć plik PKCS12, użyj tych poleceń:

openssl pkcs12 -export -clcerts -in server.pem -inkey private_key.pem -out keystore.pkcs12

Musisz wpisać hasło klucza (jeśli takie istnieje) oraz hasło eksportowania. To polecenie tworzy plik PKCS12 o nazwie keystore.pkcs12.

Aby przekonwertować plik na plik JKS o nazwie keystore.jks, użyj tego polecenia:

keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks

Pojawi się prośba o podanie nowego hasła do pliku JKS i dotychczasowego hasła do pliku PKCS12. Upewnij się, że w pliku JKS używasz tego samego hasła, którego używasz w pliku PKCS12.

Jeśli musisz podać alias klucza, np. podczas konfigurowania TLS między routerem a procesorem wiadomości, dodaj opcję -name do polecenia openssl:

openssl pkcs12 -export -clcerts -in server.pem -inkey private_key.pem -out keystore.pkcs12 -name devtest

Następnie dodaj opcję -alias do polecenia keytool:

keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks -alias devtest

Generowanie zaciemnionego hasła

Niektóre części procedury konfiguracji TLS w Edge wymagają podania zaszyfrowanego hasła w pliku konfiguracyjnym. Zaszyfrowane hasło jest bezpieczniejszą alternatywą dla wpisywania hasła w postaci zwykłego tekstu.

Na serwerze Edge Management możesz wygenerować zaszyfrowane hasło, używając tego polecenia:

/opt/apigee/apigee-service/bin/apigee-service edge-management-server generate-obfuscated-password

Wpisz nowe hasło i potwierdź je. Ze względów bezpieczeństwa tekst hasła nie jest wyświetlany. To polecenie zwraca hasło w formie:

OBF:58fh40h61svy156789gk1saj
MD5:902fobg9d80e6043b394cb2314e9c6

Podczas konfigurowania TLS użyj zaszyfrowanego hasła określonego przez OBF.

Więcej informacji znajdziesz w tym artykule.