apt.conf "Acquérir :: http: Proxy" proxyserver: port "ne semble pas être utilisé (Ubuntu 13.04 sous Virtual Box sur Win7)

9

Ceci est pour une installation de Ubuntu 13.04 Desktop dans une VM VirtualBox. Je suis sur un réseau corprate avec un proxy HTTP à x.y.z.251: 9090. J'ai configuré le système d'exploitation invité avec le script de configuration automatique, de sorte que Firefox fonctionne correctement, mais je ne peux pas connecter "apt-get" ou "Ubuntu Software Center" à l'aide du proxy.

J'ai créé le fichier "/etc/apt/apt.conf", il contient maintenant une seule ligne de texte:

Acquire::http:Proxy "http://x.y.z.251:9090"

qui est ce que le fichier proxy.pac que j'ai spécifié dans "Paramètres système / Réseau / Proxy réseau" et appliqué à l'ensemble du système.

Lorsque j'utilise Firefox, une trace de paquet indique que la connexion TCP est effectuée via le proxy d'entreprise sur le port 9090, lorsque je lance "Ubuntu Software Center" et "apt-get", la trace de paquet affiche les paquets TCP SYN avec adresse de destination et port 80 éventuels. Il n'y a bien sûr pas de réponse aux paquets SYN, car le pare-feu de l'entreprise bloque l'entrée ou la sortie des connexions TCP sur le port 80.

Avec "sudo apt-get" dans une fenêtre de terminal, je vois toujours:

Ign cdrom://Ubuntu 13.04 _Raring Ringtail_ - Release amd64 (20130424) raring/main Translation-en_US
Ign cdrom://Ubuntu 13.04 _Raring Ringtail_ - Release amd64 (20130424) raring/main Translation-en
Ign cdrom://Ubuntu 13.04 _Raring Ringtail_ - Release amd64 (20130424) raring/restricted Translation-en_US
Ign cdrom://Ubuntu 13.04 _Raring Ringtail_ - Release amd64 (20130424) raring/restricted Translation-en
Err http://extras.ubuntu.com raring Release.gpg 
  Could not connect to extras.ubuntu.com:80 (91.189.92.152), connection timed out
Err http://archive.canonical.com raring Release.gpg 
  Cannot initiate the connection to archive.canonical.com:80 (2001:67c:1360:8c01::1b). - connect (101: Network is unreachable) [IP: 2001:67c:1360:8c01::1b 80]
Err http://us.archive.ubuntu.com raring Release.gpg 
  Cannot initiate the connection to us.archive.ubuntu.com:80 (2001:67c:1562::14). - connect (101: Network is unreachable) [IP: 2001:67c:1562::14 80]
Err http://us.archive.ubuntu.com raring-updates Release.gpg
  Cannot initiate the connection to us.archive.ubuntu.com:80 (2001:67c:1562::14). - connect (101: Network is unreachable) [IP: 2001:67c:1562::14 80]
Err http://us.archive.ubuntu.com raring-backports Release.gpg
  Cannot initiate the connection to us.archive.ubuntu.com:80 (2001:67c:1562::14). - connect (101: Network is unreachable) [IP: 2001:67c:1562::14 80]
59% [Connecting to security.ubuntu.com (91.189.91.14)]

Finalement, je vois:

Err http://security.ubuntu.com raring-security Release.gpg
  Cannot initiate the connection to security.ubuntu.com:80 (2001:67c:1360:8c01::18). - connect (101: Network is unreachable) [IP: 2001:67c:1360:8c01::18 80]
Reading package lists... Done                          
W: Failed to fetch http://us.archive.ubuntu.com/ubuntu/dists/raring/Release.gpg  Cannot initiate the connection to us.archive.ubuntu.com:80 (2001:67c:1562::14). - connect (101: Network is unreachable) [IP: 2001:67c:1562::14 80]

W: Failed to fetch http://us.archive.ubuntu.com/ubuntu/dists/raring-updates/Release.gpg  Cannot initiate the connection to us.archive.ubuntu.com:80 (2001:67c:1562::14). - connect (101: Network is unreachable) [IP: 2001:67c:1562::14 80]

