Dans un terminal, lancez la commande ssh-keygen
. Cela va générer une paire de clef privé et publique. La clef privée ne doit jamais être divulguée. Ce couple de clefs peut être protégé par une passphrase. Elle sera à fournir lors de la première utilisation
iMac:~ e.blindauer$ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/Users/e.blindauer/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /Users/e.blindauer/.ssh/id_rsa. Your public key has been saved in /Users/e.blindauer/.ssh/id_rsa.pub. The key fingerprint is: SHA256:0z5++VGatL1QMpDbpH0hMKilNaMqJG7rT0DRDT3MuZc e.blindauer@iMac.local The key's randomart image is: +---[RSA 2048]----+ | ...* . .o | | .. B * + | | . o B oo o . | |.. . . E . B . .| |..o o S .o =.o.| | o.. . o .=* | |. ... o o= .| | .. . .o ...| |.... .. ... | +----[SHA256]-----+
Pour pouvoir se connecter en utilisant les clefs, il faut transférer la clef publique (~/.ssh/id_rsa.pub
) sur le serveur distant, et l'ajouter au fichier ~/.ssh/authorized_keys
. Pour cela, la commande ssh-copy-id
vous fera le travail. vous pouvez faire cette opération à la main (attention le fichier devra avoir les droits 600
(lecture écriture pour vous uniquement, rien pour les aurtre) sinon il ne sera pas utilisé et l'authentification par clef ne fonctionnera pas.
iMac:~ e.blindauer$ ssh-copy-id e.blindauer@steed.net.mooby.net /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/Users/e.blindauer/.ssh/id_rsa.pub" /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys e.blindauer@steed.net.mooby.net password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'e.blindauer@steed.net.mooby.net'" and check to make sure that only the key(s) you wanted were added.
On peut vérifier en faisant un ssh qui ne demandera pas de mot de passe
iMac:~ e.blindauer$ ssh steed.net.mooby.net Linux steed 4.19.0-8-amd64 #1 SMP Debian 4.19.98-1 (2020-01-26) x86_64 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Sat Mar 28 10:58:27 2020 from 82.64.5.12 e.blindauer@steed:~$