1 <?xml version=
"1.0" encoding=
"iso-8859-15" standalone=
"no"?>
2 <!DOCTYPE refentry PUBLIC
"-//OASIS//DTD DocBook XML V4.2//EN"
3 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
5 <!ENTITY % aptent SYSTEM
"apt.ent.fr">
14 <refentrytitle>apt-secure
</refentrytitle>
15 <manvolnum>8</manvolnum>
18 <!-- NOTE: This manpage has been written based on the
19 Securing Debian Manual ("Debian Security
20 Infrastructure" chapter) and on documentation
21 available at the following sites:
22 http://wiki.debian.net/?apt06
23 http://www.syntaxpolice.org/apt-secure/
24 http://www.enyo.de/fw/software/apt-secure/
26 <!-- TODO: write a more verbose example of how it works with
28 http://www.debian-administration.org/articles/174
33 <!-- Man page title -->
35 <refname>apt-secure
</refname>
36 <refpurpose>Certification d'archive avec APT
</refpurpose>
39 <refsect1><title>Description
</title>
41 Depuis sa version
0.6,
<command>apt
</command> sait vérifier
42 la signature du fichier Release de chaque archive. On s'assure ainsi que les
43 paquets de cette archive ne peuvent pas être modifiés par quelqu'un qui ne
44 possède pas la clé de la signature du fichier Release.
48 Quand un paquet provient d'une archive sans signature ou d'une archive avec
49 une signature dont apt ne possède pas la clé, ce paquet n'est pas considéré
50 comme fiable et son installation provoquera un avertissement. Pour
51 l'instant,
<command>apt-get
</command> ne signale que les archives sans
52 signature
; les prochaines versions pourraient rendre obligatoire la
53 vérification des sources avant tout téléchargement de paquet.
57 Les paquets &apt-get;,
&aptitude; et
&synaptic; possèdent cette nouvelle
58 fonction de certification.
63 <refsect1><title>Archives fiables
</title>
66 D'une archive apt jusqu'à l'utilisateur, la confiance se construit en
67 plusieurs étapes.
<command>Apt-secure
</command> est la dernière étape. Faire
68 confiance à une archive ne signifie pas que les paquets qu'elle contient
69 sont exempts de code malveillant, mais signifie que vous faites confiance au
70 responsable de l'archive. C'est ensuite au responsable de l'archive de faire
71 en sorte que l'archive soit fiable.
75 <para><command>Apt-secure
</command> n'examine pas la signature d'un
76 paquet. Certains programmes peuvent le faire comme
77 <command>debsig-verify
</command> ou
<command>debsign
</command>, qu'on peut
78 trouver dans les paquets debsig-verify et devscripts.
82 La fiabilisation dans Debian commence quand un responsable de paquet envoie
83 un nouveau paquet ou une nouvelle version d'un paquet dans l'archive. Cet
84 envoi, pour être effectif, doit être signé avec la clé d'un responsable qui
85 se trouve dans le trousseau des responsables Debian (disponible dans le
86 paquet debian-keyring). Les clés des responsables de paquet sont signées par
87 d'autres responsables, suivant des procédures préétablies pour s'assurer de
88 l'identité des propriétaires de la clé.
93 Une fois le paquet vérifié et archivé, la signature du responsable est
94 enlevée, une somme MD5 du paquet est calculée et mise dans le fichier
95 Packages. Une somme MD5 de tous les paquets est ensuite calculée et mise
96 dans le fichier Release. Ce fichier est signé par la clé de l'archive. Cette
97 clé qui est créée chaque année et distribuée par le serveur FTP se trouve
98 aussi dans le trousseau Debian.
103 Un utilisateur peut consulter la signature du fichier Release, extraire la
104 somme MD5 d'un paquet et la comparer avec la somme du paquet qu'il a
105 téléchargé. Avant la version
0.6, seule la somme du paquet téléchargé était
106 vérifiée. Maintenant on peut vérifier aussi la signature du fichier Release.
110 <para>Cette façon de faire est différente d'une vérification de la signature d'un
111 paquet. Elle vise à empêcher deux types d'attaque possibles
:
117 L'attaque de type
<quote>homme au milieu
</quote>. Sans vérification de
118 signature, quelqu'un de malveillant peut s'introduire au milieu du
119 processus de téléchargement et insérer du code soit en contrôlant un élément
120 du réseau, routeur, commutateur, etc. soit en détournant le trafic vers un
121 serveur fourbe (par usurpation d'adresses).
125 L'attaque par compromission d'un miroir sur le réseau. Sans vérification de
126 signature, quelqu'un de malveillant peut compromettre un miroir et modifier
127 les fichiers. Ainsi tous ceux qui téléchargent les paquets de ce miroir
128 propagent du code malveillant.
133 Cependant cette méthode ne garantit pas contre une compromission du serveur
134 Debian lui-même (qui signe les paquets) ni contre la compromission de la clé
135 qui sert à signer les fichiers Release. Mais elle peut compléter la
136 signature des paquets.
140 <refsect1><title>Configuration
</title>
142 Le programme qui gère la liste des clés utilisées par apt s'appelle
143 <command>apt-key
</command>. Il peut ajouter ou supprimer des clés. Cette
144 version installe automatiquement les clés qui servent à signer l'archive
145 Debian et les différents répertoires de paquets.
149 Pour ajouter une clé, vous devez d'abord la télécharger. Il vaut mieux
150 utiliser un canal fiable pour ce téléchargement. Ensuite vous l'ajoutez avec
151 la commande
<command>apt-key
</command> et vous lancez la commande
152 <command>apt-get update
</command> pour télécharger et vérifier le fichier
153 <filename>Release.gpg
</filename> de l'archive que vous avez configurée.
158 <refsect1><title>Configuration d'une archive
</title>
160 Si vous voulez signer les archives dont vous avez la responsabilité, vous
166 <listitem><para>créer un fichier Release à la racine de l'archive, s'il n'existe pas
167 déjà. Vous pouvez le créer avec la commande
<command>apt-ftparchive release
</command>
168 (fournie dans le paquet apt-utils)
;
172 le signer, avec la commande
<command>gpg -abs -o Release.gpg Release
</command> ;
176 publier l'empreinte de la clé. Ainsi les utilisateurs de votre archive
177 connaîtront la clé qu'ils doivent importer pour authentifier les fichiers de
183 <para>Chaque fois que le contenu de l'archive change, le responsable doit refaire
184 les deux premières étapes.
189 <refsect1><title>Voir aussi
</title>
191 &apt-conf;, &apt-get;,&sources-list;, &apt-key;, &apt-archive;,
&debsign;,
192 &debsig-verify;,
&gpg;
196 <para>Pour des informations plus substantielles, vous pouvez consulter
197 <ulink url=
"http://www.debian.org/doc/manuals/securing-debian-howto/ch7.en.html">
198 l'infrastructure debian pour la sécurité
</ulink> un chapitre du manuel Debian sur la sécurité
199 (disponible dans le paquet harden-doc) et le
200 <ulink url=
"http://www.cryptnet.net/fdp/crypto/strong_distro.html">Strong Distribution HOWTO
</ulink> par V. Alex Brennen.
208 <refsect1><title>Auteurs
</title>
211 Cette page a été écrite à partir des travaux de Javier Fernández-Sanguino Peña, Isaac
212 Jones, Colin Walters, Florian Weimer et Michael Vogt.