Konfigurowanie pul zaplecza na potrzeby szyfrowania
Pula zaplecza zawiera serwery implementujące aplikację. Usługa Azure Application Gateway kieruje żądania do tych serwerów i może równoważyć obciążenie ruchem między tymi serwerami.
W portalu wysyłkowym serwery aplikacji w puli zaplecza muszą używać protokołu SSL do szyfrowania danych przekazywanych między usługą Application Gateway a serwerami w puli zaplecza. Usługa Application Gateway używa certyfikatu SSL z kluczem publicznym do szyfrowania danych. Serwery używają odpowiedniego klucza prywatnego, aby odszyfrować dane w miarę odbierania. W tej lekcji dowiesz się, jak utworzyć pulę zaplecza i zainstalować niezbędne certyfikaty w usłudze Application Gateway. Te certyfikaty pomagają chronić wiadomości wysyłane do i z puli backendu.
Szyfrowanie od Application Gateway do puli serwerów zaplecza
Pula zaplecza może odwoływać się do poszczególnych maszyn wirtualnych, zestawu skalowania maszyn wirtualnych, adresów IP rzeczywistych komputerów (lokalnych lub zdalnych) lub usług hostowanych za pośrednictwem usługi Azure App Service. Wszystkie serwery w puli zaplecza powinny być skonfigurowane w taki sam sposób, w tym ich ustawienia zabezpieczeń.
Jeśli ruch kierowany do puli zaplecza jest chroniony za pośrednictwem protokołu SSL, każdy serwer w puli zaplecza musi dostarczyć odpowiedni certyfikat. Do celów testowych można utworzyć certyfikat z podpisem własnym. W środowisku produkcyjnym zawsze należy wygenerować lub kupić certyfikat, który może uwierzytelnić urząd certyfikacji.
Obecnie istnieją dwie wersje usługi Application Gateway: v1 i v2. Mają podobne możliwości, ale mają nieco inne szczegóły implementacji. Wersja 2 zapewnia więcej funkcji i ulepszeń wydajności.
Konfiguracja certyfikatu w usłudze Application Gateway w wersji 1
Usługa Application Gateway w wersji 1 wymaga zainstalowania certyfikatu uwierzytelniania dla serwerów w konfiguracji bramy. Ten certyfikat zawiera klucz publiczny używany przez usługę Application Gateway do szyfrowania komunikatów i uwierzytelniania serwerów. Ten certyfikat można utworzyć, eksportując go z serwera. Serwer aplikacji używa odpowiedniego klucza prywatnego do odszyfrowywania tych komunikatów. Ten klucz prywatny powinien być przechowywany tylko na serwerach aplikacji.
Certyfikat uwierzytelniania można dodać do usługi Application Gateway przy użyciu polecenia az network application-gateway auth-cert create
z poziomu interfejsu wiersza polecenia platformy Azure. Poniższy przykład ilustruje składnię tego polecenia. Certyfikat powinien mieć format CER (oświadczenia, dowodu i rozumowania).
az network application-gateway auth-cert create \
--resource-group <resource group name> \
--gateway-name <application gateway name> \
--name <certificate name> \
--cert-file <path to authentication certificate>
Usługa Application Gateway udostępnia inne polecenia, których można użyć do wyświetlania listy certyfikatów uwierzytelniania i zarządzania nimi. Na przykład:
- Polecenie
az network application-gateway auth-cert list
pokazuje zainstalowane certyfikaty. - Aby zmienić certyfikat, możesz użyć polecenia
az network application-gateway auth-cert update
. - Polecenie
az network application-gateway auth-cert delete
usuwa certyfikat.
Konfiguracja certyfikatu w usłudze Application Gateway w wersji 2
Usługa Application Gateway w wersji 2 ma nieco inne wymagania dotyczące uwierzytelniania. Należy podać certyfikat dla urzędu certyfikacji, który uwierzytelnił certyfikat SSL dla serwerów w puli zaplecza. Ten certyfikat należy dodać jako zaufany certyfikat główny do usługi Application Gateway. Użyj polecenia az network application-gateway root-cert create
z poziomu interfejsu wiersza polecenia platformy Azure.
az network application-gateway root-cert create \
--resource-group <resource group name> \
--gateway-name <application gateway name> \
--name <certificate name> \
--cert-file <path to trusted CA certificate>
Jeśli serwery korzystają z certyfikatu z podpisem własnym, dodaj ten certyfikat jako zaufany certyfikat główny w usłudze Application Gateway.
Ustawienia protokołu HTTP
Usługa Application Gateway używa reguły , aby określić sposób kierowania komunikatów odbieranych na porcie przychodzącym do serwerów w puli zaplecza. Jeśli serwery korzystają z protokołu SSL, należy skonfigurować regułę, aby wskazać:
- Serwery oczekują ruchu za pośrednictwem protokołu HTTPS.
- Który certyfikat używany do szyfrowania ruchu i uwierzytelniania połączenia z serwerem.
Tę informację o konfiguracji definiuje się przy użyciu ustawienia HTTP .
Ustawienie HTTP można zdefiniować przy użyciu polecenia az network application-gateway http-settings create
w interfejsie wiersza polecenia platformy Azure. Poniższy przykład przedstawia składnię tworzenia ustawienia, które kieruje ruch przy użyciu protokołu HTTPS do portu 443 na serwerach w puli zaplecza. Jeśli używasz usługi Application Gateway w wersji 1, parametr --auth-certs
jest nazwą certyfikatu uwierzytelniania dodanego wcześniej do usługi Application Gateway.
az network application-gateway http-settings create \
--resource-group <resource group name> \
--gateway-name <application gateway name> \
--name <HTTPS settings name> \
--port 443 \
--protocol Https \
--auth-certs <certificate name>
Jeśli używasz usługi Application Gateway w wersji 2, pomiń parametr --auth-certs
. Usługa Application Gateway kontaktuje się z serwerem zaplecza. Weryfikuje autentyczność certyfikatu przedstawionego przez serwer względem urzędów certyfikacji określonych przez listę zaufanych certyfikatów głównych. Jeśli nie ma dopasowania, usługa Application Gateway nie połączy się z serwerem zaplecza i zakończy się niepowodzeniem z powodu błędu HTTP 502 (Błędna brama).