Sam travaille comme analyste de réseau pour une société de trading algorithmique. Il a obtenu son baccalauréat en technologie de l’information de l’UMKC.
Polipo possède plusieurs fonctionnalités intéressantes qui en font une bonne alternative à d’autres proxys plus populaires tels que Squid. La plus attrayante de ces fonctionnalités est le pipelining HTTP.
Le pipelining permet au proxy d’envoyer plusieurs requêtes HTTP sur une seule connexion sans avoir à attendre que les réponses reviennent. L’efficacité accrue du pipelining peut améliorer considérablement la vitesse de navigation sur le Web.
Une autre fonctionnalité intéressante de Polipo est sa capacité à mettre en cache des instances partielles. Si une connexion est interrompue pendant une requête, le proxy stockera la partie de la requête qui a déjà été complétée en tant qu’objet partiel.
Lorsqu’une nouvelle demande pour le même objet est reçue, le proxy peut demander uniquement la partie manquante de la demande en utilisant une demande de plage HTTP. Polipo n’est actuellement pas disponible en tant que package pfSense, mais comme une version FreeBSD existe déjà, il peut toujours être installé relativement facilement.
Le processus implique l’édition de quelques fichiers de configuration, mais croyez-moi, cela en vaut la peine !
Installation du package Polipo
Étant donné que Polipo n’est pas un package officiellement pris en charge, il ne peut pas être installé via le gestionnaire de packages pfSense. Au lieu de cela, Polipo doit être installé via le shell de ligne de commande à l’aide de la commande pkg_add.
pkg_add -r ftp://ftp-archive.freebsd.org/pub/FreeBSD-Archive/ports/i386/packages-8.1-release/Latest/polipo.tbz
La commande ci-dessus peut également être exécutée via la fonction d’exécution de commande dans le menu de diagnostic ou via une session de terminal SSH.
Polipo est un très petit package, il ne prendra donc pas beaucoup de temps à installer.
Création du fichier de configuration Polipo
Le package Polipo installe un exemple de fichier de configuration qui peut être modifié en fonction de votre réseau. Exécutez les commandes ci-dessous pour copier l’exemple de fichier de configuration dans un nouveau fichier appelé config.
cd /usr/local/etc/polipo/
cp config.exemple de configuration
Ensuite, modifiez le fichier de configuration à l’aide de l’éditeur vi ou de l’éditeur de fichiers basé sur le Web (Diagnostics \ Edit File).
configuration vi
Faites défiler pour continuer
Décommentez la ligne suivante dans la section de configuration de base du fichier de configuration. Ceci indique à Polipo d’écouter sur toutes les interfaces du système.
proxyAddress = « 0.0.0.0 » # IPv4 uniquement
Pour sécuriser le proxy, décommentez la ligne suivante et modifiez l’adresse réseau pour qu’elle corresponde au sous-réseau LAN de votre réseau local.
En raison d’un bogue dans le package FreeBSD Polipo, vous devez supprimer les guillemets doubles de la ligne de commande. Si vous oubliez de supprimer les guillemets, le message « Impossible d’analyser le réseau » s’affichera lorsque vous tenterez de démarrer Polipo.
Clients autorisés = 127.0.0.1, 192.168.10.0/24
Réglages facultatifs du fichier de configuration
Modification du fichier rc.conf
Avant que le serveur Polipo ne démarre, le fichier rc.conf doit être modifié pour contenir polipo_enable=yes. Sur pfSense, ce fichier se trouve dans le répertoire /etc/defaults.
Cette entrée peut être ajoutée à n’importe quel emplacement du fichier rc.conf. Dans l’exemple ci-dessous, je l’ai ajouté à la fin du fichier à l’aide de l’éditeur de fichiers Web.
Si vous préférez utiliser SSH, vous pouvez utiliser la commande suivante pour ajouter automatiquement l’indicateur de configuration au bas du fichier rc.conf.
echo « polipo_enable=yes » >> /etc/defaults/rc.conf
Configuration du script d’initialisation
Pour s’assurer que le service Polipo démarre correctement, il est nécessaire de modifier le script de démarrage. Ajoutez les commandes ci-dessous au début du fichier /usr/local/etc/rc.d/polipo juste après la section des commentaires.
[ -d /var/run/polipo ] || mkdir /var/run/polipo
chown -R polipo /var/run/polipo/
La première commande crée le répertoire /var/run/polipo s’il n’existe pas. La deuxième commande change le propriétaire de ce répertoire en utilisateur Polipo.
Ces commandes supplémentaires sont nécessaires car pfSense supprime tous les répertoires supplémentaires dans /var/run au démarrage du système. Sans ces commandes dans le script, Polipo ne pourra pas s’exécuter après un redémarrage.
Créer le script de démarrage
Pour que pfSense démarre automatiquement Polipo au démarrage, un script de démarrage doit être créé dans /usr/local/etc/rc.d.
PfSense exécutera automatiquement tous les fichiers de ce répertoire se terminant par .sh lors du démarrage du système.
Les commandes ci-dessous créeront le script de démarrage polipo.sh et rendront le script exécutable.
touchez /usr/local/etc/rc.d/polipo.sh
chmod +x /usr/local/etc/rc.d/polipo.sh
Une fois le script créé, copiez et collez le contenu ci-dessous dans le fichier et enregistrez-le. Comme pour les étapes précédentes, cela peut être fait avec l’éditeur vi (vi /usr/local/etc/rc.d/polipo.sh) ou l’éditeur de fichiers basé sur le Web.
polipo.sh
#!/bin/sh rc_start() { /usr/local/etc/rc.d/polipo start } rc_stop() { /usr/local/etc/rc.d/polipo stop } case $1 in start) rc_start ;; stop) rc_stop ;; restart) rc_stop rc_start ;; esac
Démarrer le service proxy Polipo
Tout est enfin en place pour démarrer le service Polipo.
/usr/local/etc/rc.d/polipo.sh start
Pour vous assurer que le service a été lancé avec succès, vérifiez le fichier journal Polipo.
queue /var/log/polipo
Si tout fonctionne correctement, vous devriez voir un message indiquant « Prise d’écoute établie sur le port 8123 ».
Test du serveur proxy
Une fois que Polipo est opérationnel, il est temps de tester le serveur proxy avec un navigateur Web. Sur les ordinateurs exécutant Windows 7, le proxy peut être ajouté via le menu des options Internet du panneau de configuration.
Dans le menu des propriétés Internet, cliquez sur le robinet de connexions, puis cliquez sur le bouton Paramètres LAN.
Ajout de l’IP du serveur proxy
Dans les paramètres LAN, cochez dans le panneau de configuration la case « Utiliser un serveur proxy pour votre LAN ». Entrez l’adresse IP LAN de votre serveur pfSense dans la zone d’adresse, puis entrez 8123 comme port proxy.
Le port 8123 est le port par défaut pour polipo mais il peut être modifié en ajoutant la variable proxyPort au fichier de configuration.
Tester l’accès à Internet
Après avoir ajouté l’adresse IP et le port du proxy, enregistrez les paramètres, puis essayez d’accéder à une page Web via un navigateur. Si la page se charge correctement, le proxy Polipo fonctionne correctement.
si les pages Web ne se chargent pas, vérifiez que Polipo est en cours d’exécution. Le moyen le plus rapide de vérifier l’état du service Polipo est d’exécuter la commande ci-dessous.
/usr/local/etc/rc.d/état polipo
Vous devriez voir un message indiquant que polipo s’exécute en tant que pid xxxxx.
Accéder à l’interface Web Polipo
Lorsque le démon Polipo est en cours d’exécution, l’interface Web du serveur est accessible sur l’interface LAN sur le port 8123.
L’interface Web fournit des rapports d’état utiles liés à l’état actuel du serveur proxy.
La page de configuration vous permet également de visualiser tous les paramètres actuellement configurés. Le lien config permet également de modifier facilement plusieurs paramètres.
Ressources additionnelles
L’auteur de Polipo a créé beaucoup de documentation pour Polipo sur son site Web. Je vous recommande de lire la section FAQ qui contient plusieurs trucs et astuces utiles.
Dans le manuel, vous trouverez des détails plus détaillés pour presque toutes les questions que vous pourriez avoir concernant Polipo.
Cet article est exact et fidèle au meilleur de la connaissance de l’auteur. Le contenu est uniquement à des fins d’information ou de divertissement et ne remplace pas un conseil personnel ou un conseil professionnel en matière commerciale, financière, juridique ou technique.
© 2013 Sam Kear
homme héros le 04 mars 2017 :
Bro, si j’installe Polipo Proxy Service, et en même temps je veux utiliser SquidGuard comme filtrage Web, c’est possible
Jomar le 04 juillet 2015 :
pouvez-vous faire un tutoriel comment l’installer dans windows? et puis-je l’utiliser sur mon ordinateur portable ? Merci
Sam Kear (auteur) de Kansas City le 27 mars 2015 :
@JulioQc
Merci de me l’avoir signalé, je l’ai corrigé dans l’article.