Zentraler Web-Proxy hinter Firewall
Simi
- webserver
0 LX0 Simi
0 Edgar Ehritt
Hi,
ich mochte einen Proxy in einen LAN einrichten der Anfragen zu Webseiten zu unterschiedlichen Server weiterleitet. Dies soll fuer Anfragen aus dem Internet funktionieren. Zum Beispiel
Ich habe den Proxy mit Apache und mod_proxy aufgesetzt und intern kann ich mit der Webseite ueber den Proxy auch wunderbar kommunizieren. Nur wenn die Anfrage von aussen ueber NAT weitergeleitet wird geht das ganze nicht mehr.
Folgend Szenario funktioniert also schon:
LAN:
PROXY ....................................WEBSERVER
192.168.1.100...........------>...........192.168.1.101
test.domain.com ..........................local.test.domain.com
|
|
|
CLIENT
ruft test.domain.com auf
und kommuniziert mit
local.test.domain.com
Apache Config for PROXY:
<VirtualHost test.domain.com:80>
ProxyPass / http://local.test.domain.com/
ProxyPassReverse / http://local.test.domain.com/
</VirtualHost>
Apache Config for WEBSERVER
<VirtualHost *:80>
ServerName test.domain.com
ServerAlias local.test.domain.com
DirectoryIndex index.html index.php index.htm
DocumentRoot /opt/test-example
</VirtualHost>
Ich bin mir sicher dass die Config in Apache ok ist, weil es funktioniert ja lokal. Ich bin mir also sicher dass alle noetigen module geladen sind. Es funktioniert aber nicht aus dem Ineternet wenn zusaetzlich das Forwarding von der Firewall ins Spiel kommt. Meine momentane Vermutung ist dass die Anwort der WEBSERVER und/oder des PROXY nicht an die Firewall zurueckgegeben wird. Sowohl der WEBSERVER als auch PROXY haben also default Gateway die Firewall. Ich sehe in den Logs von Apache aber auch keine Anfragen wenn ich vom Internet versuche die Seite aufzurufen. Es kommt auch keine Fehlermeldung im Browser beim Aufruf der Seite - sondern es laeuft auf einen Timeout.
Das Szenario das NICHT funkioniert - mit der gleichen Apache Config wie oben - ist folgendes:
CLIENT
ruft test.domain.com (212.212.212.100) auf
und laeuft auf timeout :(
|
|
|
FIREWALL
ext 212.212.212.100
int 192.168.1.1
NAT 212.212.212.100:80 --> 192.168.1.100:80
|
|
|
PROXY ....................................WEBSERVER
192.168.1.100...........------>...........192.168.1.101
test.domain.com ..........................local.test.domain.com
Default Gateway 192.168.1.1...............Default Gateway 192.168.1.1
Ich habe bereits stunden mit google verbracht und habe bisher leider keine heisse spur. Ich waere fuer jeglichen hinweis ueberaus dankbar :)
Tobias
Proxies sind üblicherweise dazu da, Anfragen von innen nach außen zu leiten. Anfragen aus dem Netz auf Server zu verteilen, ist hingegen Aufgabe eines Load Balancers.
Gruß, LX
Ich glaube was ich versuche zu machen nennt sich Reverse Proxy und es scheint fuer sich genommen auch zu gehen nur nicht im zusammenhang mit dem Forwarding *grummel* ... :)
Proxies sind üblicherweise dazu da, Anfragen von innen nach außen zu leiten. Anfragen aus dem Netz auf Server zu verteilen, ist hingegen Aufgabe eines Load Balancers.
Gruß, LX
Hallo Tobias,
das sieht, gerade weil in den Log-Dateien des Apachen keine Einträge landen, nach einer fehlerhaft konfigurierten Firewall aus. Bitte überprüfe die Einstellungen!
Gruß aus Berlin!
eddi