|
|
| (7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) |
| Zeile 1: |
Zeile 1: |
| '''mod_proxy''' - Ausgabefilter, der HTML-Links so umschreiben kann, dass mehrere Webserver kombiniert werden können
| | == mod_proxy == |
| | ; ProxyPass |
| | Um Apache als Reverse-Proxy-Server einzurichten, wird [[mod_proxy]] aktiviert |
|
| |
|
| == Beschreibung ==
| | ; Weitere Module |
| [https://httpd.apache.org/docs/2.4/mod/mod_proxy_html.html mod_proxy_html] ist ein Ausgabefilter, der HTML-Links so umschreiben kann, dass mehrere Webserver nahtlos miteinander kombiniert werden können. | | Gängige Module, die möglicherweise notwendig sind |
| | * [[mod_http]] |
| | * [[mod_headers]] |
| | * [[mod_html]] |
|
| |
|
| So kann z.B. ein zweiter Webserver (welchen z.B. Dienste wie ejabberd bereitstellen) unter ''http://server/ejabberd'' erreicht werden, obwohl der zweite Webserver auf der IP 127.0.0.1 und dem Port 5281 läuft.
| | === Installation === |
| * Die Hauptaufgabe (und damit der Unterschied zum "normalen" '''mod_proxy''') besteht darin, dass das übertragene HTML so modifiziert wird, dass alle Links mit der veränderten Situation klarkommen.
| | Installation und Aktivierung von mod_proxy |
| | | <syntaxhighlight lang="bash" highlight="1" line copy> |
| Hier eine grafische Darstellung des Ganzen:
| | sudo apt install libapache2-mod-proxy-html a2enmod mod_proxy |
| [[Bild(mod_proxy_html.png, align=center)]]
| |
| Wie im Beispiel zu sehen wird man über `http://server/ejabberd` auf den eingebauten Webserver vom [:Archiv/ejabberd:] umgeleitet.
| |
| * Alle Seiten, die der ejabberd sendet, werden durch '''mod_proxy_html''' so verändert, dass die Links mit ''http://server/ejabberd/'' beginnen.
| |
| * So ist eine normale Funktion der ejabberd-Administrationsseiten gewährleistet.
| |
| * Natürlich funktioniert dieses Verfahren auch mit vielen anderen Diensten.
| |
| | |
| == Sicherheitskonzept == | |
| | |
| == Installation ==
| |
| Seit Apache 2.4 ist mod_proxy_html enthalten und muss nur aktiviert werden
| |
| | |
| === Module aktivieren ===
| |
| sudo a2enmod proxy
| |
| sudo a2enmod proxy_html
| |
| sudo a2enmod proxy_http
| |
| | |
| ; Hinweis
| |
| Anschließend muss der Apache Webserver neu gestartet werden ('''force-reload''')
| |
| | |
| == Anwendung ==
| |
| === Problembehebung ===
| |
| == Konfiguration ==
| |
| Zum Verwenden des Moduls muss die [[Apache/HTTP/Virtuelle Server|Apache]]-Konfiguration entsprechend angepasst werden.
| |
| | |
| ; Beispiel
| |
| <syntaxhighlight lang=apache line> | |
| <VirtualHost *>
| |
| ...
| |
| ProxyRequests Off
| |
| <Proxy *>
| |
| Order deny,allow
| |
| Allow from all
| |
| </Proxy>
| |
| ProxyPass /ejabberd/ http://127.0.0.1:5281/
| |
| ProxyPassReverse /ejabberd/ http://127.0.0.1:5281/
| |
| ...
| |
| </VirtualHost>
| |
| </syntaxhighlight> | | </syntaxhighlight> |
|
| |
| ; Hinweis
| |
| <blockquote>
| |
| Nach dieser Änderung muss der Apache Webserver neu gestartet werden (reload)
| |
| </blockquote>
| |
|
| |
| ; Warnung
| |
| <blockquote>
| |
| Die Option '''ProxyRequests''' sollte ohne weitere Sicherheitsvorkehrungen (z.B. nur für bestimmte Subnetze erlaubt) '''NICHT''' auf On gesetzt werden, ansonst hat man einen sog. Open Proxy, was im Normalfall ein großes Sicherheitsproblem darstellt!
| |
| </blockquote>
| |
|
| |
| === Proxy-Eigenschaften ===
| |
| === Dateien ===
| |
|
| |
|
| <noinclude> | | <noinclude> |
| Zeile 65: |
Zeile 20: |
| === Siehe auch === | | === Siehe auch === |
| {{Special:PrefixIndex/{{BASEPAGENAME}}/}} | | {{Special:PrefixIndex/{{BASEPAGENAME}}/}} |
| ==== Dokumentation ====
| | === Dokumentation === |
|
| |
|
| ==== Links ====
| | === Links === |
| ==== Weblinks ==== | | ==== Weblinks ==== |
| # https://wiki.ubuntuusers.de/Apache/mod_proxy_html/ | | # https://sarwiki.informatik.hu-berlin.de/Reverse_Proxy |
| # http://sarwiki.informatik.hu-berlin.de/Reverse_Proxy
| |
|
| |
|
| [[Kategorie:Apache/HTTP/Module]] | | [[Kategorie:Apache/HTTP/Module]] |
mod_proxy
- ProxyPass
Um Apache als Reverse-Proxy-Server einzurichten, wird mod_proxy aktiviert
- Weitere Module
Gängige Module, die möglicherweise notwendig sind
Installation
Installation und Aktivierung von mod_proxy
sudo apt install libapache2-mod-proxy-html a2enmod mod_proxy
Anhang
Siehe auch
Dokumentation
Links
Weblinks
- https://sarwiki.informatik.hu-berlin.de/Reverse_Proxy