:zitter: SSL-Apache mit Proxyfunktion

blindOracle

Active Member
Grüße in die wehrte Runde!!

Ich hätte eine Frage an die Web-Cracks:

Ausgangssituation:
Applicationserver auf Port 8080 eines Servers (Ziel-URL: http://server:8080/app/xyz/abc/)
Apache Webserver mit SSL und Redirect Port 80 -> 443 auf gleichem Server

Ziel:
Der SSL-Apache (443) soll als Proxy für den Applicationserver auf Port 8080 dienen.
Gewünschte URL: https://server/abc

Problem:
Ich habe eine funktionierende SSL-Config mit passendem Redirect Port 80 -> 443.
Über diverse RewriteMatches baue ich die URL um.
Zudem hab ich auch noch einige ProxyPass Statements die die eigentliche Masquerade machen.


Jetzt meine Frage hierzu:

Wenn ich das so tue schauts aus als würde der Apache im Hintergrund nicht auf Port 8080 zugreifen sonder stets auf Port 443 und die URL des Applicationservers anfragen.

Kann ProxyPass überhaupt eine eingehende SSL-Verbindung im Hintergrund auf einen nicht-SSL-Port maskieren?


Herzlichen Dank für alle Ideen hierzu!!

Euer Blindy
 
Kann ProxyPass überhaupt eine eingehende SSL-Verbindung im Hintergrund auf einen nicht-SSL-Port maskieren?
Zugegeben, ich verstehe Deinen Post nicht ganz, aber der Apache kann das prinzipiell. Wir haben hier ein etwas anderes Szenario. Die User eines unserer Kunden haben alle dynamische IP-Adressen und greifen auf eine Webapplikation bei einem anderen Dienstleister zu, die nur den Zugriff mittels fester IP-Adressen regeln kann. Frag mich nicht warum, es ist so. Ich habe deshalb auf dem Server unseres Kunden einen Proxy eingerichtet, der via https angesprochen wird und die Inhalte via http von dem anderen Webserver holt. Ich verwende zusätzlich das Apache-Modul www/mod_proxy_html, um die Links in der externen Webapplikation umzuschreiben. Diese Applikation integriert sich danach nahtlos in das Intranet des Kunden, d.h. die User merken garnicht, das die Inhalte von einem externen Server geladen werden.

Ich habe hier schon mal vor längerer Zeit ein paar Posts dazu geschrieben. Stichwort für die Suche sollte mod_proxy_html sein. Vielleicht hilft Dir das weiter.

Gruß c.
 
Servus,

@ crotchmaster:

Ja ich verwende bereits das mod_proxy_html, das verwendest ja mittels ProxyPass..:-)

Ich komme um den Apache nicht herum, aber trozdem danke für den Tipp mit pond!
 
Grüße in die wehrte Runde!!
Kann ProxyPass überhaupt eine eingehende SSL-Verbindung im Hintergrund auf einen nicht-SSL-Port maskieren?

Zuerst mal: Ob eine Verbindung verschlüsselt wird oder nicht, bestimmt allein der Ziel(!)-Server beim Zugriff, und das erst mal vollkommen unabhängig von irgendwelchen Ports.

Wenn also der App-Server auf Port 8080 keine SSL-Verschlüsselung macht, ist es unnötig schwierig. Ja es geht, aber SSL/NONSSL-Proxies sind eine komplizierte Geschichte, vor allem weil wesentliche Teile der Kommunikation, die umgeschrieben werden sollen, ja verschlüsselt sind.

Die einfachste Möglichkeit wäre:
Einfach Apache Port 80 <-> Appserver (Tomcat?) 8443 (oder 8080 oder was-auch-immer) direkt mappen und beim App-Server SSL auf diesem Port aktivieren. Und ja, mod_proxy mit ProxyPass/ProxyPassRevers ist dabei der Freund.
Der Appserver ist dann für die SSL-Kommunikation zuständig, der Apache schiebt nur durch. Der Zugriff wäre dann halt per https://<server>:80 statt http://<server>

Wenn es sich um einen Tomcat dahinter handelt, würde ich eher mit mod_jk arbeiten als mit Proxies: http://tomcat.apache.org/connectors-doc/
Mit mod_jk kann man dann gleich beim Apache eine SSL-Verschlüsselung auf die gemappten App-Pfade setzen.
 
Zuletzt bearbeitet:
Zurück
Oben