Gnupg
De Linuxmemo.
 (→=maj auto des cles)  | 
		 (→Serveur de clés)  | 
		||
| Ligne 9 : | Ligne 9 : | ||
  http://keys.gnupg.net/  |   http://keys.gnupg.net/  | ||
  https://pgp.key-server.io/  |   https://pgp.key-server.io/  | ||
| + | |||
| + |  hkp://p80.pool.sks-keyservers.net:80  | ||
==réception de clef via proxy==  | ==réception de clef via proxy==  | ||
Version du 28 janvier 2020 à 14:49
répertoire « ~/.gnupg » créé nouveau fichier de configuration « ~/.gnupg/gpg.conf » créé le porte-clefs « ~/.gnupg/pubring.gpg » a été créé ~/.gnupg/trustdb.gpg : base de confiance créée
Serveur de clés
https://pgp.mit.edu/ http://keys.gnupg.net/ https://pgp.key-server.io/
hkp://p80.pool.sks-keyservers.net:80
réception de clef via proxy
gpg --keyserver hkp://pgp.key-server.io:80 --keyserver-options http-proxy=http://172.21.xxx.xxx:8080,debug --search-keys [KEY] gpg --keyserver hkp://pgp.mit.edu:80 --keyserver-options http-proxy=http://172.21.xxx.xxx:8080,debug --search-keys [KEY] gpg --keyserver hkp://pgp.mit.edu:80 --keyserver-options http-proxy=http://172.21.xxx.xxx:8080,debug --recv-keys 0x059Exxxx
Commandes GnuPG essentielles
Gestion du trousseau : uid personnels et clefs publiques de tiers
Aide, liste des commandes et options
gpg --help
Génération du trousseau
gpg --gen-key
Génère un certificat de révocation
gpg --gen-revoke
Lister les clefs. A défaut, un fichier "pubring.gpg" vide est créé.
gpg --list-key gpg -k
Lister les clefs privés. A défaut, un fichier "secring.gpg" vide est créé.
gpg --list-secret-keys gpg -K
Gestion des clefs
gpg --edit-key [id] (adduid | trust | save | quit)
Rechercher un clefs sur le serveur
gpg --keyserver hkp://pgp.key-server.io:80 --keyserver-options http-proxy=http://172.21.xxx.xxx:8080,debug --search-keys [KEY] gpg --keyserver hkp://pgp.mit.edu:80 --keyserver-options http-proxy=http://172.21.xxx.xxx:8080,debug --search-keys [KEY]
Envoi de clef publique à un serveur de clefs
gpg --keyserver [pgp.mit.edu] --send-key [uid]
Récupérer une clef publique sur un serveur de clefs
gpg --keyserver [pgp.mit.edu] --recv-keys [uid]
Manipulation des clefs
Exporter la clef publique dans un fichier
gpg --export --armor [uid] > [fichier sorti]
Importer une clef publique depuis un fichier
gpg --import [fichier lu]
Importer une clef privé depuis un fichier
gpg --allow-secret-key-import --import [fichier lu]
Exporter une clef privée
gpg --export-secret-key -a > [fichier sorti]
Importer une clef privée depuis un fichier
gpg --import --allow-secret-key-import [fichier lu]
Sortir l'empreinte de la clef publique
gpg --fingerprint [uid] > [fichier sorti]
Réseau de confiance
Signer la clef publique d'un tiers
gpg --sign-key [uid]
Lister les signatures
gpg --list-sigs [uid]
Vérifier les signatures (?=on n'a pas la cle publique/!=on l'a)
gpg --check-sigs [uid]
Garder son tousseau a jour
gpg --refresh-keys # crontab -e 0 12 * * * /usr/bin/gpg --refresh-keys > /dev/null 2>&1
Principales options
Sortie ASCII (au lieu de binaire)
--armor ou -a
Spécifier le fichier sorti
--output ou -o [nom_du_fichier] -o- sortie standard
Spécifier l’utilisateur
--recipient ou -r [nom]
Mode verbeux
--verbose ou -b
Mode silencieux
--quiet ou -q
Confirmation avant écrasement
--interactive ou -i
Signer un fichier
le fichier d'origine est conserver, un nouveau fichier est généré .gpg ou .asc. C'est uniquement ce dernier fichier qu'il faut communiquer.
- Signature (compressée)
 
gpg --sign [-a] [fichier signé] (--sign ou -s) Sortie : [fichier].gpg en binaire ou [fichier].asc en ASCII avec -a
- Signature (non compressée)
 
gpg --clearsign -a [fichier signé]
- Signature détachée (pour les fichiers binaire)
 
gpg -b -a [uid] -o [fichier sorti signature] [fichier à signer] (--detach-sign ou -b) Sortie : [fichier sorti signature].sig
Vérification de signature sur un fichier (avant déchiffrement)
gpg --verify [fichier signé].gpg ou gpg --verify [fichier signé].asc
Vérifier la signature détaché (fichier binaire)
gpg --verify [fichier signature] [fichier signé]
Chiffrer un fichier (--encrypt ou -e)
gpg -r [uid] -e -a -o [fichier sorti] [fichier lu] Sortie sans l’option -o : [fichier].gpg
Chiffrer et signer
gpg -s -a -e [fichier lu]
Déchiffrer un fichier (--decrypt ou -d non nécessaire option par défaut )
gpg -r [uid] -d -o [fichier sorti] [fichier lu]
Cryptage symétrique (pas à l’intention d’un tiers)
--symmetric ou -c gpg -c -a -o [fichier sorti] [fichier lu]
Décryptage symétrique (pas à l’intention d’un tiers)
--decrypt ou -d gpg -d -o [fichier sorti] [fichier lu]
maj auto des cles
- crontab
 
# m h dom mon dow command 0 12 * * * /usr/bin/gpg --keyserver hkp://pgp.mit.edu:80 --keyserver-options http-proxy=http://172.21.xxx.xxx:8080,debug --refresh-keys > /dev/null 2>&1
Interface graphique
- kgpg
 
kgpg QDBusConnection: session D-Bus connection created before QCoreApplication. Application may misbehave. QDBusConnection: session D-Bus connection created before QCoreApplication. Application may misbehave. kgpg -k
best-practices
https://riseup.net/fr/security/message-security/openpgp/gpg-best-practices
Problème / incohérence
Supprimer le rep ~/.gnupg , recréation vierge , puis réimporter les clefs.