Apache2 mod_proxy und mod_rpaf

Mein Webserver ist in einem internen Netz und davor sitzt ein Apache Webserver der die Anfragen mittels mod_proxy nach hinten weiterreicht. Damit in den Logfiles des internen Webservers dennoch die korrekten IP Adressen auftauchen muss dort das Apache Modul rpaf installiert und konfiguriert werden.

Vor der Installation und Konfiguration sehen bei mir die Logeintraege wie folgt aus:

[Sat Nov 09 18:32:14 2013] [error] [client 10.10.10.10] File does not exist: /var/www/foobar

Die Installation des Moduls erfolgt bei Debian aus den Paketquellen:

apt-get install libapache2-mod-rpaf

Anschliessend muss das Modul aktiviert werden:

a2enmod rpaf

Konfiguriert wird es in der Datei /etc/apache2/mods-enabled/rpaf.conf. Dort muss die IP des oder der Proxy-Server entsprechend hinzugefuegt werden. In dem Beispiel oben ist 10.10.10.10 der Proxy-Server und wird entsprechend unter RPAFproxy_ips hinzugefuegt:

<IfModule rpaf_module>
    RPAFenable On
 
    # When enabled, take the incoming X-Host header and
    # update the virtualhost settings accordingly:
    RPAFsethostname On
 
    # Define which IP's are your frontend proxies that sends
    # the correct X-Forwarded-For headers:
    RPAFproxy_ips 10.10.1.2
 
    # Change the header name to parse from the default
    # X-Forwarded-For to something of your choice:
#   RPAFheader X-Real-IP
</IfModule>

Nach dem Neustart des Apache Webservers steht dann die korrekte IP in der Logdatei:

[Sat Nov 09 18:46:32 2013] [error] [client 77.176.69.123] File does not exist: /var/www/foobar

prego

/me... prego!

Ein Gedanke zu „Apache2 mod_proxy und mod_rpaf“

  1. Hello,
    thanks for your article.
    I have a debian with apache2.2 mod_proxy to a nginx server and other apache2 server.

    I have enabled the rpaf_module but the internals servers show the same the proxy ip.

    The apache host of the ip is:

    ServerName test.mydomain.com
    ProxyRequests On
    ProxyPreserveHost on
    ProxyPass / http://192.168.11.22/
    ProxyPassReverse / http://192.168.11.22/

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.