W: Failed to fetch http://us.archive.ubuntu.com/ubuntu/dists/raring-backports/Release.gpg  Cannot initiate the connection to us.archive.ubuntu.com:80 (2001:67c:1562::14). - connect (101: Network is unreachable) [IP: 2001:67c:1562::14 80]

W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/raring-security/Release.gpg  Cannot initiate the connection to security.ubuntu.com:80 (2001:67c:1360:8c01::18). - connect (101: Network is unreachable) [IP: 2001:67c:1360:8c01::18 80]

W: Failed to fetch http://archive.canonical.com/ubuntu/dists/raring/Release.gpg  Cannot initiate the connection to archive.canonical.com:80 (2001:67c:1360:8c01::1b). - connect (101: Network is unreachable) [IP: 2001:67c:1360:8c01::1b 80]

W: Failed to fetch http://extras.ubuntu.com/ubuntu/dists/raring/Release.gpg  Could not connect to extras.ubuntu.com:80 (91.189.92.152), connection timed out

W: Some index files failed to download. They have been ignored, or old ones used instead.

Je ne suis pas du tout certain de ce que je fais mal.

--- Mise à jour ---- J'ai aussi essayé:

Acquire::http:proxy "http://user:[email protected]:9090/"

"x.y.z" sont, bien sûr, des place-place; Je doute que les responsables de la sécurité de mon employeur m'apprécient de poster les chiffres réels. Je ne vois aucune différence dans la trace du paquet - "apt-get" utilise toujours les vraies adresses IP et le port 80. J'ai fait une erreur délibérée dans le fichier apt.conf et "apt-get" s'est terminé avec une erreur, donc j'ai Je suis certain qu’il voit cette ligne de configuration pour le proxy, il ne semble tout simplement pas l’honorer.

J'utilise la connexion réseau "NAT", car celle-ci est contraire à la stratégie informatique ici pour établir un pont entre les réseaux, et le serveur DHCP fournit uniquement des adresses à des adresses MAC connues. Je ne veux pas que la sécurité informatique frappe de nouveau sur mon cube.

    
posée Daniel Glasser 25.09.2013 - 01:11
la source

3 réponses

11

Sur la base de mon expérience passée, Ubuntu global (GNOME) ne fonctionne pas très bien avec PAC (Automatic Config). Pac (Proxy Auto-config) est en fait une logique JavaScript pour déterminer le proxy le plus proche ou le plus approprié pour vous, je vous recommande fortement d'utiliser directement les serveurs proxy (dans votre cas, Network - Network Proxy).

Quelques points à vérifier

Vérifiez votre /etc/apt/apt.conf

L'interface réseau de Network Proxy met à jour /etc/apt/apt.conf et définit les informations de proxy à cet emplacement.

Découvrez les informations du serveur proxy de pac

Vous pouvez trouver les détails en lisant le fichier proxy.pac quand même.

Donc, /etc/apt/apt.conf devrait ressembler à celui-ci (supposons que le serveur proxy soit = ​​& gt; proxy.company.com, port 80), n'utilisez PAS l'URL pac.

Acquire::http::proxy "http://proxy.company.com:80/";
Acquire::https::proxy "https://proxy.company.com:80/";
Acquire::ftp::proxy "ftp://proxy.company.com:80/";
  

REMARQUE: Si aucun proxy n’est spécifié dans les fichiers de configuration apt, apt-get utilisera la variable d’environnement http_proxy .

À partir de la page de manuel d'apt.conf, répondez au commentaire de @Braiam

   http
       HTTP URIs; http::Proxy is the default http proxy to use. It is in
       the standard form of http://[[user][:pass]@]host[:port]/. Per host
       proxies can also be specified by using the form http::Proxy::<host>
       with the special keyword DIRECT meaning to use no proxies. If no
       one of the above settings is specified, http_proxy environment
       variable will be used.

Vérifier les variables d'environnement proxy

Vous pouvez vérifier les paramètres de proxy en exécutant le terminal suivant

echo $http_proxy
echo $https_proxy
echo $ftp_proxy

Si vous définissez correctement les variables env, vous devriez pouvoir mettre à jour en CLI.

Préférez IPv4

