Création pair de clef public/privé SSH
L’objectif est de pouvoir se connecter sans mot de passe d’un serveur à un autre de façon sécuritaire, ça peut être très pratique dans des scripts de gestion pour déplacer des backups pour pour déplacer des fichiers de logs si FTP ou autre protocole ne sont pas disponible. De plus SSH est un protocole sécuritaire sur lequel vous pouvez compter …
Il faut choisir un chemin pour le fichier en chemin, si vous le faites à partir du compte root, ce devrait être /root/.ssh/. Laissez ce dossier, mais choisissez un nom de clef qui correspond à votre serveur.
srv01# ssh-keygen -t rsaFaites la même chose que pour le srv01, c’est-à-dire choisissez un nom de clef qui correspond à votre serveur.
srv02# ssh-keygen -t rsaIl est très important de ne pas copier la clef privée, cette clef doit demeurer sur le serveur en TOUT temps, c’est la clef utilisée pour decrypter votre clef public, soyez prudent, surtout si votre serveur est accessible de l’Internet.
srv01# scp -P /root/.ssh/srv01.pub root@srv02:/root/.ssh/Il faut ajouter la clef public dans la liste des clefs autorisées du serveur.
srv02# cat /root/.ssh/srv01.pub >> /root/.ssh/authorized_keysOn teste le tout …
srv01# ssh -p root@svr02Si ça ne fonctionne pas voici ce que vous pouvez vérifier:
- Fichier /etc/ssh/sshd_config pour être certain que vous autorisez l’authentification par clef public/privé!
- Droits sur les fichiers
RSAAuthentication yes PubkeyAuthentication yes
chmod 600 ~/.ssh chmod 600 ~/.ssh/authorized_keys chmod 644 ~/.ssh/srv01.pub #644 sur clef public chmod 600 ~./ssh/srv01 #600 sur clef privée
It's 