Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ceci est une ancienne révision du document !
Nota :
Contributeurs, les sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !
Pour garder notre système propre, nous n'allons pas installer les serveurs proxy directement sur le système mais dans un conteneur. Si vous préférez installer cela directement sur votre système, passez au chapitre suivant « Installation des proxies. »
Pour cela, nous aurons besoin des outils de gestion des conteneurs.
apt-get install lxc
La création du conteneur se fait très simplement :
lxc-create -n proxies -t debian -- -r wheezy
mkdir -p /etc/lxc/auto ln -s /var/lib/lxc/proxies/config /etc/lxc/auto/proxies.conf
lxc.start.auto = true
. Je n'ai cependant pas encore réussi à la faire fonctionner.
Par défaut, le conteneur créé partage son interface réseau avec l'hôte. C'est le cas que nous traiterons ici. Si vous voulez créer une configuration différente, référez-vous au tuto LXC du wiki.
Pour aider les conteneurs à rester minimaux, on peut désactiver le traitement par APT des recommandations comme des dépendances.
APT::Install-Recommends "false"; APT::Install-Suggests "false";
Démarrage silencieux du conteneur :
lxc-start -n proxies -d
Obtention d'un shell (root) dans le conteneur :
lxc-attach -n proxies
Par défaut, un conteneur est installé avec un système très épuré. Pour ce qui suis, vous voulez probablement installer quelques outils dans le conteneur. Obtenez un shell root dans le conteneur et saisissez par exemple :
apt-get install --no-install-recommends vim-nox nano less aptitude
On suppose maintenant que l'on est dans un shell root dans notre LXC (ou sur son système si l'on a choisi de ne pas créer de conteneur.)
Dans un premier temps, nous allons configurer un serveur proxy Squid tout simple.
apt-get install --no-install-recommends squid3
Ajouter en fin du fichier /etc/squid/squid.conf
les lignes :
via off forwarded_for delete
Rechercher et dé-commenter les deux lignes suivantes
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network […] http_access allow localnet
Vous pouvez adapter la première ligne pour qu'elle corresponde au réseau qui doit avoir accès au serveur proxy, par exemple pour un réseau en « 192.168.42.X » :
acl localnet src 192.168.42.0/24
Vous pouvez également autoriser plusieurs réseaux en rajoutant des lignes similaires :
acl voisinnet src 192.168.17.0/24 http_access allow voisinnet
service squid3 restart
Ça y est. Il suffit maintenant d'indiquer aux navigateurs d'utiliser localhost:3128 comme serveur proxy. Cela peut également se faire en mettant
export http_proxy="http://localhost:3128/"
dans le fichier ~/.bashrc
, ou même dans le fichier /etc/environment
.
Maintenant, si l'on souhaite que les requêtes sortant de Squid soient « nettoyées » ne nos informations personnelles avant d'aller sur internet, il nous faut (en)chaîner squid et privoxy.
apt-get install --no-install-recommends privoxy
Rajouter à la fin :
cache_peer 127.0.0.1 parent 8118 0 no-query never_direct allow all always_direct deny all
Cela indique à squid de passer par le proxy « parent » présent sur 127.0.0.1:8118 (c'est à dire privoxy), et de ne jamais contacter les sites web directement.
service squid restart
Et voilà, vos navigateurs utilisant squid3 envoient maintenant leurs requêtes via privoxy.
apt-get install --no-install-recommends tor
Chercher et dé-commenter la ligne suivante :
forward-socks5 / 127.0.0.1:9050 .
service privoxy restart
…
Vous ne voulez probablement pas utiliser TOR pour vos paquets APT. D'une part cela surcharge le réseau, ce qui est mal. D'autre part, ça n'est pas réellement intéressant d'anonymiser le téléchargement de ses mises à jour…
apt-get install apt-cacher-ng
À faire sur toutes les machines de votre réseau :
Acquire::http::Proxy "http://127.0.0.1:3142";
En remplaçant 127.0.0.1 par l'adresse de votre conteneur le cas échéant.
On suppose ici que l'installation a été faite sur un conteneur ou un serveur dédié à jouer le rôle de proxy.
Si votre serveur proxy est destiné à être utilisé par d'autres utilisateurs que vous, vous pouvez souhaiter changer un peu la configuration. Par exemple, seuls deux ports (deux services) doivent être visibles depuis l'extérieur :
Deux solutions s'offrent à vous pour vous assurer que les autres services soient invisibles de l'extérieur du proxy.