enaio® gateway - Sicherung durch Reverse Proxy
enaio® gateway kann mit der Ende-zu-Ende-SSL-Verschlüsselung für alle Komponenten gesichert werden, sollte aber in Produktivsystemen immer auch durch Firewalls bzw. Reverse Proxies gesichert sein. Als Beispiel ist hier die Installation und Konfiguration von NGINX dokumentiert.
NGINX als Reverse Proxy
NGINX kann auf dem gleichen Server installiert werden, auf dem enaio® gateway läuft.
-
Download von NGINX und Entpacken des Archivs in ein Verzeichnis auf dem Installationsrechner.
-
Anpassen der Konfigurationsdatei nginx.conf aus dem Verzeichnis \conf:
- Ersetzen Sie den Abschnitt server durch folgende Passage:
- Ersetzen Sie den Platzhalter ${port} durch den Port, über den NGINX aufgerufen wird.
- Ersetzen Sie den Platzhalter ${gateway-url} durch den Hostnamen, über den Clients sich verbinden.
- Ersetzen Sie die Adresse im Abschnitt 'location' durch die Adresse, über die NGINX enaio® gateway erreicht.
- Passen sie gegebenenfalls die Pfade zu den Verzeichnissen für Zertifikatsdatei und Schlüsseldatei an.
- Kopieren Sie Zertifikatsdatei und Schlüsseldatei in die Verzeichnisse.
- Speichern Sie die Datei.
Kopierenupstream gateway {
server gateway:${port};
}
server {
listen 80;
server_name _;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name ${gateway-url};
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
add_header X-Frame-Options SAMEORIGIN;
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ecdh_curve secp384r1;
ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384 OLD_TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 OLD_TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256";
ssl_prefer_server_ciphers on;
ssl_dhparam /etc/nginx/dhparams.pem;
ssl_certificate C:\nginx\config\certificate.pem;
ssl_certificate_key C:\nginx\config\private-key.pem;
ssl_session_timeout 10m;
ssl_session_cache shared:SSL:10m;
ssl_session_tickets off;
ssl_stapling on;
ssl_stapling_verify on;
location / {
proxy_pass http://localhost:81;
}
} - Starten Sie NGINX über die administrative Eingabeaufforderung: start nginx
- Prüfen Sie über den Taskmanager oder die Eingabeaufforderung, ob NGINX läuft: tasklist -fi "imagename eq nginx.exe"
- Passen Sie gegebenenfalls den Port von enaio® gateway entsprechend der Konfiguration an.
Der Port kann über enaio blue gatewayw.exe aus dem Verzeichnis \services\OS_Gateway\bin geändert werden.
Mehrere enaio® gateway-Installationen
Falls Sie auf einem Rechner weitere enaio® gateway-Installationen für unterschiedliche Authentifizierungen verwenden, dann muss der Abschnitt 'location' erweitert werden. Beispiel:
location /gateway_1 {
proxy_pass http://localhost:8081;
}
location /gateway_2 {
proxy_pass http://localhost:8082;
}
Aufrufe über https://<host>:443/gateway_1 werden dann an https://<host>:8081 weitergeleitet, Aufrufe von https://<host>:443/gateway_2 an https://<host>:8082.