Table des matières
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.