[Eisfair] Eisfair Apache als reverse proxy
Stefan Heidrich
stefan-in-news at web.de
Fr Apr 10 10:53:37 CEST 2015
Hallo Uwe, hallo Ansgar, hallo NG,
> verwende doch mal (testhalber !) meine config (hab sie grad auf Dein
> Netz angepasst) und das von mir kompilierte (etwas ältere) ninx-Binary
> ... das läuft auf meinem eis1 (Base 2.4.0, Kernel 2.8.0).
Danke für die Bereitstellung. Auf einem frisch aufgesetzten Eis kommt beim
Start Deiner Binary diese Meldung:
# /etc/init.d/nginx start
* Starting nginx daemon ...
/usr/local/nginx/sbin/nginx: error while loading shared libraries:
libgd.so.2: cannot open shared object file: No such file or directory
[ FAIL ]
Also libgd nachinstalliert. Dann kommt folgendes:
# /etc/init.d/nginx start
* Starting nginx daemon ...
nginx: [alert] could not open error log file: open()
"/var/log/nginx/error.log" failed (2: No such file or directory)
2015/04/10 07:29:34 [emerg] 5319#0: open() "/etc/nginx/nginx.conf" failed
(2: No such file or directory)
Also ein Verzeichnis /etc/nginx angelegt und dort die conf hinkopiert. Dann
kommt:
# /etc/init.d/nginx start
* Starting nginx daemon ...
nginx: [alert] could not open error log file: open()
"/var/log/nginx/error.log" failed (2: No such file or directory)
2015/04/10 07:31:24 [emerg] 5328#0: open() "/etc/nginx/mime.types" failed
(2: No such file or directory) in /etc/nginx/nginx.conf:6
[ FAIL ]
Jetzt das Verzeichnis /var/log/nginx angelegt und restlichen Dateien von
Ansgar aus /usr/local/nginx/conf nach /etc/nginx kopiert. Jetzt kommt:
# /etc/init.d/nginx start
* Starting nginx daemon ...
nginx: [emerg] mkdir() "/tmp/nginx/http-client" failed (2: No such file or
directory)
[ FAIL ]
Also auch noch das Verzeichnis /tmp/nginx/http-client angelegt und jetzt
startet nginx.
Beim Aufruf von https://192.168.132.40 kommt jetzt folgendes:
Fehler: Gesicherte Verbindung fehlgeschlagen
Ein Fehler ist während einer Verbindung mit 192.168.132.40 aufgetreten. SSL
hat einen Eintrag erhalten, der die maximal erlaubte Länge überschritten
hat. (Fehlercode: ssl_error_rx_record_too_long)
Die Website kann nicht angezeigt werden, da die Authentizität der erhaltenen
Daten nicht verifiziert werden konnte.
Kontaktieren Sie bitte den Inhaber der Website, um ihn über dieses Problem
zu informieren.
Also Konfuguration angepasst und SSL hinzugefügt / Kommentare entfernt.
Jetzt bekomme ich bei Aufruf von https://192.168.132.40:
502 Bad Gateway
Dann hab ich im Internet das Suchen angefangen und bin auf diese Webseite
gestoßen:
https://blog.friedlandreas.net/2013/07/reverseproxy-fur-eas-exchange-activesync-und-owa-outlookwebapp-mit-nginx/
Und mit einer Mischung der Konfigurationen hab ich das intern ans Laufen
bekommen. Auch der Zugriff von außen funktioniert.
Hier noch der Vollständigkeit halber meine funktionierende Konfiguration,
die aber jetzt mit Ansgars Paket am Laufen ist:
worker_processes auto;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
tcp_nopush on;
keepalive_timeout 65;
#Abschnitt 1
server {
listen 80;
server_name owa.firmenname.tld;
# Redirect any HTTP request to HTTPS
return 301 https://$server_name$request_uri;
error_log logs/error.log debug;
access_log logs/access.log;
}
#Abschnitt 2
server {
listen 443;
server_name owa.firmenname.tld;
# Redirect from "/" to "/owa" by default
location / {return 301 https://owa.firmenname.tld/owa;}
# Enable SSL
ssl on;
ssl_certificate /usr/local/nginx/cert/OWA.pem;
ssl_certificate_key /usr/local/nginx/cert/OWA.key;
ssl_session_timeout 5m;
# Set global proxy settings
proxy_read_timeout 360;
proxy_pass_header Date;
proxy_pass_header Server;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For
$proxy_add_x_forwarded_fo
r;
proxy_set_header Accept-Encoding "";
location /owa { proxy_pass
https://ex-mgh-css1.root.lan/owa; }
location /ews { proxy_pass
https://ex-mgh-css1.root.lan/ews; }
location /Microsoft-Server-ActiveSync { proxy_pass
https://ex-mgh
-css1.root.lan/Microsoft-Server-ActiveSync; }
error_log logs/sslerror.log debug;
access_log logs/sslaccess.log;
}
}
Ansgar, kannst Du damit etwas anfangen um Dein Paket weiter zu entwickeln?
Jetzt wo ich weiß was nginx macht und kann bin ich auch gerne als Tester
bereit. :)
Viele Grüße und ganz herzlichen Dank
Stefan
Mehr Informationen über die Mailingliste Eisfair