Proxy debian
| 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
- Squid — le proxy côté serveur
- Squid authentification — authentifier les clients plutôt que d'embarquer des identifiants dans la configuration
- Passerelle internet linux — mise en place complète d'une passerelle avec proxy