Edge for Private Cloud w wersji 4.16.09
TLS (Transport Layer Security, którego poprzednik to SSL) to standardowa technologia zabezpieczeń zapewniająca bezpieczne, zaszyfrowane wiadomości w środowisku API, od aplikacji przez Apigee Edge po usługi backendu.
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:
- między routerem a procesorem wiadomości;
- Aby uzyskać dostęp do interfejsu Edge Management API
- Dostęp do interfejsu zarządzania Edge
- Dostęp aplikacji do interfejsów API
- Aby uzyskać dostęp z Edge do usług backendu
Konfigurowanie TLS w przypadku pierwszych 3 elementów opisano poniżej. W każdej z tych procedur zakładamy, że masz utworzony 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ć dostęp TLS z Edge do usług backendu, przeczytaj punkt 5 powyżej w sekcji Konfigurowanie TLS z Edge do backendu (chmura i chmura prywatna).
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 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 co w przypadku 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.
Zaciemnione hasło możesz wygenerować w Javie za pomocą plików .jar Jetty zainstalowanych z Edge. Aby wygenerować zaciemnione hasło, użyj polecenia w tym formacie:
> IFS= read -rsp Password: passvar; echo; java -cp "/opt/apigee/edge-gateway/lib/thirdparty/*" org.eclipse.jetty.util.security.Password $passvar 2>&1 |tail -2; unset passvar
Wpisz nowe hasło. 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.