Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| gnupg [Le 02/12/2014, 09:50] – [Clef publique et clef privée] 90.33.25.162 | gnupg [Le 31/01/2024, 21:38] (Version actuelle) – [Signer et Chiffrer des fichiers avec GnuPG] correction affichage de deux tirets pour une option Amiralgaby | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | {{tag>breezy dapper edgy sécurité}} | + | {{tag>Xenial |
| ---- | ---- | ||
| Ligne 5: | Ligne 5: | ||
| ====== GNU Privacy Guard ====== | ====== GNU Privacy Guard ====== | ||
| - | GPG est l' | + | GPG est l' |
| + | Vous trouverez dans le présent document la méthode de création de clés GPG en lignes de commande. Pour créer des clés avec une interface graphique reportez-vous à la page [[: | ||
| - | ===== Introduction ===== | + | L' |
| - | Vous trouverez dans le présent document la méthode en passant par les interfaces graphiques, suivie de leur équivalent en lignes de commande. | ||
| - | |||
| - | L' | ||
| + | ===== Introduction ===== | ||
| - | ===== Concept ===== | ||
| Comment fonctionne le chiffrement ? | Comment fonctionne le chiffrement ? | ||
| - | Il serait dommage d' | + | Il serait dommage d' |
| À noter qu'on peut également chiffrer en symétrique avec GPG (option « -c »). | À noter qu'on peut également chiffrer en symétrique avec GPG (option « -c »). | ||
| Ligne 28: | Ligne 26: | ||
| La **clef publique** sert à chiffrer un message qui pourra être déchiffré uniquement à l'aide de la **clef privée**. Pour que cela fonctionne, il faut fournir à vos correspondants votre clef publique. Ceux-ci chiffreront leur message avec cette clef, et vous seul pourrez le déchiffrer à l'aide de votre clef privée. | La **clef publique** sert à chiffrer un message qui pourra être déchiffré uniquement à l'aide de la **clef privée**. Pour que cela fonctionne, il faut fournir à vos correspondants votre clef publique. Ceux-ci chiffreront leur message avec cette clef, et vous seul pourrez le déchiffrer à l'aide de votre clef privée. | ||
| + | Ne perdez pas ce mot de passe et ne le divulguez à personne. | ||
| - | La **clef privée** ne doit jamais être divulguée. Pour plus de sécurité, cette clé est chiffrée en symétrique et un mot de passe y est donc associé : ainsi même lorsque quelqu' | ||
| - | |||
| - | Une clef publique et une clef privée fonctionnent en inverse. Ce que chiffre l'une, l' | ||
| - | |||
| - | Un //mot de passe// est associé à la clef privée : il vous sera demandé pour signer ou déchiffrer les fichiers, courriels ou messages. Le chiffrage ne nécessite pas de mot de passe. | ||
| - | |||
| - | Évidemment, | ||
| ==== Validité de la clef ==== | ==== Validité de la clef ==== | ||
| - | Lors de la création de la clef publique, une date d' | + | Lors de la création de la clef publique, une date d' |
| **Note :** Ceci ne vous empêchera pas de relire des données chiffrées avec cette clef publique. Il est aussi possible de modifier cette date d' | **Note :** Ceci ne vous empêchera pas de relire des données chiffrées avec cette clef publique. Il est aussi possible de modifier cette date d' | ||
| Si vous entrez " | Si vous entrez " | ||
| + | |||
| ==== Certificat de révocation ==== | ==== Certificat de révocation ==== | ||
| Ligne 52: | Ligne 45: | ||
| L' | L' | ||
| - | Une clef est composée de différents champs (cf. comment lister les clefs de son trousseau dans la section « [[# | + | Une clef est composée de différents champs (cf. comment lister les clefs de son trousseau dans la section « [[# |
| - le champ « pub » correspond à la partie publique. | - le champ « pub » correspond à la partie publique. | ||
| - le champ « sub » correspond à une sous-clé. | - le champ « sub » correspond à une sous-clé. | ||
| - le champ « uid » correspond à une adresse email et un nom. | - le champ « uid » correspond à une adresse email et un nom. | ||
| - | La notation « <id> » utilisée dans cette documentation est une chaine | + | La notation « <id> » utilisée dans cette documentation est une chaîne |
| Ligne 67: | Ligne 60: | ||
| Si l' | Si l' | ||
| - | **Note :** Les 8 derniers caractères du // | + | **Note :** Les 8 derniers caractères du // |
| ==== Signer une clef publique ==== | ==== Signer une clef publique ==== | ||
| Ligne 73: | Ligne 66: | ||
| Signer une clef publique, c'est certifier que cette clef est bien celle de la personne indiquée par l' | Signer une clef publique, c'est certifier que cette clef est bien celle de la personne indiquée par l' | ||
| - | Après avoir signé une clef publique vous pouvez la renvoyer sur un serveur. Il est parfois apprécié de ne pas publier directement la clé signée, mais de l' | + | Après avoir signé une clef publique vous pouvez la renvoyer sur un serveur. Il est parfois apprécié de ne pas publier directement la clé signée, mais de l' |
| Votre signature apporte à tous votre garantie sur l' | Votre signature apporte à tous votre garantie sur l' | ||
| - | |||
| - | |||
| - | ===== Prérequis ===== | ||
| - | |||
| - | - Fonction « sudo » activée (sinon voir [[sudo# | ||
| - | - Connexion Internet configurée et activée (sinon voir [[:modem]] ou [[tutoriel: | ||
| - | - Dépôt // | ||
| - | |||
| ===== Installation ===== | ===== Installation ===== | ||
| + | Il est nécessaire d' | ||
| + | Il existe également diverses interfaces graphiques pour GnuPG. Sous Ubuntu [[: | ||
| + | * **[[apt> | ||
| + | * **[[apt> | ||
| + | * [[https:// | ||
| + | Nous favoriserons ici l' | ||
| - | Il existe divers FE (//Front End//, interface graphique) | + | **N.B. :** Lorsque vous utilisez GPG pour chiffrer vos messages, c'est transparent |
| - | - KGpg, développé pour l' | ||
| - | - GnomeGPG, développé pour l' | ||
| - | - Seahorse (cf. [[: | ||
| - | - GPA, tente de devenir l' | ||
| - | N' | ||
| - | Si vous ne savez pas encore comment utiliser la ligne commande, allez voir [[: | + | ===== Utilisation===== |
| - | **N.B. :** Lorsque vous utilisez GPG pour chiffrer vos messages, cela sera transparent pour vous car pris en charge par vos logiciels habituels. | + | Cette section illustre les usages les plus communs de GnuPG. Vous pouvez évidement obtenir d' |
| + | ====Vérification intégrité d'un fichier ==== | ||
| - | ==== Installation | + | < |
| - | Il faut [[: | + | Cette commande vérifie que le fichier MD5SUMS à la même signature que celui qui a été signé par son auteur (dans l' |
| + | < | ||
| - | ==== Installation des interfaces graphiques ==== | ||
| - | === Sous Ubuntu - Gnome === | ||
| - | Dans le menu // | + | ==== Création d'une clef ==== |
| - | * KGpg : Catégorie // | + | Ouvrez une console et exécutez la commande suivante |
| - | * GnomePGP : Catégorie //Outils système | + | < |
| - | * Seahorse : Catégorie // | + | |
| - | * Kleopatra : Catégorie // | + | (2) DSA et Elgamal |
| - | + | (3) DSA (signature seule) | |
| - | Vous pouvez aussi faire une recherche dans la barre prévu à cet effet . | + | (4) RSA (signature seule) |
| - | + | Quel est votre choix ? | |
| - | === Via Synaptic ou Adept === | + | </ |
| - | + | Choisissez | |
| - | Il faut installer respectivement les paquets suivants | + | On vous proposera une clef de |
| - | * [[http:// | + | |
| - | * gpgp ((Paquet disponible seulement sur [[Dapper]].)) | + | |
| - | * **[[apt> | + | |
| - | * **[[apt> | + | |
| - | + | ||
| - | === Logiciels non présents dans les dépôts === | + | |
| - | + | ||
| - | * [[https://github.com/ | + | |
| - | + | ||
| - | === Avertissement sur Seahorse === | + | |
| - | + | ||
| - | Seahorse est plus complet que GnomePGP | + | |
| - | + | ||
| - | Seahorse ne permet pas de créer de clef sans passphrass (inutile dans le cas des clefs pour courriel) et ne connait pas le serveur | + | |
| - | + | ||
| - | La ligne de commande vous permettra d' | + | |
| - | + | ||
| - | ===== Utilisation et configuration ===== | + | |
| - | + | ||
| - | Cette section illustre les usages les plus communs de GnuPG. Vous pouvez évidement obtenir d' | + | |
| - | + | ||
| - | gpg --help | + | |
| - | + | ||
| - | <note tip>Le paquet installé précédemment est gnupg2. Il serait donc peut-être plus cohérent d' | + | |
| - | + | ||
| - | ==== Gérer les clefs avec GPG ==== | + | |
| - | + | ||
| - | === Créer une paire de clefs === | + | |
| - | + | ||
| - | == Création de la clef == | + | |
| - | + | ||
| - | Ouvrez une console et exécutez la commande suivante : | + | |
| - | gpg --gen-key | + | <note important> |
| - | Choisissez | + | Voir << [[https://help.riseup.net/ |
| - | Une clef de 1024 bits vous assurera | + | |
| Choisissez alors dans combien de temps votre clef expirera. Vous pouvez rentrer //30// comme nombre de jours pour faire vos premiers essais. | Choisissez alors dans combien de temps votre clef expirera. Vous pouvez rentrer //30// comme nombre de jours pour faire vos premiers essais. | ||
| - | Confirmez par //y//. | + | Confirmez par //o//. |
| Vous allez alors créer un // | Vous allez alors créer un // | ||
| - | - Il faut d' | + | - Il faut d' |
| - | - Remplissez ensuite votre //adresse de courriel// (même si vous utilisez cette clef uniquement pour chiffrer vos fichiers). Cette adresse doit correspondre avec celle que vous utilisez, sans artifice anti-spam. | + | - Remplissez ensuite votre //Adresse électronique// (même si vous utilisez cette clef uniquement pour chiffrer vos fichiers). Cette adresse doit correspondre avec celle que vous utilisez, sans artifice anti-spam. |
| - | - Le //commentaire// est optionnel. | + | - Le //Commentaire// est optionnel. |
| Validez par « O ». | Validez par « O ». | ||
| + | Il faut maintenant fournir une //Phrase de passe// dans la fenêtre qui s' | ||
| + | autre chose (taper au clavier, déplacer la souris, utiliser les disques) | ||
| + | pendant la génération de nombres premiers ; cela donne au générateur de | ||
| + | nombres aléatoires une meilleure chance d' | ||
| + | Patientez jusqu' | ||
| - | Il faut maintenant fournir le //mot de passe//. | + | ==== Création du Certificat |
| - | **N.B. :** Rien ne s' | + | Ouvrez un [[: |
| + | le terminal vous renvoie: < | ||
| + | </ | ||
| + | Faites « o ». | ||
| + | Il ne vous reste plus qu'à choisir la cause de la révocation. Et à répondre aux dernières questions. | ||
| + | ==== Gérer son trousseau de clefs ==== | ||
| - | == Création du Certificat | + | Voici quelques commandes pour gérer son trousseau |
| + | * Lister toutes les clefs : < | ||
| + | * Exporter une clef publique sur un serveur de clef : < | ||
| + | * Rechercher une clef publique sur un serveur de clef : < | ||
| + | * Ajouter une clef publique depuis un serveur de clef : < | ||
| + | * Ajouter une clef publique contenue dans le presse-papier (vous avez reçu la clef publique par courriel par exemple) : < | ||
| + | * Supprimer une clef publique : < | ||
| - | Ouvrez une console, et exécutez la commande suivante : | + | ==== Configurer les logiciels pour utiliser GnuPG ==== |
| - | | + | |
| + | * [[: | ||
| + | * Evolution : [[: | ||
| + | * Kmail : [[: | ||
| + | * [[:Claws-mail]] avec le module [[https:// | ||
| + | |||
| + | * Jabber : | ||
| + | * [[:Gajim]] | ||
| - | === Gérer son trousseau de clefs === | + | ==== Récupérer ou partager un trousseau de clé déjà existant ==== |
| - | == Lister toutes | + | Cela est utile par exemple si votre trousseau de clé a été créé sous Windows. Pour cela il vous suffit de copier tous les fichiers présents dans le dossier du trousseau de clé //keyring// vers le dossier correspondant sous Ubuntu. Vous le trouverez dans le dossier caché **.gnupg**. |
| - | gpg --list-keys | + | Si vous êtes en [[: |
| - | == Exporter une clef publique sur un serveur de clef == | + | Exemple : < |
| - | gpg --send-key <id> --keyserver < | + | ===== Utilisation Avancée ===== |
| - | Vous pouvez spécifier un serveur de clef spécifique avec l' | + | ==== Ajouter ou retirer un « uid » d'une clef ==== |
| - | + | ||
| - | == Rechercher une clef publique sur un serveur de clef == | + | |
| - | + | ||
| - | gpg --search-keys < | + | |
| - | + | ||
| - | == Ajouter une clef publique depuis un serveur de clef == | + | |
| - | + | ||
| - | gpg --recv-keys < | + | |
| - | + | ||
| - | == Ajouter une clef publique contenue dans le presse papier (vous avez reçu la clef publique par courriel par exemple) == | + | |
| - | + | ||
| - | gpg --import | + | |
| - | + | ||
| - | Collez ensuite la clef dans la console (clic du milieu) | + | |
| - | + | ||
| - | == Supprimer une clef publique== | + | |
| - | + | ||
| - | gpg --delete-keys < | + | |
| - | + | ||
| - | === Avancé === | + | |
| - | + | ||
| - | ==Ajouter ou retirer un « uid » d'une clef == | + | |
| Ceci est généralement utilisé par les personnes disposant de plusieurs adresses de courriels. | Ceci est généralement utilisé par les personnes disposant de plusieurs adresses de courriels. | ||
| - | gpg --edit-key < | + | < |
| - | Gpg vous rend la main en affichant '' | + | Gpg vous rend la main en affichant '' |
| Pour ajouter un //< | Pour ajouter un //< | ||
| Ligne 232: | Ligne 185: | ||
| - Retirez alors l'// | - Retirez alors l'// | ||
| - | Quittez avec '' | + | Quittez avec '' |
| - | == Vérifier | + | ==== Vérifier |
| - | gpg --fingerprint < | + | < |
| - | == Signer une clef publique== | + | ==== Signer une clef publique |
| - | gpg --sign-key < | + | < |
| - | Validez si vous êtes sûr de l' | + | Validez si vous êtes sûr de l' |
| - | Vous pouvez renvoyez | + | ==== Changer |
| - | == Changer la date d' | + | < |
| - | + | ||
| - | gpg --edit-key < | + | |
| Vous devez disposer de la clef secrète pour changer cette date. | Vous devez disposer de la clef secrète pour changer cette date. | ||
| - | Vous aurez d' | + | Vous aurez d' |
| - | |||
| - | |||
| - | |||
| - | |||
| - | ==== Configurer les logiciels pour utiliser GnuPG ==== | ||
| - | |||
| - | * Courriel : | ||
| - | * Thunderbird, | ||
| - | * Evolution : [[: | ||
| - | * Kmail : [[: | ||
| - | * Claws Mail : [[: | ||
| - | | ||
| - | * Jabber : | ||
| - | * Gajim : [[:Gajim]] | ||
| - | |||
| - | ==== Récupérer ou partager un trousseau de clé déjà existant ==== | ||
| - | |||
| - | (Par exemple votre trousseau de clé créé sous Windows) | ||
| - | |||
| - | Il vous suffit de copier tous les fichiers présents dans le dossier du trousseau de clé (keyring) vers le dossier correspondant sous Ubuntu : | ||
| - | |||
| - | / | ||
| - | |||
| - | Si vous êtes en dual boot avec Windows et que vous utilisez GnuPG dans les deux systèmes, il vaut mieux partager le dossier du trousseau de clé : | ||
| - | Pour cela on crée un lien symbolique à la place du répertoire .gnupg : | ||
| - | |||
| - | sudo ln -s <chemin du dossier du trousseau de clé/> / | ||
| - | |||
| - | Exemple : sudo ln -s "/ | ||
| - | |||
| - | (notez les guillemets indispensables à cause de l' | ||
| ==== Signer et Chiffrer des fichiers avec GnuPG ==== | ==== Signer et Chiffrer des fichiers avec GnuPG ==== | ||
| - | Ces manipulations sont possibles avec les [[: | + | * Signer un fichier |
| - | + | | |
| - | Voici comment les réaliser en ligne de commande avec gnupg : | + | |
| - | + | ||
| - | == Signer un fichier | + | |
| - | + | ||
| - | $ gpg --clearsign < | + | |
| - | + | ||
| - | Votre mot de passe vous est demandé pour vérifier que c'est bien vous qui signez le fichier. | + | |
| - | + | ||
| - | Un fichier // | + | |
| - | + | ||
| - | == Chiffrer un fichier | + | |
| - | + | ||
| - | gpg --encrypt < | + | |
| - | + | ||
| - | L' | + | |
| - | + | ||
| - | **N.B. :** Il faut bien comprendre ici que c'est là où intervient le mécanisme de clef publique/ clef privés. Vous chiffrez un fichier avec la clef publique de son destinataire et seule sa clef privée pourra le déchiffrer. D'où l' | + | |
| - | + | ||
| - | Un fichier | + | |
| - | + | ||
| - | " | + | |
| - | Pour avoir un fichier directement lisible (sous forme ASCII) que l'on peut envoyer à un destinataire sous forme de texte et non en pièce jointe il faut utiliser la syntaxe suivante: | + | |
| - | + | ||
| - | gpg --armor --output " | + | |
| - | + | ||
| - | == Déchiffrer un fichier | + | |
| - | + | ||
| - | gpg --output < | + | |
| - | + | ||
| - | Votre mot de passe vous est demandé pour déchiffrer // | + | |
| - | Le fichier // | + | |
| - | + | ||
| - | **N.B. :** Vous pouvez bien sûr chiffrer et signer un fichier : il suffit de mettre les options //--sign// et // | + | |
| - | + | ||
| + | <note tip>Il faut bien comprendre ici que c'est là où intervient le mécanisme de clef publique/ clef privés. Vous chiffrez un fichier avec la clef publique de son destinataire et seule sa clef privée pourra le déchiffrer. D'où l' | ||
| + | Vous pouvez également chiffrer et signer un fichier en même temps, il suffit de mettre les options // | ||
| ===== Liens internes ===== | ===== Liens internes ===== | ||
| - | * [[RetroShare]] est un logiciel friend-to-friend de partage de fichiers, base sur PGP. | + | * [[:RetroShare]] est un logiciel friend-to-friend de partage de fichiers, base sur PGP. |
| ===== Liens externes ===== | ===== Liens externes ===== | ||
| + | * [[https:// | ||
| * [[http:// | * [[http:// | ||
| - | * [[http:// | + | * L' |
| - | * [[http:// | + | * L' |
| - | * [[wpfr>GPG]] | + | * [[https:// |
| - | * [[http://www.gnupg.org/ | + | |
| * [[http:// | * [[http:// | ||
| - | * le [HOW-TO] [[http:// | + | * Le HOW-TO [[https:// |
| - | * [[http:// | + | * [[https:// |
| + | * Un bon tutoriel : [[https:// | ||
| + | * Les bons conseils d' | ||
| + | * [[http:// | ||
| ---- | ---- | ||
| - | //Contributeur | + | //Contributeurs |
