====== Génération de clés ssh - ssh-keygen ======
===== Présentation =====
Les clés ssh permettent un accès plus sécurisé à une machine distante. Elles rendent plus difficile les connexions par force brut.
===== Installation =====
ssh-keygen est une commande fournit par le paquet openssh-client
# apt-get install openssh-client
Ce paquet est généralement installé par défaut.
===== Type de clés =====
Il existe plusieurs type de clés :
* rsa
* dsa
* ecdsa
Il y a également les clés rsa1 pour le protocole 1 de ssh, mais ce protocole ne doit plus être utilisé.
===== Génération =====
# ssh-keygen -t rsa -b 2048
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
c9:68:fe:75:71:37:dd:d0:e6:23:15:79:47:c0:1c:1f root@mazarini
The key's randomart image is:
+---[RSA 2048]----+
| ooEo|
| o+=|
| ..*|
| o . .+o|
| o S ...o=|
| o o..o|
| . . . |
| . . . |
| . |
+-----------------+
#
A noter que le type rsa est le type par défaut et la longueur 2048 celle par défaut pour rsa.
2 fichiers sont générés :
# ls -la .ssh
total 20
drwx------ 2 root root 4096 avril 5 14:19 .
drwx------ 3 root root 4096 avril 5 14:16 ..
-rw------- 1 root root 1675 avril 5 14:20 id_rsa
-rw-r--r-- 1 root root 392 avril 5 14:20 id_rsa.pub
#
A noter les permissions du répertoire .ssh et de la clé privé id_rsa.
===== Utilisation =====
Pour mettre en place la connexion via le jeu de clé, il faut mettre la clé public dans le fichier .ssh/authorized_keys du répertoire de l'utilisateur. Ce fichier peut contenir les clés de plusieurs personnes.
Le nom .ssh/authorized_keys est paramétré dans le fichier /etc/ssh/sshd_config
...
#AuthorizedKeysFile %h/.ssh/authorized_keys
...
Ce nom est le nom par défaut.