Konfigurowanie TLS/SSL dla serwerów brzegowych

Edge for Private Cloud w wersji 4.17.01

TLS (Transport Layer Security, którego poprzednikiem jest SSL) to standardowa technologia zabezpieczeń zapewniająca bezpieczne, zaszyfrowane przesyłanie 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 używasz serwera proxy, routera lub systemu równoważenia obciążenia przed interfejsem API zarządzania (czy też nie) – Edge umożliwia włączanie i konfigurowanie TLS, co daje Ci kontrolę nad szyfrowaniem wiadomości w środowisku zarządzania interfejsem API w Twojej firmie.

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. 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 z Edge do backendu (Cloud i Private Cloud).

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

Tworzenie pliku JKS

Prezentujesz magazyn kluczy jako plik JKS, w którym znajduje się 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 wielowyrazowe klucza (jeśli go ma) oraz hasło eksportu. 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 Edge TLS wymagają wpisania zaciemnionego hasła w pliku konfiguracji. 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.