Domyślnie dostęp do interfejsu Edge uzyskujesz przez HTTP, używając adresu IP Węzeł serwera zarządzania i port 9000. Na przykład:
http://ms_IP:9000
Możesz też skonfigurować dostęp TLS do interfejsu Edge, aby mieć do niego dostęp w formularz:
https://ms_IP:9443
W tym przykładzie skonfigurujesz dostęp TLS tak, aby używał portu 9443. Ten numer portu nie jest jednak wymagane przez serwer Edge – możesz skonfigurować serwer zarządzania tak, aby używał innych wartości portów. Jedyna wymaganiem jest, aby zapora sieciowa zezwalała na ruch przez określony port.
Sprawdź, czy port TLS jest otwarty
Procedura opisana w tej sekcji pozwala skonfigurować protokół TLS tak, aby używał portu 9443 na serwerze zarządzania. Niezależnie od używanego portu musisz sprawdzić, czy port jest otwarty w sekcji zarządzania Serwer Możesz na przykład otworzyć je za pomocą tego polecenia:
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 9443 -j ACCEPT --verbose
Konfigurowanie TLS
Aby skonfigurować dostęp TLS do interfejsu zarządzania, wykonaj czynności opisane poniżej:
- Wygeneruj plik JKS magazynu kluczy zawierający certyfikat TLS, klucz prywatny i kopię go do węzła serwera zarządzania. Więcej informacji znajdziesz w artykule Konfigurowanie TLS/SSL dla usługi Edge On.
- Uruchom to polecenie, aby skonfigurować TLS:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl
- Wpisz numer portu HTTPS, na przykład 9443.
- Określ, czy chcesz wyłączyć dostęp HTTP do interfejsu zarządzania. Domyślnie funkcja zarządzania Interfejs użytkownika jest dostępny przez HTTP na porcie 9000.
- Wpisz algorytm magazynu kluczy. Wartość domyślna to JKS.
- Wpisz ścieżkę bezwzględną do pliku JKS magazynu kluczy.
Skrypt kopiuje plik do katalogu
/opt/apigee/customer/conf
w węzła serwera zarządzania i zmienia własność pliku na „apigee”. - Wpisz hasło magazynu kluczy zwykłego tekstu.
- Następnie skrypt ponownie uruchomi interfejs zarządzania brzegiem. Po ponownym uruchomieniu interfejs zarządzania
obsługuje dostęp przez TLS.
Możesz zobaczyć te ustawienia w aplikacji
/opt/apigee/etc/edge-ui.d/SSL.sh
.
Używanie pliku konfiguracyjnego do konfigurowania TLS
Zamiast wykonywania powyższej procedury możesz przekazać do polecenia plik konfiguracyjny kroku 2 procedury. Użyj tej metody, jeśli chcesz ustaw opcjonalne właściwości TLS.
Aby użyć pliku konfiguracji, utwórz nowy plik i dodaj te właściwości:
HTTPSPORT=9443 DISABLE_HTTP=y KEY_ALGO=JKS KEY_FILE_PATH=/opt/apigee/customer/application/mykeystore.jks KEY_PASS=clearTextKeystorePWord
Zapisz plik w lokalnym katalogu pod dowolną nazwą. Następnie użyj tego polecenia, aby skonfigurować TLS:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl -f configFile
gdzie configFile to pełna ścieżka do zapisanego pliku.
Konfigurowanie interfejsu Edge przy korzystaniu z protokołu TLS kończy się w systemie równoważenia obciążenia
Jeśli masz system równoważenia obciążenia, który przekazuje żądania do interfejsu Edge, możesz wybrać zakończyć połączenie TLS w systemie równoważenia obciążenia, a następnie ustawić przekierowanie do interfejsu Edge przez HTTP. Ta konfiguracja jest obsługiwana, ale musisz skonfigurować systemu równoważenia obciążenia i interfejsu Edge.
Dodatkowa konfiguracja jest wymagana, gdy interfejs Edge wysyła użytkownikom e-maile w celu określenia ich po utworzeniu użytkownika lub po wysłaniu przez niego prośby o zresetowanie utraconego hasła. Ten e-mail zawiera adres URL, który użytkownik wybiera, aby ustawić lub zresetować hasło. Domyślnie, jeśli interfejs Edge nie jest skonfigurowany do używania TLS, adres URL w wygenerowanym e-mailu używa protokołu HTTP, a nie HTTPS. Musisz skonfigurować system równoważenia obciążenia i interfejs użytkownika Edge tak, aby generowały adres e-mail wykorzystujący HTTPS.
Aby skonfigurować system równoważenia obciążenia, upewnij się, że w przypadku przekazywanych żądań ustawia ten nagłówek w interfejsie Edge:
X-Forwarded-Proto: https
Aby skonfigurować interfejs użytkownika Edge:
- Otwórz:
/opt/apigee/customer/application/ui.properties
w edytorze. Jeśli plik nie istnieje, utwórz go:vi /opt/apigee/customer/application/ui.properties
- Ustaw tę właściwość w
ui.properties
:conf/application.conf+trustxforwarded=true
- Zapisz zmiany na koncie
ui.properties
. - Ponownie uruchom interfejs Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Ustawianie opcjonalnych właściwości TLS
Interfejs Edge obsługuje opcjonalne właściwości konfiguracji TLS, za pomocą których można ustawić:
- Domyślny protokół TLS
- Lista obsługiwanych protokołów TLS
- Obsługiwane algorytmy TLS
- Obsługiwane mechanizmy szyfrowania TLS
Te opcjonalne parametry są dostępne tylko wtedy, gdy ustawisz tę właściwość konfiguracji w pliku konfiguracyjnym, jak opisano w Konfigurowanie TLS przy użyciu pliku konfiguracji:
TLS_CONFIGURE=y
Te właściwości są opisane w poniższej tabeli:
Właściwość | Opis |
---|---|
TLS_PROTOCOL
|
Określa domyślny protokół TLS dla interfejsu Edge. Domyślnie jest to TLS 1.2. Prawidłowe wartości to TLSv1.2, TLSv1.1 i TLSv1. |
TLS_ENABLED_PROTOCOL
|
Definiuje listę włączonych protokołów w postaci tablicy rozdzielanej przecinkami. Na przykład: TLS_ENABLED_PROTOCOL=[\"TLSv1.2\", \"TLSv1.1\", \"TLSv1\"] Zwróć uwagę, że musisz zmienić znaczenie elementu „ znaku.
Domyślnie włączone są wszystkie protokoły. |
TLS_DISABLED_ALGO
|
Definiuje wyłączone zestawy szyfrów i można go też używać do zapobiegania wykorzystywaniu małych kluczy używany do uzgadniania połączenia TLS. Nie ma wartości domyślnej. Wartości przekazywane do funkcji
TLS_DISABLED_ALGO=EC\ keySize\ <\ 160,RSA\ keySize\ <\ 2048 |
TLS_ENABLED_CIPHERS
|
Definiuje listę dostępnych mechanizmów szyfrowania TLS w postaci tablicy rozdzielanej przecinkami. Na przykład: TLS_ENABLED_CIPHERS=[\"TLS_DHE_RSA_WITH_AES_128_CBC_SHA\", \"TLS_DHE_DSS_WITH_AES_128_CBC_SHA\"] Zwróć uwagę, że musisz zmienić znaczenie elementu „ znaku.
Domyślna lista włączonych mechanizmów szyfrowania to: "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", "TLS_RSA_WITH_AES_256_CBC_SHA", "TLS_RSA_WITH_AES_128_CBC_SHA", "SSL_RSA_WITH_RC4_128_SHA", "SSL_RSA_WITH_RC4_128_MD5", "TLS_EMPTY_RENEGOTIATION_INFO_SCSV" Znajdź listę dostępnych mechanizmów szyfrowania tutaj. |
Wyłączanie protokołów TLS
Aby wyłączyć protokoły TLS, musisz zmodyfikować plik konfiguracyjny zgodnie z opisem w sekcji Przy konfigurowaniu protokołu TLS za pomocą pliku konfiguracji w następujący sposób:
- Otwórz plik konfiguracyjny w edytorze.
- Aby wyłączyć jeden protokół TLS, na przykład TLSv1.0, dodaj:
do pliku konfiguracyjnego:
TLS_CONFIGURE=y TLS_DISABLED_ALGO="tlsv1"
Aby wyłączyć wiele protokołów, na przykład TLSv1.0 i TLSv1.1: do pliku konfiguracyjnego dodaj:
TLS_CONFIGURE=y TLS_DISABLED_ALGO="tlsv1, tlsv1.1"
- Zapisz zmiany w pliku konfiguracji.
- Uruchom to polecenie, aby skonfigurować TLS:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl -f configFile
gdzie configFile to pełna ścieżka do pliku konfiguracyjnego.
- Ponownie uruchom interfejs Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Używaj bezpiecznych plików cookie
Apigee Edge dla Private Cloud obsługuje dodawanie flagi secure
do nagłówka Set-Cookie
instancji
z interfejsu Edge. Jeśli ta flaga jest obecna, plik cookie może być wysyłany tylko
Kanały z włączonym protokołem TLS. Jeśli go nie ma, plik cookie może być wysłany przez dowolny kanał, niezależnie od tego,
czy jest ona bezpieczna.
Pliki cookie bez flagi secure
mogą potencjalnie umożliwiać osobie przeprowadzającej atak przechwytywanie
ponownie użyć pliku cookie lub przejąć aktywną sesję. Dlatego warto włączyć tę opcję
.
Aby ustawić flagę secure
dotyczącą plików cookie interfejsu Edge:
- Otwórz ten plik w edytorze tekstu:
/opt/apigee/customer/application/ui.properties
Jeśli plik nie istnieje, utwórz go.
- Ustaw właściwość
conf_application_session.secure
natrue
wui.properties
tak jak w tym przykładzie:conf_application_session.secure=true
- Zapisz zmiany.
- Ponownie uruchom interfejs Edge przy użyciu narzędzia
apigee-serice
zgodnie z przykładem poniżej programy:/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Aby potwierdzić, że zmiana działa, sprawdź nagłówki odpowiedzi w interfejsie Edge za pomocą polecenia
narzędzie takie jak curl
; np.:
curl -i -v https://edge_UI_URL
Nagłówek powinien zawierać wiersz podobny do tego:
Set-Cookie: secure; ...
Wyłączenie TLS w interfejsie Edge
Aby wyłączyć TLS w interfejsie Edge, użyj tego polecenia:
/opt/apigee/apigee-service/bin/apigee-service edge-ui disable-ssl