Outils pour utilisateurs

Outils du site


poundreverseproxy

Installation et configuration du revers-proxy **[Pound|http://www.apsis.ch/pound/]**

objectif:

Permettre l'accès à certains services web sur des machines internes à partir de l'extérieur

principe:

le filtrage se fait en fonction de l'url exacte demandée.

Pré requis:

plusieurs alias dns pointant sur la même ip. Exemple pour les domaines ox.opendoor.fr et www.opendoor.fr pointant tout deux sur opendoor.fr, soit 5.5.5.5

le domaine ox.opendoor.fr est désservi part la machine 10.0.0.1 BR le domaine www par la machine locale

toutes les requètes à destination de ox.opendoor.fr sont donc transmises à 10.0.0.1.

installation

# apt-get install pound

configuration d'apache:

le serveur web de la machine locale n'est plus en frontal, d'où la modification de son port d'écoute:

[[:vim|vim]]/etc/apache/httpd.conf
Listen 127.0.0.1:8080

configuration du reverse-proxy:

# [[:vim|vim]] /etc/pound/pound.cfg
User            www-data
Group           www-data
ExtendedHTTP    1
WebDAV          1
LogLevel        0
Alive           30
ListenHTTP 	  *,80
# redirection d'ox.[[:commercial:opendoor|opendoor]].fr sur la machine 10.0.0.1, port 80 avec la priorité 1
# il s'agit d'un mapping sur le nom de machine
UrlGroup ".  *"
HeadRequire Host ".  *[[:old:ox|ox]].[[:commercial:opendoor|opendoor]].fr. *"
Backend 10.0.0.1,80,1
EndGroup

# pour un mapping sur une URL:
# redirection [[:commercial:opendoor|opendoor]].fr/test vers la machine 10.0.0.2
UrlGroup "/test"
Backend 10.0.0.2,80,1
EndGroup

# tout le reste est redirigé vers le serveur web local
UrlGroup ".  *"
BackEnd localhost,8080,1
EndGroup

Démarrage:

# [[:vim|vim]] /etc/default/pound:
STARTUP=1
/etc/init.d/pound start

Remarques:

lorsque une requète http arrive sur le proxy, c'est ce dernier qui émet la requète vers la machine finale et qui retransmet le résultat au client.

Donc d'un point de vue de la machine finale, les requètes viennent de localhost, donc les contrôles d'accès basées sur les adresses clientes sont inefficaces.

Si pound n'est pas lancé, /etc/init.d/pound restart will failed silently.

Les commentaires au même niveau qu'une ligne de configuration dans pound.cfg entraînent une erreur de syntaxe et un echec au démarrage.

Pour le mapping par dossier le dossier cible doit être le même pour le frontal et le serveur: BR si on a UrlGroup /toto le dossier toto doit exister sur le serveur de backend

# vim: set filetype=dokuwiki:

poundreverseproxy.txt · Dernière modification: 2015/10/06 20:06 (modification externe)