- Neuer Abschnitt: Import persönlicher Zertifikate
- Verbindungsorientierte Microsoft-Authentifizierung (NTLM) mit ngnix möglich
- Beschreibung der Funktion: Zertifikatsbasierte Authentifizierung aktivieren
- Wahl der Engine zwischen der bekannten squid-Engine und der neuen ngnix-Engine
- Server einer Servergruppe lassen sich bearbeiten
- Wo erforderlich werden nur Zertifikate mit privatem Schlüssel-Teil angeboten
notempty
- Mit v12.7.0 kann nginx als Reverse Proxy Engine ausgewählt werden
- Ein Wechsel der Engine zieht höchst wahrscheinlich eine Anpassung der Konfiguration nach sich, da jede Engine verschiedene Features unterstützt.
- Nach der Umstellung werden nicht-unterstütze Einstellungen markiert
Verwendungszweck
Mit einem Reverse-Proxy kann man aus dem Internet heraus, den Zugriff auf die "internen" Webserver steuern. Im Gegensatz zu einer Portweiterleitung, können über den Reverse-Proxy dedizierte Filterregeln erstellt werden. Zudem können, bei nur einer öffentlichen IP-Adresse, mehrere interne Webserver anhand der Domäne angesprochen werden.
Ein weiteres Highlight bietet das Load-Balancing. Server können zu Gruppen zusammen gefasst werden, auf die die Anfragen dann mit dem gewählten Algorithmus (z.B. Round-Robin) verteilt werden.
Voraussetzungen
Für die Beispielkonfiguration werden folgende Werte angenommen:
- Webserver mit der privaten IP: 10.1.0.150
- Domäne: www.ttt-point.de
Vorbereitungen
- Achtung:
Soll der Zugriff auch auf den Webserver über https erfolgen, so muss zuerst der Port des Userinterfaces umgelegt werden.
UTMbenutzer@firewall.name.fqdnNetzwerk
In der Werkseinstellung ist der Port 443 für https schon vom User-Webinterface der UTM belegt. Dieser muss dann auf einen anderen Port umgelegt werden.Die Einstellungen dazu befinden sich im Menü Bereich Servereinstellungen im Abschnitt
- Für https benötigt der Reverse-Proxy ein Zertifikat damit er die verschlüsselte Verbindung entgegen nehmen kann
- Hierzu wird unter ein Zertifikat benötigt
In diesem Beispiel wird ein Wildcard-Zertifikat *.ttt-point.de verwendet.
Paketfilter-Regel
Damit der Reverse Proxy erreichbar ist, muss folgende Paketfilter-Regel vorhanden sein. Unter
kann dies überprüft werden. Falls diese nicht vorhanden ist, wird mit diese Regel hinzugefügt.# | Quelle | Ziel | Dienst | NAT | Logging | Aktion | Aktiv | ||
internet | external-interface | https | Accept | Ein |
Einrichtung
Assistent
Schritt 1 - Intern
Schritt 1 - Intern: Zielserver existiert bereits als Netzwerkobjekt | |||
Beschriftung | Wert | Beschreibung | UTMbenutzer@firewall.name.fqdnAnwendungenReverse-Proxy |
---|---|---|---|
Zielserver: | Ist der Host schon als Netzwerkobjekt angelegt, kann dieser im Dropdown Menü direkt ausgewählt werden. | ||
Netzwerkobjekt hinzufügen | Falls noch kein Netzwerkobjekt angelegt ist, kann mithilfe von dieser Schaltfläche ein Netzwerkobjekt erstellt werden. | ||
Port: | 443 | Der Webserver soll über eine Verschlüsselte Verbindung angesprochen werden. | |
SSL benutzen: | Ein | Legt fest, ob SSL verwendet werden kann | |
[ - ] Erweiterte Einstellungen notempty Diese TLS Einstellungen gelten für die Verbindung zwischen dieser Appliance und dem (lokalen) Server.
Für TLS Einstellungen zwischen den Clients und dieser Appliance gelten die Einstellungen im Dialog Bereich Reverse-Proxy | |||
Standard TLS Einstellungen verwenden: | Ja | Lässt nur Verbindungen mit TLS 1.2 oder 1.3 zu | |
Minimale TLS Version: | Es lassen sich die veralteten TLS-Versionen 1.1 und 1.0 auswählen | ||
Cipher-Suite: | Standardwert verwenden | Um direkt ein OpenSSL Sicherheitslevel zu verwenden, kann die Notation @SECLEVEL=N im Cipherstring verwendet werden, wobei N für das gewählte Level von 0 bis 5 steht.
| |
Schritt 2 - ExternEingehende Verbindung definieren | |||
Externer Domainname: | www.ttt-point.de | Hier wird eingetragen, wie der Server hinter der UTM angesprochen wird. |
|
Schritt 3 - Extern (Global) | |||
Modus | Zu nutzender Modus | ||
Proxy-Port: | 80 | Port für den Proxy des entsprechenden Servers | |
SSL-Proxy Port: | 443 | Port für den SSL-Proxy des entsprechenden Servers | |
SSL-Zertifikat: | Das zuvor angelegte Wildcard-Zertifikat (siehe Abschnitt: Vorbereitungen) | ||
Schritt 4 - Authentifizierung | |||
Authentifizierung weiterleiten: | Leitet fixe Zugangsdaten (hier: Keine) an den Reverse Proxy weiter. Der Proxy soll keine Authentifizierung durchführen Die Zeichenfolge kann URL-Escapes enthalten (z. B. %20 für Leerzeichen). Das bedeutet auch, dass % als %% geschrieben werden muss. |
||
Leitet die Authentifizierungs-Header des Clients an die Gegenstelle weiter. Von der UTM empfangene Anmeldedaten werden an den Reverse Proxy gesendet. Dadurch wird das Proxy-Passwort des Benutzers für die Gegenstelle sichtbar. Eine Authentifizierung ist bei dieser Option nicht erforderlich. | |||
Proxy - und Authentifizierung-Header werden unverändert weitergeleitet. Sendet die vom Client empfangenen Anmeldedaten an den Reverse Proxy. Sowohl Proxy- als auch WWW-Authorization-Header werden ohne Änderung an die Gegenstelle weitergegeben. | |||
Anmeldename | |||
Passwort | |||
Servergruppen | |||
Die Anordnung in Servergruppen ermöglicht es, verschiedene Beziehungen im Reverse Proxy darzustellen:
| |||
Fügt eine neue Servergruppe hinzu. Der Assistent legt automatisch eine Servergruppe an. |
UTMbenutzer@firewall.name.fqdnAnwendungen | ||
Name | server-www.ttt-point.de | Name | |
Server | www.ttt-point.de (10.1.0.150) … | Liste der Netzwerkobjekte, die zu der Servergruppe gehören | |
IP-Adresse Port: SSL: … |
Hovern mit der Maus zeigt weitere Details zu dem Netzwerkobjekt | ||
Bearbeiten | Öffnet den Dialog zum bearbeiten einer Servergruppe (Server hinzufügen oder löschen) | ||
Löschen | Löscht die Servergruppe (Bestätigung erforderlich) | ||
Servergruppe bearbeiten - nginxAllgemein | |||
Name | server-www.ttt-point.de | Name der Servergruppe (nicht bearbeitbar) | UTMbenutzer@firewall.name.fqdnAnwendungenReverse-Proxy |
SSL benutzen | Ja | Legt fest, ob SSL verwendet werden kann | |
Authentifizierung | |||
Authentifizierung weiterleiten: | Leitet fixe Zugangsdaten (hier: Keine) an den Reverse Proxy weiter. Der Proxy soll keine Authentifizierung durchführen Die Zeichenfolge kann URL-Escapes enthalten (z. B. %20 für Leerzeichen). Das bedeutet auch, dass % als %% geschrieben werden muss. | ||
Leitet die Authentifizierungs-Header des Clients an die Gegenstelle weiter. Von der UTM empfangene Anmeldedaten werden an den Reverse Proxy gesendet. Dadurch wird das Proxy-Passwort des Benutzers für die Gegenstelle sichtbar. Eine Authentifizierung ist bei dieser Option nicht erforderlich. | |||
Proxy - und Authentifizierung-Header werden unverändert weitergeleitet. Sendet die vom Client empfangenen Anmeldedaten an den Reverse Proxy. Sowohl Proxy- als auch WWW-Authorization-Header werden ohne Änderung an die Gegenstelle weitergegeben. | |||
Anmeldename: Nur bei Zugangsdaten festlegen |
|||
Passwort: Nur bei Zugangsdaten festlegen |
|||
Verbindungsorientierte Microsoft-Authentifizierung weiterleiten: notempty Neu ab v12.7.1 |
Ermöglicht Unterstützung für NTLM, Negotiate und Kerberos | ||
Server | |||
Suchfeld für die Server | |||
Netzwerkobjekt | www.ttt-point.de | Name | |
IP-Adresse | 10.1.0.150 | IP-Adresse des Webservers | |
Port | 443 | Port, über den der Server angesprochen werden soll | |
TLS | Default @Sec Level=4 | TLS-Einstellungen für diesen Server | |
Löschen | Löscht den Server aus der Servergruppe der Reverse Proxys | ||
Bearbeiten notempty Neu ab v12.7.0 /
| |||
Allgemein | |||
Netzwerkobjekt | Name | UTMbenutzer@firewall.name.fqdnAnwendungenReverse-Proxy | |
Öffnet den Dialog zum Hinzufügen eines Netzwerkobjektes | |||
Port | 443 | Port, über den der Server angesprochen werden soll | |
Erweiterte Einstellungen notempty Diese TLS Einstellungen gelten für die Verbindung zwischen dieser Appliance und dem (lokalen) Server.
Für TLS Einstellungen zwischen den Clients und dieser Appliance gelten die Einstellungen im Dialog Bereich Reverse-Proxy | |||
Standard TLS Einstellungen verwenden: | Ja | Lässt nur Verbindungen mit TLS 1.2 oder 1.3 zu | |
Minimale TLS Version: | Es lassen sich die veralteten TLS-Versionen 1.1 und 1.0 auswählen | ||
Cipher-Suite: | Standardwert verwenden | Um direkt ein OpenSSL Sicherheitslevel zu verwenden, kann die Notation @SECLEVEL=N im Cipherstring verwendet werden, wobei N für das gewählte Level von 0 bis 5 steht.
| |
Servergruppe bearbeiten - squid | |||
Allgemein | |||
Name | server-www.ttt-point.de | Name der Servergruppe (nicht bearbeitbar) | UTMbenutzer@firewall.name.fqdnAnwendungenReverse-Proxy |
Server | |||
Suchfeld für die Server | |||
Netzwerkobjekt | www.ttt-point.de | Name | |
IP-Adresse | 10.1.0.150 | IP-Adresse des Webservers | |
Port | 443 | Port, über den der Server angesprochen werden soll | |
SSL | Ja | Zeigt, ob SSL für den Server aktiviert ist | |
Typ | Zugangsdaten festlegen | Authentifizierungstyp, der von dem Server genutzt wird | |
Anmeldename | {{#var:Leer} | ||
MS-Auth | aus | Status für die Verbindungsorientierte Microsoft-Authentifizierung (Unterstützung für NTLM, Negotiate und Kerberos) | |
TLS | Default @Sec Level=4 | TLS-Einstellungen für diesen Server | |
Löschen | Löscht den Server aus der Servergruppe der Reverse Proxys | ||
Bearbeiten notempty Neu ab v12.7.0 /
| |||
Allgemein | UTMbenutzer@firewall.name.fqdnAnwendungenReverse-Proxy | ||
Netzwerkobjekt | Name | ||
Öffnet den Dialog zum Hinzufügen eines Netzwerkobjektes | |||
Port | 443 | Port, über den der Server angesprochen werden soll | |
SSL benutzen: | Ja | Legt fest, ob SSL verwendet werden kann | |
Authentifizierung | |||
Authentifizierung weiterleiten: | Leitet fixe Zugangsdaten (hier: Keine) an den Reverse Proxy weiter. Der Proxy soll keine Authentifizierung durchführen Die Zeichenfolge kann URL-Escapes enthalten (z. B. %20 für Leerzeichen). Das bedeutet auch, dass % als %% geschrieben werden muss. | ||
Leitet die Authentifizierungs-Header des Clients an die Gegenstelle weiter. Von der UTM empfangene Anmeldedaten werden an den Reverse Proxy gesendet. Dadurch wird das Proxy-Passwort des Benutzers für die Gegenstelle sichtbar. Eine Authentifizierung ist bei dieser Option nicht erforderlich. | |||
Proxy - und Authentifizierung-Header werden unverändert weitergeleitet. Sendet die vom Client empfangenen Anmeldedaten an den Reverse Proxy. Sowohl Proxy- als auch WWW-Authorization-Header werden ohne Änderung an die Gegenstelle weitergegeben. | |||
Anmeldename Nur bei Zugangsdaten festlegen |
|||
Passwort Nur bei Zugangsdaten festlegen |
|||
Verbindungsorientierte Microsoft-Authentifizierung weiterleiten: notempty Beschriftung aktualisiert |
Ermöglicht Unterstützung für NTLM, Negotiate und Kerberos | ||
Erweiterte Einstellungen notempty Diese TLS Einstellungen gelten für die Verbindung zwischen dieser Appliance und dem (lokalen) Server.
Für TLS Einstellungen zwischen den Clients und dieser Appliance gelten die Einstellungen im Dialog Bereich Reverse-Proxy | |||
Standard TLS Einstellungen verwenden: | Ja | Lässt nur Verbindungen mit TLS 1.2 oder 1.3 zu | |
Minimale TLS Version: | Es lassen sich die veralteten TLS-Versionen 1.1 und 1.0 auswählen | ||
Cipher-Suite: | Standardwert verwenden | Um direkt ein OpenSSL Sicherheitslevel zu verwenden, kann die Notation @SECLEVEL=N im Cipherstring verwendet werden, wobei N für das gewählte Level von 0 bis 5 steht.
| |
Sites | |||
Sites Hier können die Sites Einträge überblickt, bearbeitet ( ) und gelöscht ( ) werden. |
Bereich UTMbenutzer@firewall.name.fqdnAnwendungenReverse-Proxy UTMbenutzer@firewall.name.fqdnAnwendungenReverse-Proxy | ||
Sites - ngnix | |||
Domainname: | www.ttt-point.de | Hier wird eingetragen, wie der Server hinter der UTM angesprochen wird. | UTMbenutzer@firewall.name.fqdnAnwendungenReverse-Proxy |
Servergruppe: | Hier wird die zugehörige Servergruppe gewählt | ||
Client-Bandbreite: | 0 kbits/s | Bandbreite, die einem Client maximal zur Verfügung stehen soll | |
Lastverteilung: | Verbindungen werden eine nach der anderen abgearbeitet. | ||
Verbindungen eines Users (Hash auf den Benutzernamen) werden immer an den gleichen Server geleitet. | |||
Verbindungen von der gleichen Quelle (IP-Adresse) werden immer an den gleichen Server geleitet. | |||
HTTP umleiten: Nur wenn Mode: |
Nein | Bei Aktivierung werden HTTP Anfragen auf den HTTPS Port umgeleitet | |
Websockets: | aus | Aktiviert Websockets Verbindungen für die Site | |
Site-spezifischer Proxy Port: | Ein 80 Default: aus |
Ermöglicht einen spezifischen Port für HTTP-Verbindungen in dieser Site | |
Site-spezifischer SSL-Proxy Port: | Ein 8443 Default: aus |
Ermöglicht einen spzifischen Port für HTTP-Verbindungen in dieser Site | |
Site-spezifisches SSL-Zertifikat: | aus | Es kann ein Site-spezifisches Serverzertifikat ausgewählt werden | |
ACL Sets | Auswahl eines ACL Sets, das hinzugefügt werden soll | ||
Hinzufügen | Ausgewähltes ACL Set hinzufügen | ||
Pos. | Per Drag-and-Drop kann die Reihenfolge der ACL-Sets angepasst werden. | ||
ACL Set | aclset-www.ttt-point.de | Name | |
Aktion | Konfiguration, ob das ACL Set erlaubt oder verboten werden soll | ||
Status | Ein | Aktivierung, bzw. Deaktivierung der Konfiguration für das ACL Set | |
Löschen | Löscht den Eintrag für das ACL Set | ||
Sites - squid | |||
Domainname: | www.ttt-point.de | Hier wird eingetragen, wie der Server hinter der UTM angesprochen wird. | UTMbenutzer@firewall.name.fqdnAnwendungenReverse-Proxy |
Servergruppe: | Hier wird die zugehörige Servergruppe gewählt | ||
Site-Bandbreite: | 0 kbits/s | Bandbreite, die einer Site maximal zur Verfügung stehen soll | |
Client-Bandbreite: | 0 kbits/s | Bandbreite, die einem Client maximal zur Verfügung stehen soll | |
Lastverteilung: | Verbindungen werden eine nach der anderen abgearbeitet. | ||
Verbindungen eines Users (Hash auf den Benutzernamen) werden immer an den gleichen Server geleitet. | |||
Verbindungen von der gleichen Quelle (IP-Adresse) werden immer an den gleichen Server geleitet. | |||
Verbindungen werden eine nach der anderen abgearbeitet, jedoch gibt es Gewichtungen, die bestimmen wie oft die gleiche Verbindung hintereinander bedient wird. | |||
ACL Sets | Auswahl eines ACL Sets, das hinzugefügt werden soll | ||
Hinzufügen | Ausgewähltes ACL Set hinzufügen | ||
Pos. | Per Drag-and-Drop kann die Reihenfolge der ACL-Sets angepasst werden. | ||
ACL Set | aclset-www.ttt-point.de | Name | |
Aktion | Konfiguration, ob das ACL Set erlaubt oder verboten werden soll | ||
Status | Ein | Aktivierung, bzw. Deaktivierung der Konfiguration für das ACL Set | |
Löschen | Löscht den Eintrag für das ACL Set | ||
KombinationsbeispielDurch Kombination verschiedener ACL-Sets mit entsprechenden Berechtigungen lässt sich z.B. erreichen, daß nur von einer bestimmten (z.B. der eigenen) öffentlichen IP-Adresse aus auf die Login-Seite eines Servers zugegriffen werden darf.
| |||
ACL Sets | |||
Unter ACLSets Schaltfläche Schaltfläche . Über ACLs lassen sich Zugriffsrechte zuweisen. | Bereich |||
Typ | Beschreibung | Beispiel Argument | UTMbenutzer@firewall.name.fqdnAnwendungenReverse-Proxy |
Regex auf die Ziel-Domäne | .*\ttt-point\.(de|com) | ||
Gibt die Domäne/IP des Ziel-Servers an | www.ttt-point.de oder IP-Adresse | ||
protoProtokoll | http, https | ||
Filter auf den Header des Clients | Es könnte z. B. der Browser bestimmt werden | ||
Gibt die Quell IP des Clients an | 87.139.55.127/255.255.255.255 | ||
Nur bei squid-Engine |
Regex auf die Domäne | anyideas | |
Nur bei squid-Engine |
Gibt die Domäne des Absenders an | anyideas.de | |
Zeitangabe | M T W H F 9:00-17:00 S - Sonntag M - Montag | ||
Regex für Pfade | ttt-point.de/login | ||
Einstellungen | |||
Beschriftung | Wert | Beschreibung | UTMbenutzer@firewall.name.fqdnAnwendungen |
Engine: notempty Neu ab v12.7.0 |
Auswahl der zu nutzenden Engine zwischen nginx (neu) oder squid Speichern umgesetzt. | ||
Modus: | Zu nutzender Modus | ||
Proxy-Port: | 80 | Port für den Proxy des entsprechenden Servers | |
SSL-Proxy Port: | 8443 | Port für den SSL-Proxy des entsprechenden Servers | |
SSL-Zertifikat: Es sind nur Zertifikate mit privatem Schlüssel-Teil auswählbar |
Zertifikat für den entsprechenden Server | ||
Websocket Timeout: notempty Neu ab v12.7.0 |
60 | Legt die Zeit für einen Websocket Timeout fest | |
Zertifikatsbasierte Authentifizierung aktivierenZertifikatsbasierte Authentifizierung aktivieren
aktualisiert
| |||
SSL-CA: | Zertifikat für die zertifikatsbasierte Authentifizierung | ||
Import persönlicher Zertifikate
notemptyDamit die Funktion Zertifikatsbasierte Authentifizierung aktivieren korrekt genutzt werden kann, muss das persönliche Zertifikat im verwendeten Browser vorliegen.