J'ai remarqué que apt-get essayait de se connecter aux serveurs de mise à jour en utilisant leur adresse ipv6. Cela pourrait causer des problèmes (parfois les adresses IPV6 expirent ou changent).

Vous pouvez éditer /etc/gai.conf et ajouter precedence ::ffff:0:0/96 100 pour préférer ipv4 à ipv6.

Plus de détails

réponse donnée Terry Wang 25.09.2013 - 06:02
la source
4

Je crois avoir eu ce problème et la réponse est simple. La syntaxe est critique. Cela doit ressembler à ceci:

Acquire::http::Proxy "http://x.y.z.251:9090";

(Il y a un "" supplémentaire et un "") "

    
réponse donnée k-h 12.09.2014 - 06:41
la source
1

@Braiam

Je pense qu'il est préférable de commencer une réponse séparée pour clarifier les choses.

J'ai fait un test rapide en utilisant Vagrant et une machine virtuelle Ubuntu 13.04 Raring x86_64 derrière un pare-feu.

la version d'apt-get est 0.9.7.7ubuntu4

[email protected]:~# apt-get --version 
apt 0.9.7.7ubuntu4 for amd64 compiled on Apr 12 2013 23:49:05
Supported modules:
*Ver: Standard .deb
*Pkg:  Debian dpkg interface (Priority 30)
 Pkg:  Debian APT solver interface (Priority -1000)
 S.L: 'deb' Standard Debian binary tree
 S.L: 'deb-src' Standard Debian source tree
 Idx: Debian Source Index
 Idx: Debian Package Index
 Idx: Debian Translation Index
 Idx: Debian dpkg status file
 Idx: EDSP scenario file

Mise à jour: Cela fonctionne de la même manière sur Precise 12.04.3

[email protected]:/etc/apt# uname -a
Linux support 3.8.0-30-generic #44~precise1-Ubuntu SMP Fri Aug 23 17:33:45 UTC 2013 i686 i686 i386 GNU/Linux
[email protected]:/etc/apt# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 12.04.3 LTS
Release:        12.04
Codename:       precise
[email protected]:/etc/apt# apt-get --version
apt 0.8.16~exp12ubuntu10.14 for i386 compiled on Sep  8 2013 03:26:42

1er - effacer les fichiers de configuration apt

J'ai effacé les paramètres de proxy dans /etc/apt/apt.conf . J'ai également analysé ack et ag de tous les fichiers et sous-répertoires /etc/apt pour vérifier qu'il n'y a pas de proxy dans les fichiers de configuration apt.

Par défaut, les variables {http_proxy,https_proxy,ftp_proxy} env ne sont pas définies.

apt-get n'a pas pu se connecter aux serveurs de mise à jour.

[email protected]:~# apt-get -o Debug::Acquire::http=true update
0% [Connecting to au.archive.ubuntu.com (202.158.214.106)] [Connecting to security.ubuntu.com (91.189.91.13)] [Connecting to ppa.launchpad.net (91.189.95.83)]

2ème - Définir les variables d’environnement

Définissez simplement les variables proxy

export {http_proxy,https_proxy,ftp_proxy}="http://10.xxx.xxx.231:80"

apt-get est maintenant capable de se connecter!

Voir la sortie du débogage (c'est quelque chose que je n'ai jamais essayé).

[email protected]:~# apt-get -o Debug::Acquire::http=true update
0% [Working]GET http://security.ubuntu.com/ubuntu/dists/raring-security/Release.gpg HTTP/1.1
Host: security.ubuntu.com
Cache-Control: max-age=0
User-Agent: Debian APT-HTTP/1.3 (0.9.7.7ubuntu4)


GET http://au.archive.ubuntu.com/ubuntu/dists/raring/Release.gpg HTTP/1.1
Host: au.archive.ubuntu.com
Cache-Control: max-age=0
User-Agent: Debian APT-HTTP/1.3 (0.9.7.7ubuntu4)


GET http://ppa.launchpad.net/git-core/ppa/ubuntu/dists/raring/Release.gpg HTTP/1.1
Host: ppa.launchpad.net
Cache-Control: max-age=0
User-Agent: Debian APT-HTTP/1.3 (0.9.7.7ubuntu4)


