Je rencontre un problème avec mon serveur proxy d'entreprise. Une exception a été mise en place pour permettre le passage de mon adresse IP, mais je n'ai pas réussi à faire fonctionner apt-get
.
wget
peut accéder au dépôt Ubuntu sans problème.
root@server:/tmp# http_proxy=http://<PROXY>:8080 wget http://us.archive.ubuntu.com/ubuntu/dists/precise-backports/multiverse/binary-i386/Packages.bz2
--2014-01-24 09:17:38-- http://us.archive.ubuntu.com/ubuntu/dists/precise-backports/multiverse/binary-i386/Packages.bz2
Resolving <PROXY> (<PROXY>)... x.x.x.25, x.x.x.24
Connecting to <PROXY> (<PROXY>)|x.x.x.25|:8080... connected.
Proxy request sent, awaiting response... 200 OK
Length: 5178 (5.1K) [application/x-bzip2]
Saving to: `Packages.bz2'
100%[========================================>] 5,178 --.-K/s in 0.001s
2014-01-24 09:17:38 (7.78 MB/s) - `Packages.bz2' saved [5178/5178]
root@server:/tmp# ll -h
total 16K
drwxrwxrwt 2 root root 4.0K Jan 24 09:17 ./
drwxr-xr-x 23 root root 4.0K Jan 16 14:14 ../
-rw-r--r-- 1 root root 5.1K Jan 24 09:05 Packages.bz2
root@server:/tmp#
Je configure mes configurations de proxy apt-conf.d.
root@server:/tmp# cat /etc/apt/apt.conf.d/30proxy
Acquire::http::proxy "http://<PROXY>:8080";
Acquire::ftp::proxy "ftp://<PROXY>:8080";
Acquire::https::proxy "https://<PROXY>:8080";
root@server:/tmp#
apt-get
échoue toujours avec une erreur 403 Forbidden
.
root@server:/tmp# apt-get update
Ign http://us.archive.ubuntu.com precise Release.gpg
<...snipped excess...>
Ign http://us.archive.ubuntu.com precise-backports/universe TranslationIndex
Err http://security.ubuntu.com precise-security/main Sources
403 Forbidden [IP: x.x.x.25 8080]
<...snipped excess...>
Err http://security.ubuntu.com precise-security/multiverse i386 Packages
403 Forbidden [IP: x.x.x.25 8080]
W: Failed to fetch http://us.archive.ubuntu.com/ubuntu/dists/precise/main/source/Sources 403 Forbidden [IP: x.x.x.24 8080]
<...snipped excess...>
W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/precise-security/multiverse/binary-i386/Packages 403 Forbidden [IP: x.x.x.25 8080]
E: Some index files failed to download. They have been ignored, or old ones used instead.
root@server:/tmp#
PROXY remplace le nom de domaine complet de mon serveur proxy
Le problème concerne l'agent utilisateur signalé . C'est pourquoi le proxy a travaillé avec wget et non avec apt-get.
J'ai exécuté tcpdump -Ai eth0 port 8080
pour voir à quoi ressemblait le http et j'ai reçu un message "Agent utilisateur non approuvé" de notre proxy d'entreprise.
<...snip...>
<h1>ACCESS DENIED</h1>
<p>The software you are accessing the internet with is not reporting an
approved "User-Agent"</p>
<...snip...>
Le buntu Manpage avait une section qui explique ce paramètre de configuration.
Acquire :: http :: User-Agent peut être utilisé pour définir un agent utilisateur différent pour la méthode de téléchargement http, car certains mandataires autorisent l'accès aux clients uniquement si le client utilise un identificateur connu.
erreur apt-get 307 fourni la syntaxe nécessaire, vous ajoutez simplement la syntaxe ci-dessous à /etc/apt/apt.conf.d/30proxy
(ou à votre choix).
Acquire::http::User-Agent "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)";
Maintenant, les mises à jour d'apt-get sont parfaitement exécutées.
root@server:/etc/apt/apt.conf.d# apt-get update
Hit http://security.ubuntu.com precise-security Release.gpg
Hit http://us.archive.ubuntu.com precise Release.gpg
<...snip...>
Hit http://us.archive.ubuntu.com precise-backports/multiverse Translation-en
Hit http://us.archive.ubuntu.com precise-backports/restricted Translation-en
Hit http://us.archive.ubuntu.com precise-backports/universe Translation-en
Reading package lists... Done