Edge for Private Cloud w wersji 4.17.01
Domyślnie interfejs Management API obsługuje wyłączone szyfrowanie TLS. Do interfejsu Management API w usłudze Edge uzyskujesz dostęp przez HTTP, korzystając z adresu IP węzła serwera zarządzania i portu 8080. Na przykład:
http://ms_IP:8080
Możesz też skonfigurować dostęp TLS do interfejsu API zarządzania, aby mieć do niego dostęp w postaci formularza:
https://ms_IP:8443
W tym przykładzie skonfigurujesz dostęp TLS tak, aby używał portu 8443. Ten numer portu nie jest jednak wymagany przez Edge – możesz skonfigurować serwer zarządzający tak, aby używał innych wartości portu. Jedynym wymaganiem jest to, aby zapora sieciowa zezwalała na ruch przez określony port.
Aby zapewnić szyfrowanie ruchu do i z interfejsu API zarządzania, skonfiguruj ustawienia w pliku /opt/apigee/customer/application/management-server.properties.
Oprócz konfiguracji TLS możesz też kontrolować weryfikację hasła (długość i siłę hasła) przez zmodyfikowanie pliku management-server.properties.
Sprawdź, czy port TLS jest otwarty
Procedura opisana w tej sekcji pozwala skonfigurować protokół TLS tak, aby używał portu 8443 na serwerze zarządzania. Niezależnie od używanego portu musisz się upewnić, że jest on otwarty na serwerze zarządzania. Możesz na przykład otworzyć je za pomocą tego polecenia:
$ iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT --verbose
Konfigurowanie TLS
Edytuj plik /opt/apigee/customer/application/management-server.properties, aby kontrolować użycie TLS w ruchu do i z interfejsu API zarządzania. Jeśli ten plik nie istnieje, utwórz go.
Aby skonfigurować dostęp TLS do interfejsu API zarządzania, wykonaj te czynności:
- Wygeneruj plik magazynu kluczy JKS zawierający certyfikat TLS i klucz prywatny. Więcej informacji znajdziesz w artykule Konfigurowanie TLS/SSL na potrzeby Edge On Premises.
- Skopiuj plik klucza JKS do katalogu na węźle serwera zarządzania, np. /opt/apigee/customer/application.
- Zmień właściciela pliku JKS na apigee:
$ chown apigee:apigee keystore.jks
gdzie keystore.jks to nazwa pliku magazynu kluczy. - Zmień plik /opt/apigee/customer/application/management-server.properties, aby ustawić te właściwości. Jeśli go nie ma, utwórz go:
conf_webserver_ssl.enabled=true
# Pozostaw ustawienie conf_webserver_http.turn.off równe false
# ponieważ wiele wywołań wewnętrznych w Edge korzysta z protokołu HTTP.
conf_webserver_http.turn.off=false
conf_webserver_ssl.port=8443
conf_webserver_keystore.path=/opt/apigee/customer/application/keystore.jks
# Poniżej wpisz zaszyfrowane hasło do magazynu kluczy.
conf_webserver_keystore.password=OBF:obfuscatedPassword
conf_webserver_cert.alias=apigee-devtest
Gdzie keyStore.jks to plik magazynu kluczy, a obfuscatedPassword to zaciemnione hasło do magazynu kluczy. Informacje o generowaniu zaszyfrowanego hasła znajdziesz w artykule Konfigurowanie TLS/SSL w przypadku Edge On Premises. - Uruchom ponownie serwer Edge Management za pomocą tego polecenia:
$ /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
Interfejs API zarządzania obsługuje teraz dostęp przez protokół TLS.
Po upewnieniu się, że protokół TLS działa prawidłowo, w tym że działa w interfejsie Edge, możesz wyłączyć dostęp HTTP do interfejsu API zarządzania zgodnie z opisem w następnej sekcji.
Konfigurowanie interfejsu Edge przy użyciu protokołu TLS do uzyskiwania dostępu do interfejsu Edge API
W ramach opisanej powyżej procedury firma Apigee zaleca pozostawienie parametru conf_webserver_http.turn.off=false, aby interfejs użytkownika Edge mógł nadal wysyłać wywołania interfejsu Edge API przez HTTP.
Aby skonfigurować interfejs użytkownika przeglądarki Edge tak, aby te wywołania były wykonywane tylko przez HTTPS:
- Skonfiguruj dostęp TLS do interfejsu API zarządzania zgodnie z instrukcjami podanymi powyżej.
- Po potwierdzeniu, że protokół TLS działa w przypadku interfejsu API zarządzania, otwórz plik /opt/apigee/customer/application/management-server.properties i zmień w nim następującą właściwość:
conf_webserver_http.turn.off=true - Ponownie uruchom serwer zarządzania brzegiem za pomocą polecenia:
$ /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart - Zmień plik /opt/apigee/customer/application/ui.properties, aby ustawić tę właściwość w interfejsie Edge. Jeśli tego pliku nie ma, utwórz go:
conf_apigee_apigee.mgmt.baseurl="https://FQDN:8443/v1"
gdzie FQDN to pełna nazwa domeny zgodnie z adresem serwera zarządzania w certyfikacie, a numer portu to port określony powyżej przez conf_webserver_ssl.port. - Tylko jeśli podczas konfigurowania dostępu TLS do interfejsu API zarządzania powyżej został użyty samodzielnie podpisany certyfikat (niezalecany w środowisku produkcyjnym), dodaj tę właściwość do pliku ui.properties:
conf/application.conf+play.ws.ssl.loose.acceptAnyCertificate=true
W przeciwnym razie interfejs użytkownika Edge odrzuci samodzielnie podpisany certyfikat. - Uruchom ponownie interfejs użytkownika Edge za pomocą tego polecenia:
$ /opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Właściwości TLS serwera zarządzania
W tabeli poniżej znajdziesz wszystkie właściwości TLS/SSL, które możesz ustawić w pliku management-server.properties:
Usługi |
Opis |
---|---|
conf_webserver_http.port=8080 |
Wartość domyślna to 8080. |
conf_webserver_ssl.enabled=false |
Aby włączyć lub wyłączyć TLS/SSL: Gdy TLS/SSL jest włączone (wartość „true”), musisz też ustawić właściwości ssl.port i keystore.path. |
conf_webserver_http.turn.off=true |
Aby włączyć lub wyłączyć połączenia http i https. Jeśli chcesz używać tylko protokołu HTTPS, pozostaw wartość domyślną true. |
conf_webserver_ssl.port=8443 |
Port TLS/SSL. Wymagane, gdy włączony jest protokół TLS/SSL (conf_webserver_ssl.enabled=true). |
conf_webserver_keystore.path=<path> |
Ścieżka do pliku magazynu kluczy. Wymagane, gdy włączony jest protokół TLS/SSL (conf_webserver_ssl.enabled=true). |
conf_webserver_keystore.password= |
Użyj zaciemnionego hasła w tym formacie: OBF:xxxxxxxxxx |
conf_webserver_cert.alias= |
Opcjonalny alias certyfikatu magazynu kluczy |
conf_webserver_keymanager.password= |
Jeśli menedżer kluczy ma hasło, wpisz zaciemnioną wersję hasła w formacie OBF:xxxxxxxxxx |
conf_webserver_trust.all= <false | true> conf_webserver_trust.store.path=<path> conf_webserver_trust.store.password= |
Skonfiguruj ustawienia magazynu zaufania. Określ, czy chcesz akceptować wszystkie certyfikaty TLS/SSL (np. aby akceptować typy niestandardowe). Wartość domyślna to false. Podaj ścieżkę do magazynu zaufania i wpisz zaciemnione hasło magazynu zaufania w tym formacie: OBF:xxxxxxxxxx |
conf_webserver_exclusion.cipher.suites=<CIPHER_SUITE_1 CIPHER_SUITE_2> conf_webserver_include.cipher.suites= |
Wskazać szyfrowanie, które chcesz uwzględnić lub wykluczyć. Jeśli na przykład wykryjesz lukę w zabezpieczeniach w szyfrze, możesz go wykluczyć. Poszczególne szyfry rozdziel spacją. Informacje o zestawach szyfrów i architekturze kryptograficznej znajdziesz w tych artykułach:
http://docs.oracle.com/javase/8/docs/technotes/ |
conf_webserver_ssl.session.cache.size= conf_webserver_ssl.session.timeout= |
Ciągi znaków określające:
|