ADC

So leiten Sie eine HTTP-Anfrage mithilfe des Responders an HTTPS um

In diesem Artikel wird erklärt, wie Sie die Responder-Funktion mit einem Lastausgleich für virtuelle Server-IP-Adressen konfigurieren und Clientanfragen von HTTP auf HTTPS umleiten.

Stellen Sie sich ein Szenario vor, in dem ein Benutzer versuchen könnte, auf eine sichere Website zuzugreifen, indem er eine HTTP-Anfrage sendet. Anstatt die Anfrage zu löschen, möchten Sie die Anfrage möglicherweise auf eine sichere Website umleiten. Sie können die Responder-Funktion verwenden, um die Anfrage an die sichere Website weiterzuleiten, ohne den Pfad und die URL-Abfrage zu ändern, auf die der Benutzer zuzugreifen versucht.

Wie der NetScaler-Responder eine Anfrage von HTTP zu HTTPS umleitet

Die folgende Abbildung zeigt Schritt für Schritt, wie die Appliance eine Anfrage umleitet.

Responder, der eine Anfrage umleitet

Gehen Sie wie folgt vor, um die Responder-Funktion zusammen mit den Load Balancing-VIP-Adressen einer NetScaler-Appliance so zu konfigurieren, dass Clientanfragen von HTTP zu HTTPS umgeleitet werden.

Aktivieren Sie die Responder-Funktion auf der Appliance

Um die Responder-Funktion auf der Appliance zu aktivieren, navigieren Sie zu System > Einstellungen > Erweiterte Funktionen konfigurieren und wählen Sie Responder aus.

Erstellen Sie eine Responder-Aktion

Gehen Sie wie folgt vor, um eine Responder-Aktion zu erstellen:

  1. Navigieren Sie zu AppExpert > Responder > Actions und klicken Sie auf Hinzufügen.
  2. Geben Sie im Feld Name einen entsprechenden Namen an, z. B. http_to_https_actn.
  3. Wählen Sieals Typ Umleitung aus.
  4. Geben Sie in das Feld Ausdruck den folgenden Ausdruck ein:

    "https://" + HTTP.REQ.HOSTNAME.HTTP_URL_SAFE + HTTP.REQ.URL.PATH_AND_QUERY.HTTP_URL_SAFE.

  5. Klicken Sie auf Erstellen.

Responder Policy erstellen

Gehen Sie wie folgt vor, um eine Responder-Richtlinie zu erstellen:

  1. Navigieren Sie zu AppExpert > Responder > Richtlinien und klicken Sie auf Hinzufügen.
  2. Geben Sie im Feld Name einen entsprechenden Namen an, z. B. http_to_https_pol.
  3. **Wählen Sie in der Aktionsliste den Aktionsnamen aus, den Sie erstellt haben.
  4. Wählen Sie in der Liste Undefinierte Aktion die Option RESET aus.
  5. Geben Sie den Ausdruck HTTP.REQ.IS_VALID in das Feld Ausdruck ein, wie im folgenden Screenshot gezeigt.

Responder-Richtlinie erstellen

Erstellen Sie einen Monitor

Gehen Sie wie folgt vor, um einen Monitor zu erstellen, dessen Status immer mit UP markiert ist:

  1. Navigieren Sie zu Traffic Management > Load Balancing > Monitore und klicken Sie auf Hinzufügen .
  2. Geben Sie im Feld Name einen entsprechenden Namen an, z. B. localhost_ping.
  3. Geben Sie im Feld Ziel-IP 127.0.0.1 als IP-Adresse an.

Monitor konfigurieren

Einen Dienst erstellen

Gehen Sie wie folgt vor, um einen Dienst zu erstellen:

  1. Navigieren Sie zu Load Balancing > Services und klicken Sie auf Hinzufügen.
  2. Geben Sie im Feld Name einen entsprechenden Namen ein, z. B. Always_Up_Service.
  3. Geben Sie im Feld Server eine nicht existierende IP-Adresse an.

  4. Geben Sie 80 in das Feld Port ein.
  5. Fügen Sie den erstellten Monitor aus der Liste Verfügbare Monitore hinzu.

Erstellen Sie einen virtuellen Load Balancing-Server

  1. Navigieren Sie zu Load Balancing > Services und klicken Sie dann auf Hinzufügen .
  2. Geben Sie im Feld Name einen entsprechenden Namen ein.
  3. Geben Sie die IP-Adresse der Website in das Feld IP-Adresse ein.
  4. **Wählen Sie HTTP aus der Protokollliste aus.
  5. Geben Sie 80 in das Feld Port ein.
  6. Klicken Sie auf die Registerkarte Richtlinien.
  7. Binden Sie die Responder-Richtlinie, die Sie erstellt haben, an die HTTP Load Balancing-VIP-Adresse der Website.
  8. Erstellen Sie einen sicheren virtuellen Load Balancing-Server mit der IP-Adresse der Website und dem Port 443.

Führen Sie die folgenden Befehle aus, um über die Befehlszeilenschnittstelle der Appliance eine Konfiguration zu erstellen, die der vorherigen Prozedur ähnelt:

enable ns feature responder
add responder action http_to_https_actn redirect ""https://" + http.req.hostname.HTTP_URL_SAFE + http.REQ.URL.PATH_AND_QUERY.HTTP_URL_SAFE"
add responder policy http_to_https_pol HTTP.REQ.IS_VALID http_to_https_actn RESET
add lb monitor localhost_ping PING -LRTM ENABLED -destIP 127.0.0.1
add service Always_UP_service 1.2.3.4 HTTP 80 -gslb NONE -maxClient 0 -maxReq 0 -cip ENABLED dummy -usip NO -sp OFF -cltTimeout 180 -svrTimeout 360 -CKA NO -TCPB NO -CMP YES
bind lb monitor localhost_ping Always_UP_service
add lb vserver http_site.com HTTP 10.217.96.238 80 -persistenceType COOKIEINSERT -timeout 0 -cltTimeout 180
bind lb vserver http_site.com Always_UP_service
bind lb vserver http_site.com -policyName http_to_https_pol -priority 1 -gotoPriorityExpression END
<!--NeedCopy-->

Hinweise:

  • Der Status des virtuellen Load Balancing Redirect-Servers mit Port 80 muss AKTIV sein, damit die Umleitung funktioniert.
  • Webbrowser leiten möglicherweise nicht korrekt um, wenn der virtuelle HTTPS-Server nicht aktiv ist.
  • Dieses Umleitungs-Setup ermöglicht Situationen, in denen mehrere Domains an dieselbe IP-Adresse gebunden sind.
  • Wenn der Client eine ungültige HTTP-Anforderung an den virtuellen Umleitungsserver sendet, sendet die Appliance einen RESET Meldungscode.
So leiten Sie eine HTTP-Anfrage mithilfe des Responders an HTTPS um