HTTP/1.1 200 OK
Date: Fri, 27 Sep 2013 12:12:20 GMT
ETag: "16e20bb4-3a5-4db2e154a1dc0"
Server: Apache/2.2.3 (Red Hat)
Content-Type: text/plain; charset=UTF-8
Accept-Ranges: bytes
Last-Modified: Thu, 25 Apr 2013 11:54:39 GMT
Content-Length: 933
Proxy-Connection: Keep-Alive

Get:1 http://au.archive.ubuntu.com raring Release.gpg [933 B]
0% [1 Release.gpg 0 B/933 B 0%] [Waiting for headers] [Waiting for headers]GET http://au.archive.ubuntu.com/ubuntu/dists/raring-updates/Release.gpg HTTP/1.1
Host: au.archive.ubuntu.com
Cache-Control: max-age=0
User-Agent: Debian APT-HTTP/1.3 (0.9.7.7ubuntu4)


99% [Waiting for headers] [Waiting for headers]HTTP/1.1 200 OK             
Date: Fri, 27 Sep 2013 12:12:20 GMT
ETag: "16e20ee7-3a5-4e7594ace9200"
Server: Apache/2.2.3 (Red Hat)
Content-Type: text/plain; charset=UTF-8
Accept-Ranges: bytes
Last-Modified: Fri, 27 Sep 2013 08:30:00 GMT
Content-Length: 933
Proxy-Connection: Keep-Alive

Get:2 http://au.archive.ubuntu.com raring-updates Release.gpg [933 B]
50% [2 Release.gpg 0 B/933 B 0%] [Waiting for headers] [Waiting for headers]GET http://au.archive.ubuntu.com/ubuntu/dists/raring-backports/Release.gpg HTTP/1.1
Host: au.archive.ubuntu.com
Cache-Control: max-age=0
User-Agent: Debian APT-HTTP/1.3 (0.9.7.7ubuntu4)


100% [Waiting for headers] [Waiting for headers]HTTP/1.1 200 OK             
Date: Fri, 27 Sep 2013 12:12:21 GMT
ETag: "16e0083d-3a5-4e6844f477fc0"
Server: Apache/2.2.3 (Red Hat)
Content-Type: text/plain; charset=UTF-8
Accept-Ranges: bytes
Last-Modified: Mon, 16 Sep 2013 18:24:07 GMT
Content-Length: 933
Proxy-Connection: Keep-Alive

Get:3 http://au.archive.ubuntu.com raring-backports Release.gpg [933 B]
67% [3 Release.gpg 0 B/933 B 0%] [Waiting for headers] [Waiting for headers]HTTP/1.1 200 OK
Date: Fri, 27 Sep 2013 12:12:20 GMT
ETag: "3a5-4e75c5d969600"
Server: Apache/2.2.22 (Ubuntu)
Expires: Fri, 27 Sep 2013 13:05:00 GMT
Accept-Ranges: bytes
Cache-Control: max-age=3159, s-maxage=3300, proxy-revalidate
Last-Modified: Fri, 27 Sep 2013 12:10:00 GMT
Content-Length: 933
Proxy-Connection: Keep-Alive

......

3ème - supprimer les variables d'environnement

désélectionner env vars = & gt; unset {http_proxy,https_proxy,ftp_proxy}

Maintenant, apt-get n'a pas pu se connecter.

Conclusion

Tout comme ce que man apt.conf dit, si http :: Proxy n'est PAS défini, la variable d'environnement http_proxy sera utilisée.

BTW : je suis également un utilisateur d’Arch Linux. Pacman fonctionne de manière similaire, si je n'utilise pas wget ou curl avec un proxy dans pacman.conf , il utilisera les variables d'environnement '{http_proxy, https_proxy, ftp_proxy}'.

Mise à jour sudo ne préserve PAS les variables d'environnement. C'est pourquoi sudo apt-get update échoue. Pour contourner le problème (préserver les variables d'environnement proxy), utilisez sudo -E apt-get update .

    
réponse donnée Terry Wang 27.09.2013 - 14:25
la source

Lire d'autres questions sur les étiquettes