Proxy debian

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Domaine Faire passer un client Debian/Ubuntu par un proxy
Fichier APT /etc/apt/apt.conf.d/30proxy
Voir aussi Squid · Passerelle internet linux

Sur un réseau où les accès sortants doivent transiter par un mandataire (par exemple Squid), il faut déclarer ce proxy côté client pour qu'APT — et plus généralement les outils en ligne de commande — l'utilisent au lieu de sortir directement.

Configuration APT

Créer /etc/apt/apt.conf.d/30proxy :

Acquire::http::Proxy "http://utilisateur:motdepasse@proxy.exemple.local:8080/";
Acquire::ftp::Proxy "ftp://utilisateur:motdepasse@proxy.exemple.local:8080/";
Acquire::https::Proxy "https://utilisateur:motdepasse@proxy.exemple.local:8080/";

Si le proxy n'exige pas d'authentification (cas courant sur un LAN où l'accès est déjà filtré par IP, voir Squid authentification pour les alternatives), omettre simplement la partie utilisateur:motdepasse@.

Point d'attention sécurité : des identifiants en clair dans ce fichier restent lisibles par quiconque a accès au fichier. Restreindre ses permissions (chmod 640, propriétaire root) et, si possible, préférer un contrôle d'accès par IP côté Squid plutôt que des identifiants embarqués dans la configuration APT.

Proxy pour l'ensemble du shell

Au-delà d'APT, la plupart des outils en ligne de commande (curl, wget, git…) respectent les variables d'environnement standard. Pour les définir au niveau système, dans /etc/environment :

http_proxy="http://proxy.exemple.local:8080/"
https_proxy="http://proxy.exemple.local:8080/"
ftp_proxy="http://proxy.exemple.local:8080/"
no_proxy="localhost,127.0.0.1,.exemple.local"

no_proxy liste les destinations à contacter en direct, sans passer par le mandataire — indispensable pour les ressources internes au réseau local.

Voir aussi