[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