Ce transport d'APT permet d'utiliser les dépôts auxquels on accède au moyen de HTTP (Hypertext Transfer Protocol). Il est disponible par défaut et il est probablement le transport le plus utilisé de tous. Veuillez noter qu'un transport n'est jamais appelé directement par l'utilisateur, mais utilisé par les outils d'APT s'appuyant sur la configuration de l'utilisateur.
HTTP est un protocole de transport non chiffré ce qui veut dire que toutes les communications avec le serveur distant (ou le mandataire) peuvent être observées par un attaquant suffisamment compétent appelé couramment « homme du milieu » (MITM). Cependant, un tel attaquant ne peut pas modifier la communication pour compromettre la sécurité du système dans la mesure où le modèle de sécurité des données d'APT est indépendant de la méthode de transport choisie. Cela est expliqué en détail dans apt-secure(8). Un aperçu des méthodes de transport disponibles est donné dans sources.list(5).
Diverses options peuvent être réglées dans un fichier apt.conf(5) pour modifier son comportement depuis la configuration d'un mandataire à des contournements pour les limites d'un serveur particulier.
La variable d'environnement http_proxy est prise en charge pour une configuration au niveau du système. Les mandataires particuliers à APT peuvent être configurés grâce à l'option Acquire::http::Proxy. Les mandataires qui devraient être utilisés seulement pour certains hôtes peuvent être spécifiés avec Acquire::http::Proxy::hôte. Un contrôle encore plus fin peut être obtenu avec l'autodétection du mandataire, détaillée ci-dessous. Toutes ces options utilisent le format d'URI schéma://[[utilisateur][:mot_de_passe]@]hôte[:port]/. Les schémas d'URI pris en charge sont socks5h (SOCKS5 avec résolution distante de DNS), http et https. Les détails d'authentification peuvent être fournis avec apt_auth.conf(5) plutôt que de les inclure directement dans l'URI.
Les diverses options de configuration d'APT prennent en charge la valeur particulière DIRECT signifiant qu'aucun mandataire ne doit être utilisé. La variable d'environnement no_proxy est aussi prise en charge dans le même but.
De plus, il y a trois options de configuration fournies pour le contrôle des caches mandataire compatibles avec HTTP/1.1 : Acquire::http::No-Cache dit au mandataire de ne jamais utiliser les réponses qu'il a stockées. Acquire::http::Max-Age établit l'ancienneté maximale (en secondes) d'un fichier d'index dans le cache du mandataire. Acquire::http::No-Store indique que le mandataire ne doit pas mettre en cache les fichiers d'archive, ce qui peut éviter de polluer un cache mandataire avec des fichiers .deb très grands.
L'option Acquire::http::Proxy-Auto-Detect peut être utilisée pour indiquer une commande externe pour découvrir le mandataire HTTP à utiliser. Le premier et seul paramètre est un URI indiquant l'hôte à contacter pour permettre une configuration propre à l'hôte. Apt s'attend à ce que la commande indique le mandataire sur la sortie standard sur une seule ligne dans le format d'URI précédemment défini ou le mot DIRECT si aucun mandataire ne doit être utilisé. Aucune sortie indique que le mandataire générique doit être utilisé.
Notez que l'auto-détection ne sera pas exécutée si une configuration spécifique de mandataire hôte a déjà été établie par Acquire::http::Proxy::hôte.
Voir les paquets squid-deb-proxy-client(1) et auto-apt-proxy(1) pour des exemples d'implémentation.
Cette option prend le pas sur l'ancien nom d'option Acquire::http::ProxyAutoDetect.
L'option Acquire::http::Timeout positionne le compteur d'expiration du délai (timeout) utilisé par la méthode. Cela s'applique aussi bien à la connexion qu'aux données.
La bande passante utilisée peut être limitée avec Acquire::http::Dl-Limit qui peut prendre une valeur entière, l'unité utilisée étant le kilo-octet par seconde. La valeur par défaut est 0, ce qui correspond à aucune limitation de bande passante. Veuillez noter que cette option désactive implicitement le téléchargement simultané depuis plusieurs serveurs.
Le réglage Acquire::http::Pipeline-Depth permet d'utiliser l'enchaînement HTTP (« HTTP pipelining », RFC 2616 section 8.1.2.2) ce qui peut être utile par exemple avec des connexions à latence élevée. Il indique le nombre de requêtes envoyées dans le tuyau. APT tente de détecter et de contourner les serveurs web et les mandataires qui se comportent mal à l'exécution, mais si vous savez que vos serveurs ne respectent pas la norme HTTP/1.1, l'enchaînement peut être désactivé en définissant cette valeur à 0. Il est activé par défaut avec une valeur de 10.
Acquire::http::AllowRedirect contrôle le fait qu'APT suive les redirections. Ce réglage est activé par défaut.
L'option Acquire::http::User-Agent peut être utilisée pour envoyer une valeur User-Agent modifiée pour les téléchargements HTTP, ce qui peut par exemple être utile avec certains mandataires HTTP qui n'autorisent l'accès qu'aux clients s'identifiant de manière spécifique.
Acquire::http::SendAccept est activé par défaut et envoie un champ d'en-tête Accept: text/* au serveur pourles requêtes sans extension de fichier pour éviter que le serveur ne tente une négociation de contenu.
Acquire::http { Proxy::example.org "DIRECT"; Proxy "socks5h://apt:pass@127.0.0.1:9050"; Proxy-Auto-Detect "/usr/local/bin/apt-http-proxy-auto-detect"; No-Cache "true"; Max-Age "3600"; No-Store "true"; Timeout "10"; Dl-Limit "42"; Pipeline-Depth "0"; AllowRedirect "false"; User-Agent "My APT-HTTP"; SendAccept "false"; };
apt.conf(5) apt_auth.conf(5) sources.list(5)
m[blue]Page des bogues d'APTm[][1]. Si vous souhaitez signaler un bogue à propos d'APT, veuillez lire /usr/share/doc/debian/bug-reporting.txt ou utiliser la commande reportbug(1).
Jérôme Marant, Philippe Batailler, Christian Perrier <bubulle@debian.org> (2000, 2005, 2009, 2010), Équipe de traduction francophone de Debian <debian-l10n-french@lists.debian.org>
Veuillez noter que cette traduction peut contenir des parties non traduites. Cela est volontaire, pour éviter de perdre du contenu quand la traduction est légèrement en retard sur le contenu d'origine.
Équipe de développement d'APT