Angenommene Situation:
Server1 lauscht auf Port 80 auf Anfragen, die über den Router gesendet werden.
Server2 stellt eine Anwendung zu Verfügung, z.B. Icinga. Diese soll jedoch auch aus dem Internet errecihbar sein über Port 80.
Jetzt möchte kann man natürlich Port 80 nicht zwei mal weiterleiten. Ein alternativer Port (z.B. 8080 => http://www.adresse.de:8080) ist auch nicht das Gelbe vom Ei.
Die Lösung bringt der Apache2 mit.
So kann man vorgehen.
a2enmod proxy a2enmod proxy_http
Falls es die Datei mod_proxy unter /etc/apache2/mods-available nicht geben sollte, hilft ein
apt-get install libapache2-mod-proxy-html
Um Fehler zu vermeiden, habe ich festgestellt, dass man noch einen Symlink manuell erstellen sollte
ln -s /etc/apache2/mods-available/proxy_http.load /etc/apache2/mods-enabled/proxy_http.load
Damit ist der Grundstein gelegt und man muss nur noch seinen vHost auf Server1 entsprechend konfigurieren, dass er Anfragen an Icinga auf Server2 weitergibt.
Dazu ein Ausschnitt aus meiner /etc/apache2/sites-available/ssl:
ProxyRequests Off ProxyPass /icinga http://storm/icinga ProxyPassReverse /icinga http://storm/icinga ProxyPass /cgi-bin/icinga http://storm/cgi-bin/icinga ProxyPassReverse /cgi-bin/icinga http://storm/cgi-bin/icinga
Im Anschluss noch den Apache restarten auf Server1 und fertig.
/etc/init.d/apache2 restart