Je veux ajouter les paramètres du proxy SOCKS à /etc/apt/apt.conf. Quelle en est la syntaxe? Est-ce la même que la syntaxe http et ftp?
Merci.
Une solution possible peut être d'utiliser tsocks
, une application qui peut rediriger le trafic réseau via un proxy de chaussettes. Installez le tsocks
package, modifiez /etc/tsocks.conf
pour définir l'adresse et le numéro de port de votre proxy socks, et exécutez:
$ sudo -s
# tsocks apt-get update
# tsocks apt-get dist-upgrade
# exit
$
ou
$ sudo -s
# . tsocks -on
# apt-get update
# apt-get dist-upgrade
# . tsocks -off # not really necessary, given the exit
# exit
$
Vous pouvez penser à un certain nombre d'options, pour simplifier et automatiser son utilisation.
N'oubliez pas le premier point, la page de manuel contient plus de détails à ce sujet.
Edit : une façon plus courte de l'utiliser:
$ sudo tsocks apt-get update
$ sudo tsocks apt-get dist-upgrade
sudo tsocks apt-get install tsocks
. Hahahahahaha ...tsocks
, l'installer puis utiliser :)Acquire::http::Proxy "socks5h://hostname:port/"
. Voir le changelog sur anonscm.debian.org/gitweb/?p=apt/apt.git;a=blob;f=debian/…apt-get something
!Acquire::socks::Proxy "socks5h://hostname:port/";
fait l'affaire. Http ne le fait pas - essayez-le avec Tor et vous verrez une réponse standard "Tor n'est pas un proxy http", donc lehttp
va remplacé parsocks
- et cela fonctionne!Cela fonctionne pour moi sur Ubuntu 18.04. Comme le dit la page de manuel, socks5h, et non socks5, est pris en charge par apt, ce qui signifie un proxy socks5 avec une capacité de résolution DNS.
la source
Acquire::https::proxy "socks5h://server:port";
d'une règle de proxy à unapt.conf.d
fichier (comme/etc/apt/apt.conf.d/12proxy
) fonctionne très bien. Je suggère de s'en tenir à https, sauf indication contraire.Acquire::http::proxy "socks5h://user:pass@server:port";
. La règle ci-dessus fonctionne très bien dans Ubuntu 18.04. Ici, lasocks5h
résolution DNS est appliquée au serveur proxy.L'utilisation de la prochaine ligne de configuration fonctionne pour moi:
Pour rester
apt.conf
propre et éviter les problèmes lors de la mise à niveau de Linux, j'ai créé un nouveau fichier (/etc/apt/apt.conf.d/12proxy
) et y ai ajouté le fichier de configuration.la source
Je n'ai rien trouvé sur Acquire :: socks :: proxy dans le manuel apt.conf d'Ubuntu Xenial. Vous pouvez résoudre ce problème en exécutant un proxy http local qui prend en charge le proxy de chaussettes en amont, par exemple Polipo. Vous devez configurer Polipo comme suit:
puis définissez le proxy http dans votre fichier apt.conf:
la source
Ou vous pouvez mettre quelque chose comme ceci dans votre /etc/apt/apt.conf:
la source
Acquire::http::proxy "socks://user:pass@host:port/";
Acquire::socks
c'est pour définir le proxy pour les URL qui commencent parsocks://
. Donc , cela signifie que vous ne pas besoin d' un proxy pour accéder à Internet, etapt
n'utilise pas de proxy pourftp://
,http://
ouhttps://
..apt
ne supporte que HTTP proxy, par exempleAcquire::http::proxy "http://localhost:8118
.Dans Debian, vous pouvez lire la page de manuel
apt-transport-http(1)
et rechercher les schémas d'URI pris en charge. Comme il a été répondu précédemment, mettezdans
Vous pouvez en savoir plus sur APT-config en général dans
apt.conf(5)
et lire les exemples/usr/share/doc/apt/examples/configure-index.gz
mentionnés à la fin de la page de manuel.Ceci peut être combiné avec
ssh -D <LOCAL PORT> <USER>@<HOST>
pour créer un proxy SOCKS vers un système différent afin qu'apt puisse ensuite utiliser le proxy comme si tout était originaire<HOST>
.Si vous utilisez
ssh -D 0.0.0.0:<LOCAL PORT> <USER>@<HOST>
oussh -D [::]:<LOCAL PORT> <USER>@<HOST>
(pour IPv6) pour permettre à d'autres systèmes d'utiliser le proxy SOCKS sur toutes les interfaces. Cela peut être un risque pour la sécurité ou une violation de la politique (d'entreprise). Assurez-vous de savoir ce que vous faites.la source