[Eisfair] Eisfair Apache als reverse proxy
Uwe Kunze
u.kunze.sdh at t-online.de
Di Apr 7 15:48:11 CEST 2015
> Moment. Klär mich mal eben auf. Ich möchte den revers proxy auf einer
> eigenen Maschine vor dem MS Exchange haben. Also läuft logischer weise auf
> dem revers proxy KEIN Apache.
Klar, es muß auch kein Apache laufen.
Aber wenn der nginx von außen per https angesprochen werden soll, dann
braucht nginx (wie jeder Webserver) ein Zertifikat, mit dem er sich
gegenüber dem Browser identifiziert.
Ich habe hier einfach das Zertifikat genommen, welches ich (eigentlich)
für den Apache benutze (und mit dem certs-Paket von Jürgen ertellt weren
kann).
> Im Prinzip sieht das bei mir so aus / soll so aussehen:
>
> Internet --- Firewall --- revers_proxy (in DMZ) --- Firewall --- MS-Exchange
>
> Der Webserver inkl. der Zertifikate laufen also eigentlich auf dem
> Exchange-Server. Wie muss der revers proxy dann konfiguriert werden?
Im Prinzip müßte man auch das Zertifikat des Exchange-Servers für den
Revers-Proxy verwenden können (müsste dann rüberkopiert werden), Wenn
das Zertifikat auf owa.firmenname.tld (für den Exchange) ausgestellt
ist, kannst Du es auch auf dem eis (mit nginx) verwenden, da der ja von
außen (offenbar) unter demselben Namen erreichbar ist (wenn ich das so
richtig verstanden habe, siehe weiter unten).
Andernfalls gäbe es im Browser eine Zertifikats-Warnung bzgl. der nicht
übereinstimmenden Domain-Namen..
> Der interne DNS-Eintrag lautet owa.firmenname.tld und zeigt direkt auf den
> MS-Echange.
> Der externe DNS-Eintrag lautet auch owa.firmenname.tld und zeigt auf die
> Firewall bzw. damit auf denn revers proxy, der dann die Anfragen weiter auf
> den zweiten DNS-Eintrag des MS-Exchange weiterleiten soll.
>
> Oder habe ich da einen Denkfehler?
> Muss ich jetzt nur noch die Exchange-Zertifikate exportieren und als
> pem/key-Files beim nginx ablegen und in die Konfiguration einbauen? Lohnt
> sich das alles vom Sicherheitsgewinn her überhaupt?
Wenn ich Dich richtig verstanden habe, hast Du eine Domain mit dem Namen
owa.firmenname.tld, mit dem der Reverse-Proxy (eis mit nginx) von außen
erreichbar ist, der Zielrechner (Exchange) verwendet im lokalen Netz
aber denselben Namen ?
Dann konfiguriere nginx doch so, daß er auf einem (Nicht-Standard)-Port
auf https lauscht, z.B. mit
server {
listen 10443;
Dann leitest Du auf den Exchange-Server weiter, indem Du dessen lokale
IP benutzt, also so:
location / {
proxy_pass https://172.16.x.x:443/;
(sofern auf dem Exchange-Webserver https auf Port 443 benutzt wird).
Ein Client aus dem Intenet gibt ein:
https://owa.firmenname.tld:10443
und wird von nginx "weitergeleitet" auf den Exchange-Weberver unter
https://172.16.x.x:443
Gruß Uwe
Mehr Informationen über die Mailingliste Eisfair