Vendredi 23 novembre 2018

GnuPG

GnuPG est une implémentation complète et gratuite de la norme OpenPGP telle que définie par RFC4880 (également appelée PGP). GnuPG vous permet de chiffrer et de signer vos données et vos communications. Il dispose d’un système de gestion de clé polyvalent ainsi que des modules d’accès pour tous les types de répertoires de clés publiques. GnuPG, également connu sous le nom de GPG, est un outil de ligne de commande avec des fonctionnalités permettant une intégration facile avec d’autres applications. De nombreuses applications et bibliothèques de frontend sont disponibles. La version 2 de GnuPG prend également en charge S / MIME et Secure Shell (ssh).

Installation

Installez le paquet gnupg (installé par défaut)

sudo pacman -S gnupg

Cela impliquera également la pinentry, une collection de boîtes de dialogue PIN ou de mots de passe simples que GnuPG utilise pour l’entrée de la phrase de passe. La boîte de dialogue pinentry utilisée est déterminée par le lien symbolique /usr/bin/pinentry, qui par défaut pointe vers /usr/bin/pinentry-gtk-2.

Si vous souhaitez utiliser un interface graphique ou un programme qui s’intègre à GnuPG, voir Liste des applications/Sécurité # Cryptage, signature, stéganographie.

Fichiers de configuration

Les fichiers de configuration par défaut sont ~/.gnupg/gpg.conf et ~/.gnupg/dirmngr.conf.

Par défaut, le répertoire gnupg a ses autorisations définies sur 700 et les fichiers qu’il contient ont leurs autorisations définies sur 600. Seul le propriétaire du répertoire a l’autorisation de lire, écrire et accéder aux fichiers. Ceci est pour des raisons de sécurité et ne doit pas être modifié. Dans le cas où ce répertoire ou tout fichier à l’intérieur ne suivrait pas cette mesure de sécurité, vous recevrez des avertissements sur les autorisations de fichiers et d’annuaire basiques.

Ajoutez à ces fichiers toutes les options longues souhaitées. N’écrivez pas les deux tirets, mais simplement le nom de l’option et les arguments requis. Vous trouverez des fichiers squelettes dans /usr/share/gnupg. Ces fichiers sont copiés sur ~/.gnupg la première fois que gpg est exécuté s’il n’existe pas là-bas. D’autres exemples se trouvent dans #Voir aussi.

En outre, pacman utilise un ensemble différent de fichiers de configuration pour la vérification de la signature du package. Voir la signature Pacman/Package pour plus de détails.

Lecteur de cartes USB Gemalto

#!/usr/bin/sh

# more info:
# https://wiki.archlinux.org/index.php/GnuPG#Smartcards

SHELL_CONF=~/.bashrc


sudo pacman -S pcsclite libusb-compat
sudo systemctl enable pcscd.service

echo "export SSH_AUTH_SOCK=$HOME/.gnupg/S.gpg-agent.ssh" >> $SHELL_CONF
echo "enable-ssh-support" >> ~/.gnupg/gpg-agent.conf

echo "pcsc-driver /usr/lib/libpcsclite.so" > ~/.gnupg/scdaemon.conf
echo "card-timeout 5" >> ~/.gnupg/scdaemon.conf
echo "disable-ccid" >> ~/.gnupg/scdaemon.conf

lsusb
Bus 002 Device 005: ID 08e6:3438 Gemalto (was Gemplus) GemPC Key SmartCard Reader

http://www.natisbad.org/E4300/

yaourt -S opensc pcsclite pcsc-tools ccid openct

GnuPG Archlinux/Manjaro

GnuPG est une implémentation complète et gratuite de la norme OpenPGP telle que définie par RFC4880 (également appelée PGP). GnuPG vous permet de chiffrer et de signer vos données et vos communications. Il dispose d’un système de gestion de clé polyvalent ainsi que des modules d’accès pour tous les types de répertoires de clés publiques. GnuPG, également connu sous le nom de GPG, est un outil de ligne de commande avec des fonctionnalités permettant une intégration facile avec d’autres applications. De nombreuses applications et bibliothèques de frontend sont disponibles. La version 2 de GnuPG prend également en charge S / MIME et Secure Shell (ssh).

Lire/Ecrire sur des smartcards GnuPG
Installer ccid pcsclite

yaourt -S ccid pcsclite

Lancer le daemon pcsclite

sudo systemctl start pcscd.service

Insérer la smartcard “puce vers le haut” dans le lecteur sur le coté gauche du clavier
Lire une carte

gpg --card-status

Restauration des clés (sauvegarde USB)
Restaurer les clés dans le dossier Private (chiffré)

Création du dossier

mkdir ~/Private/GnuPG

Insérer la clé USB de sauvegarde

dmesg   # pour déterminer quel périphérique est utilisé
     [ 2525.857730]  sdb: sdb1

La clé est sur /dev/sdb1 , on va créer un dossier temporaire pour monter la clé

mkdir ~/temp
mount /dev/sdb1 ~/temp

Copier

cp -r $HOME/temp/* $HOME/Private/GnuPG/

On va créer un lien sur ce dossier avec .gnupg/

ln -s $HOME/Private/GnuPG $HOME/.gnupg

Vérifier la présence des clés

gpg --list-keys