Konfigurieren Sie eine Responder-Aktion
Nachdem Sie die Responder-Funktion aktiviert haben, müssen Sie eine oder mehrere Aktionen für die Bearbeitung von Anfragen konfigurieren. Der Responder unterstützt die folgenden Arten von Aktionen:
-
Antworte mit. Sendet die durch den Target-Ausdruck definierte Antwort, ohne die Anforderung an einen Webserver weiterzuleiten. (Die NetScaler-Appliance ersetzt und fungiert als Webserver.) Verwenden Sie diese Art von Aktion, um eine einfache HTML-basierte Antwort manuell zu definieren. Normalerweise besteht der Text für eine Aktion “Antworten mit” aus einem Webserver-Fehlercode und einer kurzen HTML-Seite.
-
Antworten Sie mit SQL OK. Sendet die angegebene SQL OK-Antwort, die durch den Target-Ausdruck definiert ist. Verwenden Sie diese Art von Aktion, um eine SQL-OK-Antwort auf eine SQL-Abfrage zu senden.
-
Antworten Sie mit SQL-Fehler. Sendet die angegebene SQL-Fehler-Antwort, die durch den Target-Ausdruck definiert ist Verwenden Sie diese Art von Aktion, um eine SQL-Fehlerantwort auf eine SQL-Abfrage zu senden.
-
Antworten Sie mit der HTML-Seite. Sendet die angegebene HTML-Seite als Antwort. Sie können aus einer Dropdownliste von HTML-Seiten wählen, die zuvor hochgeladen wurden, oder eine neue HTML-Seite hochladen. Verwenden Sie diese Art von Aktion, um eine importierte HTML-Seite als Antwort zu senden. Die Appliance antwortet mit einem benutzerdefinierten Header in der Responsewithhtmlpage-Responder-Aktion. Sie können bis zu acht benutzerdefinierte Header konfigurieren. Die importierte HTML-Seite wird im Verzeichnis
/var/download/responder
gespeichert. -
Umleitung. Leitet die Anfrage an eine andere Webseite oder einen anderen Webserver um. Eine Umleitungsaktion kann Anfragen, die ursprünglich an eine “Dummy” -Website gesendet wurden, die in DNS existiert, für die es jedoch keinen tatsächlichen Webserver gibt, an eine tatsächliche Website umleiten. Es kann auch Suchanfragen an eine entsprechende URL umleiten. Normalerweise besteht das Umleitungsziel für eine Umleitungsaktion aus einer vollständigen URL.
Konfigurieren Sie eine Responder-Aktion mithilfe der CLI:
Zeigt die aktuellen Einstellungen für die angegebene Responder Action an. Wenn kein Aktionsname angegeben wird, zeigen Sie eine Liste aller derzeit auf der NetScaler-Appliance konfigurierten Responderaktionen mit abgekürzten Einstellungen an.
Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um eine Responder Action zu konfigurieren und die Konfiguration zu überprüfen:
add responder action <name> <type> <target>
show responder action
Parameter:
-
Name. Name der Responder Action. Maximale Länge: 127
-
Typ. Art der Responder Action. Es kann sein: (respondwith).
-
target. Ein Ausdruck, der angibt, womit geantwortet werden soll.
-
htmlpage. Option, die angibt, mit einer HTML-Seite zu antworten.
-
hits. Die Häufigkeit, mit der die Maßnahme ergriffen wurde.
-
referenceCount. Die Anzahl der Verweise auf die Aktion.
-
undefHits. Die Häufigkeit, mit der die Aktion zu UNDEF geführt hat.
-
comment. Jede Art von Informationen über diese Responder Action.
-
builtin. Markierung, um festzustellen, ob die Responder-Aktion integriert ist oder nicht.
Beispiel:
Create a responder action that displays a “Not Found” error page for URLs that do not exist:
> add responder action act404Error respondWith '"HTTP/1.1 404 Not Found\r\n\r\n"+ HTTP.REQ.URL.HTTP_URL_SAFE + " does not exist on the web server."'
Done
> show responder action
1) Name: act404Error
Operation: respondwith
Target: "HTTP/1.1 404 Not Found" + HTTP.REQ.URL.HTTP_URL_SAFE + " does not exist on the web server."
Hits: 0
Undef Hits: 0
Action Reference Count: 0
Done
Create a responder action that displays a “Not Found” error page for URLs that do not exist:
add responder action act404Error respondWith '"HTTP/1.1 404 Not Found\r\n\r\n"+ HTTP.REQ.URL.HTTP_URL_SAFE + " does not exist on the web server."'
Done
> show responder action
1) Name: act404Error
Operation: respondwith
Target: "HTTP/1.1 404 Not Found" + HTTP.REQ.URL.HTTP_URL_SAFE + " does not exist on the web server."
Hits: 0
Undef Hits: 0
Action Reference Count: 0
Done
<!--NeedCopy-->
Ändern Sie eine vorhandene Responder-Aktion mithilfe der CLI:
Geben Sie an der Eingabeaufforderung den folgenden Befehl ein, um eine vorhandene Responder Action zu ändern und die Konfiguration zu überprüfen:
set responder action <name> -target <string>
show responder action
Beispiel:
set responder action act404Error -target '"HTTP/1.1 404 Not Found\r\n\r\n"+ HTTP.REQ.URL.HTTP_URL_SAFE + " does not exist on the web server."'
Done
> show responder action
1) Name: act404Error
Operation: respondwith
Target: "HTTP/1.1 404 Not Found" + HTTP.REQ.URL.HTTP_URL_SAFE + " does not exist on the web server."
Hits: 0
Undef Hits: 0
Action Reference Count: 0
Done
<!--NeedCopy-->
Entfernen Sie eine Responder-Aktion mithilfe der CLI:
Geben Sie an der Eingabeaufforderung den folgenden Befehl ein, um eine Responder Action zu entfernen und die Konfiguration zu überprüfen:
rm responder action <name>
show responder action
Beispiel:
rm responder action act404Error
Done
> show responder action
Done
<!--NeedCopy-->
Fügen Sie mithilfe der CLI benutzerdefinierte Header als Antwort mit der Responder-Aktion responsewithhtmlpage hinzu:
Eine NetScaler Appliance kann jetzt mit benutzerdefinierten Headern in der Responsewithhtmlpage-Responder-Aktion antworten. Sie können bis zu acht benutzerdefinierte Header konfigurieren. Zuvor reagierte die Appliance nur mit den statischen Headern Content-type:text/html
und Content-Length:<value>
.
Hinweis:
In der benutzerdefinierten Header-Konfiguration können Sie auch den Header-Wert “Content-Type” überschreiben.
Geben Sie an der Eingabeaufforderung den folgenden Befehl ein:
add responder action <name> <type> (<target> | <htmlpage>) [-comment <string>] [-responseStatusCode <positive_integer>] [-reasonPhrase <expression>] [-headers <name(value)> ...]
Hierbei gilt:
Name: Name für die Responder-Aktion. Muss mit einem Buchstaben, einer Zahl oder dem Unterstrich (_) beginnen und darf nur Buchstaben, Zahlen und den Bindestrich (-), Punkt (.) Hash (#), Leerzeichen (), bei (@), gleich (=), Doppelpunkt (:) und Unterstriche enthalten. Kann geändert werden, nachdem die Responder Policy hinzugefügt wurde.
Typ: Art der Responder-Aktion. Verfügbare Einstellungen funktionieren wie folgt:
-
respondwith
<target>
- Beantworten Sie die Anfrage mit dem als Ziel angegebenen Ausdruck. - respondwithhtmlpage — Beantworten Sie die Anfrage mit dem hochgeladenen HTML-Seitenobjekt, das als Ziel angegeben ist.
- redirect — Leitet die Anfrage an die als Ziel angegebene URL weiter.
- sqlresponse_ok - Sendet eine SQL OK-Antwort.
-
sqlresponse_error — Sendet eine SQL-FEHLER-Antwort. Dies ist ein obligatorisches Argument. Mögliche Werte:
noop
,respondwith
,redirect
,respondwithhtmlpage
,sqlresponse_ok
,sqlresponse_error
Ziel: Ausdruck, der angibt, womit geantwortet werden soll. Typischerweise eine URL für Umleitungsrichtlinien oder ein Standardsyntaxausdruck. Zusätzlich zu den Standardsyntaxausdrücken von NetScaler, die auf Informationen in der Anfrage verweisen, kann ein String Builder-Ausdruck Text und HTML sowie einfache Escape-Codes enthalten, die neue Zeilen und Absätze definieren. Setzen Sie jedes String Builder-Ausdruckselement (entweder einen NetScaler-Standardsyntaxausdruck oder eine Zeichenfolge) in doppelte Anführungszeichen. Verwenden Sie das Pluszeichen (+), um die Elemente zu verbinden.
htmlpage: Für respondwithhtmlpage
-Richtlinien der Name des HTML-Seitenobjekts, das als Antwort verwendet werden soll. Sie müssen zuerst das Seitenobjekt importieren. Maximale Länge: 31
Kommentar: Jegliche Art von Informationen zu dieser Responder-Aktion. Maximale Länge: 255
responseStatusCode: HTTP-Antwortstatuscode, zum Beispiel 200, 302, 404 usw. Der
Standardwert für den Typ redirect action
ist 302 und für respondwithhtmlpage
ist 200 Mindestwert: 100 Maximalwert: 599
ReasonPhrase: Ausdruck, der die Grundphrase der HTTP-Antwort angibt. Die Grundphrase kann ein Zeichenfolgenliteral mit Anführungszeichen oder ein PI-Ausdruck sein. Beispiel: "Invalid URL: " + HTTP.REQ.URL Maximum Length: 8191
Header: Ein oder mehrere Header, die in die HTTP-Antwort eingefügt werden sollen. Jeder Header wird als "name(expr),"
angegeben, wobei expr ein Ausdruck ist, der zur Laufzeit ausgewertet wird, um den Wert für den benannten Header bereitzustellen. Sie können maximal acht Header für eine Responder Action konfigurieren.
Konfigurieren Sie eine Responder-Aktion mithilfe der GUI:
- Navigieren Sie zu AppExpert > Responder > Aktionen .
- Führen Sie im Detailbereich eine der folgenden Aktionen aus:
- Um eine Aktion zu erstellen, klicken Sie auf Hinzufügen.
- Um eine bestehende Aktion zu ändern, wählen Sie die Aktion aus und klicken dann auf Öffnen.
- Klicken Sie auf Erstellen oder OK, je nachdem, ob Sie eine Aktion erstellen oder eine vorhandene Aktion ändern.
- Klicken Sie auf Schließen. In der Statusleiste wird eine Meldung angezeigt, die besagt, dass das Feature aktiviert wurde.
- Um eine Responder Action zu löschen, wählen Sie die Aktion aus und klicken dann auf Entfernen. In der Statusleiste wird eine Meldung angezeigt, die besagt, dass die Funktion deaktiviert wurde.
Hinzufügen eines Ausdrucks mithilfe des Dialogfelds Ausdruck hinzufügen
-
Klicken Sie im Dialogfeld Responder-Aktion erstellen oder Responder-Aktion konfigurieren auf Hinzufügen.
- Wählen Sie im Dialogfeld Ausdruck hinzufügen im ersten Listenfeld den ersten Begriff für Ihren Ausdruck aus.
- HTTP. Das HTTP-Protokoll. Wählen Sie diese Option, wenn Sie einen Aspekt der Anforderung untersuchen möchten, der sich auf das HTTP-Protokoll bezieht.
- SYS. Eine oder mehrere geschützte Websites. Wählen Sie diese Option, wenn Sie einen Aspekt der Anfrage untersuchen möchten, der sich auf den Empfänger der Anfrage bezieht.
- CLIENT. Der Computer, der die Anfrage gesendet hat. Wählen Sie diese Option aus, wenn Sie einen Aspekt des Absenders der Anfrage untersuchen möchten.
- ANALYTICS. Die mit der Anfrage verbundenen Analysedaten. Wählen Sie diese Option, wenn Sie Anforderungsmetadaten untersuchen möchten.
- SIP. Eine SIP-Anfrage. Wählen Sie diese Option, wenn Sie einen Aspekt einer SIP-Anfrage untersuchen möchten. Wenn Sie Ihre Auswahl treffen, werden im Listenfeld ganz rechts die entsprechenden Begriffe für den nächsten Teil Ihres Ausdrucks aufgeführt.
- Wählen Sie im zweiten Listenfeld den zweiten Begriff für Ihren Ausdruck aus. Die Auswahl hängt davon ab, welche Wahl Sie im vorherigen Schritt getroffen haben, und sind dem Kontext angemessen. Nachdem Sie Ihre zweite Wahl getroffen haben, wird im Hilfefenster unterhalb des Fensters “Ausdruck konstruieren” (das leer war) eine Hilfe zur Beschreibung des Zwecks und der Verwendung des gerade gewählten Begriffs angezeigt.
- Fahren Sie fort, Begriffe aus den Listenfeldern auszuwählen, die rechts neben dem vorherigen Listenfeld angezeigt werden, oder geben Sie Zeichenfolgen oder Zahlen in die Textfelder ein, die Sie zur Eingabe eines Werts auffordern, bis der Ausdruck beendet ist.
Konfigurieren der globalen HTTP-Aktion
Sie können die globale HTTP-Aktion so konfigurieren, dass eine Responder Action aufgerufen wird, wenn eine HTTP-Anforderung ein Timeout hat. Um diese Funktion zu konfigurieren, müssen Sie zuerst die Responder Action erstellen, die Sie aufrufen möchten. Konfigurieren Sie dann die globale HTTP-Timeout-Aktion, um auf ein Timeout mit dieser Responder-Aktion zu reagieren.
Konfigurieren Sie die globale HTTP-Aktion mithilfe der CLI:
Geben Sie an der Eingabeaufforderung den folgenden Befehl ein:
set ns httpProfile -reqTimeoutAction <responder action name>
save ns config
Ersetzen Sie durch den Namen der Responder-Aktion. <responder action name>
Einen HTML-Seitenimport konfigurieren
Wenn eine NetScaler Appliance mit einer benutzerdefinierten Nachricht antwortet, können wir mit einer HTML-Datei antworten. Sie können die Datei mit dem Befehl “import responder htmlpage
” importieren und diese Datei dann im Befehl add responder action <act name> respondwithhtmlpage <file name>
verwenden. Sie können die Datei auch über die NetScaler GUI importieren. Sie können eine gewünschte HTML-Seite in den Appliance-Ordner importieren und die Seite während der Laufzeit des Responder hochladen.
Importieren Sie eine HTML-Seite mithilfe der CLI
Geben Sie in der Befehlszeile Folgendes ein:
import responder htmlpage [<src>] <name> [-comment <string>] [-overwrite][-CAcertFile <string>]
Beispiel:
import responder htmlpage http://www.example.com/page.html my-responder-page -CAcertFile my_root_ca_cert
Wo,
Ein CA-Zertifikat wird zur Überprüfung des Client-Zertifikats verwendet. Das Zertifikat muss mit dem CLI-Befehl “import ssl certfile
” oder einem gleichwertigen Befehl über eine API oder GUI importiert werden. Wenn kein Zertifikatsname konfiguriert ist, werden standardmäßige Root-CA-Zertifikate für die Zertifikatsüberprüfung verwendet.
Importieren einer HTML-Seite aus dem lokalen Dateisystem
Sie können auch eine HTML-Seite aus dem lokalen Dateisystem importieren. Um zu importieren, kopieren Sie die Datei mit SCP oder auf andere Weise in das Verzeichnis /var/tmp/ und importieren Sie sie dann mit dem Schlüsselwort “local:”. Beispiel:
import responder htmlpage local:my_local_file.html my_local_file
Wobei my_local_file.html
im Verzeichnis “/var/tmp/” ist.
Beachten Sie
, dass das Schlüsselwort “local:” nur die Datei im Verzeichnis “/var/tmp/” durchsucht. Bei nicht standardmäßigen Partitionen müssen Sie die Datei in das partitionsspezifische tmp-Verzeichnis kopieren, das sich in
/var/partitions/<partition name>/tmp
befindet.
Importieren Sie eine HTML-Seite mithilfe der GUI
- Navigieren Sie zu AppExpert > Responder > HTML-Seiten-Importe.
- Klicken Sie im Detailbereich Responder HTML Imports auf Hinzufügen.
-
Legen Sie auf der Seite “Objekt importieren” von HTML-Seiten die folgenden Parameter fest:
- Name. Name der HTML-Seite.
- Importieren von. Importiert aus Datei, Text oder Text.
- URL. Wählen Sie aus, um den URL-Speicherort der HTML-Datei einzugeben.
- Datei. Wählen Sie die HTML-Datei aus dem Appliance-Verzeichnis aus.
- Text. Markieren Sie die HTML-Datei als Text.
- Klicken Sie auf Weiter.
- Überprüfen Sie die HTML-Seite des Responder.
-
Klicken Sie auf Fertig.
Um eine HTML-Seite zu bearbeiten, können Sie eine Datei auswählen und in der Dropdownliste Aktion auswählen auf Responder-HTML-Seitendatei bearbeiten klicken.