wiki/HowtoGPG.md

70 lines
1.9 KiB
Markdown
Raw Normal View History

2017-05-13 23:53:48 +02:00
---
categories: security
title: Howto GnuPG
...
* Documentation : <https://gnupg.org/documentation/index.html>
2017-05-16 16:26:57 +02:00
[GnuPG](https://gnupg.org/) est une implémentation complète et libre du standard OpenPGP défini par la [RFC4880](https://www.ietf.org/rfc/rfc4880.txt).
GnuPG permet le chiffrement et la signature de vos données ainsi que de vos communication.
2017-05-13 23:53:48 +02:00
## Installation
2017-05-16 16:26:57 +02:00
GnuPG 1.4 et GnuPG 2.0 sont disponibles dans Debian Jessie, il faut bien faire attention a utiliser la version 2 de GnuPG.
2017-05-13 23:53:48 +02:00
~~~
apt install gnupg2
~~~
2017-05-16 16:26:57 +02:00
*A partir de Debian Stretch la seule version disponible est la 2.1.*
2017-05-13 23:53:48 +02:00
## Configuration
### Agent GPG
2017-05-16 16:26:57 +02:00
L'agent GPG garde en mémoire la passphrase de vos clés mais fait aussi office d'agent SSH, ce qui vous permet d'utiliser GPG pour vos connecter sur vos serveurs !
2017-05-13 23:53:48 +02:00
~~~
apt install gnupg-agent pinentry-qt
~~~
2017-05-16 16:26:57 +02:00
##### .gnupg/gpg-agent.conf
2017-05-13 23:53:48 +02:00
~~~
2017-05-16 16:26:57 +02:00
enable-ssh-support
pinentry-program /usr/bin/pinentry-qt
log-file $HOME/.gnupg/gpg-agent.log
use-standard-socket
2017-05-13 23:53:48 +02:00
~~~
2017-05-16 16:26:57 +02:00
##### .bashrc ou .zshrc
2017-05-13 23:53:48 +02:00
~~~
2017-05-16 16:26:57 +02:00
pgrep -u $USER gpg-agent > /dev/null
if [ $? == 0 ]; then
source ~/.gnupg/gpg-agent-$(hostname).env
else
gpg-agent --daemon > ~/.gnupg/gpg-agent-$(hostname).env
eval $(<~/.gnupg/gpg-agent-$(hostname).env)
fi
export GPG_TTY=$(tty)
gpg-connect-agent updatestartuptty /bye
2017-05-13 23:53:48 +02:00
~~~
2017-05-16 16:26:57 +02:00
### Smartcard
GPG et l'agent GPG peuvent être utilisés via des cartes a puces (smartcard) ce qui permet de sécuriser vos clés GPG sur des cartes ou des tokens USB dont elles ne peuvent être extraites, l'utilisation de smartcard nécessite les paquets suivants :
2017-05-13 23:53:48 +02:00
~~~
2017-05-16 16:26:57 +02:00
apt install opensc pcscd scdaemon
2017-05-13 23:53:48 +02:00
~~~
2017-05-16 16:26:57 +02:00
La carte a puce (ou le token USB) est ensuite accessible via la commande suivante :
2017-05-13 23:53:48 +02:00
~~~
2017-05-16 16:26:57 +02:00
gpg2 --card-edit
~~~
#### Quel choix de smartcard ?
Evolix recommande la [Nitrokey Pro](https://shop.nitrokey.com/shop/product/nitrokey-pro-3) qui est un token USB Open Source et Open Hardware !