« Openssh » : différence entre les versions
(Page créée avec « Category:shell =Authentification par clef SSH= Au lieu de s'authentifier par mot de passe, les utilisateurs peuvent s'authentifier grâce à la cryptographie asymétr... ») |
|||
Ligne 43 : | Ligne 43 : | ||
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! | IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! | ||
Le problème avec | Le problème avec cette intervention est que le script n'avance pas sans vous. | ||
Pour ma part, j'ai un script qui se lance lors d'une coupure électrique, sans mon intervention mon script qui permet l'extinction de mes machines virtuelles ne ce termine pas... c'est pas cool | Pour ma part, j'ai un script qui se lance lors d'une coupure électrique, sans mon intervention mon script qui permet l'extinction de mes machines virtuelles ne ce termine pas... c'est pas cool. | ||
==Résolution== | ==Résolution== |
Version du 14 janvier 2017 à 17:30
Authentification par clef SSH
Au lieu de s'authentifier par mot de passe, les utilisateurs peuvent s'authentifier grâce à la cryptographie asymétrique et son couple de clefs privée/publique, comme le fait le serveur SSH auprès du client SSH.
Générer ses clefs
Pour générer un couple de clefs, tapez sur le client:
ssh-keygen -t ed25519
Ensuite, il faut envoyer le fichier ~/.ssh/id_ed25519.pub du client sur le serveur, tapez sur le client:
scp /home/user/.ssh/id_ed25519.pub USER@SERVEUR:/home/user/.ssh/authorized_keys
Déactiver l'authentification par mot de passe
Si nous voulons déactiver l'accès par mot de passe, il faut ajouter la ligne suivante au fichier /etc/ssh/sshd_config:
[...]
PasswordAuthentication no
Déactiver known hosts de SSH
Problème
Lors d'une exécution d'un script contenant du SSH, et lorsque vous avez changé une de vos machines sur la quelle vous vous connectez, ssh demande une intervention humaine:
The authenticity of host '192.168.1.2 (192.168.1.2)' can't be established. ECDSA key fingerprint is XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX. Are you sure you want to continue connecting (yes/no)?
Lorsque vous avez change l'ordinateur en gardant la même IP:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: POSSIBLE DNS SPOOFING DETECTED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ The RSA host key for foo-bar.net has changed, and the key for the corresponding IP address 127.0.0.1 is unchanged. This could either mean that DNS SPOOFING is happening or the IP address for the host and its host key have changed at the same time. Offending key for IP in /home/user/.ssh/known_hosts:6 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Le problème avec cette intervention est que le script n'avance pas sans vous. Pour ma part, j'ai un script qui se lance lors d'une coupure électrique, sans mon intervention mon script qui permet l'extinction de mes machines virtuelles ne ce termine pas... c'est pas cool.
Résolution
Voici une solution que j'ai trouvé: il faut passer des paramètres a notre commande SSH:
ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.2