Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:systeme:gnupg [18/12/2013 09:19] smolski [Fonctionnement de PGP] |
doc:systeme:gnupg [14/04/2015 19:37] milou [GNUPG] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== GNUPG ====== | ====== GNUPG ====== | ||
- | {{http://images.debian-facile.org/file-Rac5e188bef7d857f79f7548d46cf678e.png?100}} | + | {{/file-Rac5e188bef7d857f79f7548d46cf678e.png?100}} |
+ | |||
+ | * Objet : GnuPG, Fonctionnement, Installation, Utilisation | ||
+ | * Niveau requis :{{tag>débutant avisé}} | ||
+ | * Commentaires : //Pour communiquer en toute sécurité, et pour chiffrer vos fichiers// | ||
+ | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-) | ||
+ | * Suivi : {{tag>à-tester}} | ||
+ | * Création par [[user>mattux]] le 05/07/2007 | ||
+ | * Testé par .... le .... | ||
+ | * Commentaires sur le forum : [[http://debian-facile.org/viewtopic.php?id=2829 |C'est ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | ||
+ | |||
===== Introduction ===== | ===== Introduction ===== | ||
Ligne 8: | Ligne 19: | ||
==== Avertissement : ==== | ==== Avertissement : ==== | ||
- | Attention, toute les opérations décrites dans cet article sont à faire dans un [[:doc:systeme:terminal|terminal.]] \\ | + | Attention, toute les opérations décrites dans cet article sont à faire dans un [[:doc:systeme:terminal|terminal.]] |
//Si vous n'aimez pas le terminal, tant pis pour vous... heu... nan... vous pouvez toujours utiliser une interface du genre //kgpg// avec //kmail// ou //thunderbird// avec //enigmail//, mais dans ce cas, ne comptez pas sur moi pour vous décrire toute la procédure.// | //Si vous n'aimez pas le terminal, tant pis pour vous... heu... nan... vous pouvez toujours utiliser une interface du genre //kgpg// avec //kmail// ou //thunderbird// avec //enigmail//, mais dans ce cas, ne comptez pas sur moi pour vous décrire toute la procédure.// | ||
+ | |||
+ | :-D | ||
===== Pourquoi chiffrer ses données ? ===== | ===== Pourquoi chiffrer ses données ? ===== | ||
Ligne 22: | Ligne 36: | ||
== Nota == | == Nota == | ||
- | Si vous voulez en savoir plus sur Mr. Zimmermann, [[http://biblioweb.samizdat.net/article.php3?id_article=4|c'est par là...]] | + | Si vous voulez en savoir plus sur Mr. Zimmermann, [[http://fr.wikipedia.org/wiki/Philip_Zimmermann|c'est par là...]] |
Ligne 38: | Ligne 52: | ||
//Merci à //**Thom1**// pour ses suggestions et améliorations !// :-) | //Merci à //**Thom1**// pour ses suggestions et améliorations !// :-) | ||
- | |||
- | |||
- | |||
- | |||
===== Installation sous Debian ===== | ===== Installation sous Debian ===== | ||
Ligne 50: | Ligne 60: | ||
Je n'ai pu m'empêcher d'indiquer comment on fait l'installation sous FreeBSD, désolé :-p | Je n'ai pu m'empêcher d'indiquer comment on fait l'installation sous FreeBSD, désolé :-p | ||
- | <code bash> | + | <code user> |
- | $ cd /usr/ports/security/gnupg && make install clean | + | cd /usr/ports/security/gnupg && make install clean |
</code> | </code> | ||
Ligne 69: | Ligne 79: | ||
Là on vous demande de choisir un algorithme : | Là on vous demande de choisir un algorithme : | ||
- | <code> | + | <code user>gpg --gen-key</code> |
- | $ gpg --gen-key | + | <code bash> |
gpg (GnuPG) 1.4.7; Copyright (C) 2006 Free Software Foundation, Inc. | gpg (GnuPG) 1.4.7; Copyright (C) 2006 Free Software Foundation, Inc. | ||
This program comes with ABSOLUTELY NO WARRANTY. | This program comes with ABSOLUTELY NO WARRANTY. | ||
Ligne 99: | Ligne 109: | ||
What keysize do you want? (2048) | What keysize do you want? (2048) | ||
</code> | </code> | ||
+ | |||
Plus c'est gros mieux c'est (la mienne est plus grosse que la tienne). :-p \\ | Plus c'est gros mieux c'est (la mienne est plus grosse que la tienne). :-p \\ | ||
Donc -> 4096 | Donc -> 4096 | ||
Ligne 119: | Ligne 130: | ||
Pour extraire la clef public on fait : | Pour extraire la clef public on fait : | ||
- | <code> | + | <code user>gpg --export -a</code> |
- | $ gpg --export -a | + | |
- | </code> | + | |
On peut rediriger l'output de //gpg// avec l'option -o : | On peut rediriger l'output de //gpg// avec l'option -o : | ||
- | <code> | + | <code user>gpg --export -a -o /repertoire/maclef.asc</code> |
- | $ gpg --export -a -o /repertoire/maclef.asc | + | |
- | </code> | + | |
=== Importer la clef publique === | === Importer la clef publique === | ||
Une fois qu'on a la clef de ses amis, on l'importe ainsi : | Une fois qu'on a la clef de ses amis, on l'importe ainsi : | ||
- | <code> | + | <code user>gpg --import fichier_de_la_clef_du_copain.asc </code> |
- | $ gpg --import fichier_de_la_clef_du_copain.asc | + | |
- | </code> | + | |
=== Accéder au trousseau de clefs === | === Accéder au trousseau de clefs === | ||
Et pour voir le trousseau de clefs : | Et pour voir le trousseau de clefs : | ||
- | <code> | + | <code user>gpg --list-keys</code> |
- | $ gpg --list-keys | + | |
- | </code> | + | |
=== Sauvegarder la clef privée === | === Sauvegarder la clef privée === | ||
Ligne 146: | Ligne 150: | ||
En cas de réinstallation, ou pour l'exporter vers un deuxième PC, vous pouvez sauvegarder votre clef privée. La commande suivante va lister les clefs privées installées: | En cas de réinstallation, ou pour l'exporter vers un deuxième PC, vous pouvez sauvegarder votre clef privée. La commande suivante va lister les clefs privées installées: | ||
- | <code> | + | <code user>gpg --list-secret-keys</code> |
- | $ gpg --list-secret-keys | + | |
- | </code> | + | |
On obtient un résultat de ce genre: | On obtient un résultat de ce genre: | ||
Ligne 159: | Ligne 161: | ||
Il suffit de noter le chiffre après "sec 2048R/" (dans cet exemple, il s'agit de "75262C01") et de le rentrer dans la commande suivante: | Il suffit de noter le chiffre après "sec 2048R/" (dans cet exemple, il s'agit de "75262C01") et de le rentrer dans la commande suivante: | ||
- | <code> $ gpg --armor --export 75262C01 > clef-privee.key </code> | + | <code user>gpg --armor --export 75262C01 > clef-privee.key </code> |
Le fichier apparaît dans votre dossier personnel. Pour l'importer sur un autre PC, il suffit de l'importer comme une clef publique. | Le fichier apparaît dans votre dossier personnel. Pour l'importer sur un autre PC, il suffit de l'importer comme une clef publique. | ||
+ | Autre solution : copier le contenu du dossier /home/utilisateur/.gnupg du pc1 dans un répertoire identique du pc2. | ||
+ | Vérifier sur le pc2 par : | ||
+ | <code user>gpg --list-keys</code> | ||
+ | suivi de : | ||
+ | <code user>gpg --list-secret-keys</code> | ||
===== Modifier une clef ===== | ===== Modifier une clef ===== | ||
Si vous voulez modifier des informations sur votre clef ou n'importe laquelle de votre trousseau : | Si vous voulez modifier des informations sur votre clef ou n'importe laquelle de votre trousseau : | ||
- | <code> | + | <code user>gpg --edit-key mon.mail@monfai.org</code> |
- | $ gpg --edit-key mon.mail@monfai.org | + | |
- | </code> | + | |
Vous obtiendrez quelque chose comme ça : | Vous obtiendrez quelque chose comme ça : | ||
- | <code> | + | <code bash> |
pub 1024D/4231DE26 created: 2007-03-31 expires: never usage: SC | pub 1024D/4231DE26 created: 2007-03-31 expires: never usage: SC | ||
trust: ultimate validity: ultimate | trust: ultimate validity: ultimate | ||
Ligne 192: | Ligne 197: | ||
Ce que **GnuPG** appelle ''uid'', c'est simplement une adresse **e-mail**. | Ce que **GnuPG** appelle ''uid'', c'est simplement une adresse **e-mail**. | ||
- | <code> | + | <code user>gpg --edit-key mon.mail@mon.fai</code> |
- | $ gpg --edit-key mon.mail@mon.fai | + | |
+ | <code bash> | ||
gpg (GnuPG) 1.4.7; Copyright (C) 2006 Free Software Foundation, Inc. | gpg (GnuPG) 1.4.7; Copyright (C) 2006 Free Software Foundation, Inc. | ||
This program comes with ABSOLUTELY NO WARRANTY. | This program comes with ABSOLUTELY NO WARRANTY. | ||
Ligne 245: | Ligne 251: | ||
Command> save | Command> save | ||
</code> | </code> | ||
+ | |||
+ | |||
+ | 2015-02-26 : gpg --edit-key répond à présent par | ||
+ | gpg> | ||
+ | dans l'exemple ci-dessus 4231DE26 : | ||
+ | <code user>gpg --edit-key 4231DE26</code> | ||
+ | |||
+ | <code bash>gpg (GnuPG) 1.4.12; Copyright (C) 2012 Free Software Foundation, Inc. | ||
+ | This is free software: you are free to change and redistribute it. | ||
+ | There is NO WARRANTY, to the extent permitted by law. | ||
+ | |||
+ | La clef secrète est disponible | ||
+ | pub 1024D/4231DE26 created: 2007-03-31 expires: never usage: SC | ||
+ | trust: ultimate validity: ultimate | ||
+ | sub 4096g/316AD2BB created: 2007-03-31 expires: never usage: E | ||
+ | [ultimate] (1) Albator <mon.mail@mon.fai> | ||
+ | gpg></code> | ||
+ | |||
+ | si l'on veut intervenir sur une UID particulière, il faudra indiquer à gpg le numéro qui nous intéresse, par exemple : | ||
+ | <code user>gpg> uid 1</code> | ||
+ | après validation par <entree>, une astérisque sera placée après (1): | ||
+ | <code>[ ultime ] (1)* Albator <mon.mail@mon.fai></code> | ||
+ | |||
+ | par défaut, il n'y a pas de sous-clé (sub) sélectionnée et l'on travaille sur la clé primaire (pub). | ||
+ | pour intervenir sur la sous-clé : | ||
+ | <code user>gpg>key 1</code> | ||
+ | déplacera le focus * sur la clé sub : | ||
+ | <code bash>pub 1024D/4231DE26 created: 2007-03-31 expires: never usage: SC | ||
+ | trust: ultimate validity: ultimate | ||
+ | sub* 4096g/316AD2BB created: 2007-03-31 expires: never usage: E | ||
+ | [ultimate] (1) Albator <mon.mail@mon.fai> </code> | ||
+ | |||
+ | modifier la date d'expiration, une fois entré dans le edit-key de la clé concernée : | ||
+ | <code user>gpg>expire</code> | ||
+ | |||
+ | <code bash> | ||
+ | Modification de la date d'expiration de la clef principale. | ||
+ | Veuillez indiquer le temps pendant lequel cette clef devrait être valable. | ||
+ | 0 = la clef n'expire pas | ||
+ | <n> = la clef expire dans n jours | ||
+ | <n>w = la clef expire dans n semaines | ||
+ | <n>m = la clef expire dans n mois | ||
+ | <n>y = la clef expire dans n ans | ||
+ | Pendant combien de temps la clef est-elle valable ? (0) 40y | ||
+ | La clef expire le 2055-02-07 | ||
+ | Est-ce correct ? (o/N) o | ||
+ | |||
+ | Une phrase de passe est nécessaire pour déverrouiller la clef secrète de | ||
+ | l'utilisateur : « Albator <mon.mail@mon.fai> » | ||
+ | |||
+ | clef RSA de 4096 bits, identifiant 4231DE26, créée le 2015-02-17 | ||
+ | |||
+ | |||
+ | pub 4096R/4231DE26 créé : 2015-02-17 expire : 2015-02-17 utilisation : SC | ||
+ | confiance : ultime validité : ultime | ||
+ | sub 4096R/316AD2BB créé : 2015-02-17 expire : 2015-02-17 utilisation : E | ||
+ | [ ultime ] (1). Albator <mon.mail@mon.fai> | ||
+ | </code> | ||
+ | |||
+ | NB: si gpg répond : \\ | ||
+ | la clef secrète est nécessaire pour faire cela | ||
+ | c'est que la phase d'import de la clé secrète ne s'est pas passée correctement et qu'il faut la refaire :-) | ||
===== Chiffrer, déchiffrer et signer ====== | ===== Chiffrer, déchiffrer et signer ====== | ||
Ligne 253: | Ligne 321: | ||
Soit, notre message | Soit, notre message | ||
- | <code> | + | <code user>echo "GnuPG rocks!" > msg</code> |
- | $ echo "GnuPG rocks!" > msg | + | |
- | </code> | + | |
- | Pour ceux qui ne comprennent pas cette commande : elle écrit simplement "GPG rocks!" dans le fichier msg. | + | Pour ceux qui ne comprennent pas cette [[doc:systeme:echo|commande echo]] : elle écrit simplement "GPG rocks!" dans le fichier msg. |
//On pourrait très bien faire pareil en utilisant gedit ou kate... Mais j'allais quand même pas ouvrir une interface graphique pour si peu// :-P | //On pourrait très bien faire pareil en utilisant gedit ou kate... Mais j'allais quand même pas ouvrir une interface graphique pour si peu// :-P | ||
Ligne 265: | Ligne 331: | ||
On le chiffre et signe le message ainsi : | On le chiffre et signe le message ainsi : | ||
- | <code> | + | <code user>gpg --encrypt --sign -a -r desitinaire@mail.org msg</code> |
- | $ gpg --encrypt --sign -a -r desitinaire@mail.org msg | + | |
- | </code> | + | |
GnuPG vous demandera simplement votre passphrase. | GnuPG vous demandera simplement votre passphrase. | ||
Ligne 305: | Ligne 369: | ||
On place son message dans le fichier //msg// | On place son message dans le fichier //msg// | ||
- | <code> | + | <code user>gpg -d msg</code> |
- | $ gpg -d msg | + | <code> |
gpg: WARNING: using insecure memory! | gpg: WARNING: using insecure memory! | ||
gpg: please see http://www.gnupg.org/faq.html for more information | gpg: please see http://www.gnupg.org/faq.html for more information | ||
Ligne 340: | Ligne 404: | ||
* [[http://fr.wikipedia.org/wiki/Digital_Signature_Algorithm|...Digital_Signature_Algorithm]] | * [[http://fr.wikipedia.org/wiki/Digital_Signature_Algorithm|...Digital_Signature_Algorithm]] | ||
* [[http://fr.wikipedia.org/wiki/Cryptosystème_de_ElGamal|...Cryptosystème_de_ElGamal]] | * [[http://fr.wikipedia.org/wiki/Cryptosystème_de_ElGamal|...Cryptosystème_de_ElGamal]] | ||
+ | * [[https://packages.debian.org/wheezy/seahorse|interface GNOME pour GnuPG]] | ||
+ | * [[doc:reseau:enigmail|Enigmail ;: Chiffrement GPG avec Icedove]] | ||
\\ | \\ | ||
Ligne 348: | Ligne 414: | ||
\\ | \\ | ||
- | * [[http://biblioweb.samizdat.net/article.php3?id_article=4|En savoir plus sur le créateur de PGP]] | + | * %%[[http://biblioweb.samizdat.net/article.php3?id_article=4|En savoir plus sur le créateur de PGP]]%% - **Lien Obsolète** |