2 votes

Comment puis-je accéder par SSH à deux machines différentes avec la même IP ?

J'ai deux déploiements similaires d'une application web, chacun sur un réseau virtuel séparé avec des adresses IP privées. Les deux ont une VM à 10.0.4.4.

Je peux faire du VPN depuis ma machine de développement vers l'un ou l'autre réseau et me connecter en SSH aux machines virtuelles, mais lorsque je change de réseau, SSH se met à faire des histoires parce que les hôtes ont des clés différentes.

Puis-je configurer plusieurs signatures de clés pour un seul nom d'hôte afin d'éviter ce problème ? Quelle est la méthode recommandée pour se connecter à différentes machines ayant la même adresse IP ?

2voto

A.B Points 7722

SSH vérifie son known_hosts pour toutes les entrées de cet hôte. Si l'hôte tous d'entre eux ne correspondent pas, y compris le cas habituel de tous être l'entrée unique SSH s'en plaindra.

Si tous d'entre eux correspond à SSH réussit à vérifier l'identité de l'hôte.

De man sshd dans le format de fichier SSH_KNOWN_HOSTS :

Lors de l'authentification de l'hôte, L'authentification est acceptée si un ligne correspondante possède la clé appropriée ; l'un des deux correspond exactement à l'autre ou, si le serveur a présenté un certificat pour l'authentification, la clé de l'autorité de certification qui a signé le certificat. de l'autorité de certification qui a signé le certificat.

[...]

Il est permis (mais pas recommandé) d'avoir plusieurs lignes ou clés d'hôte différentes pour les mêmes noms . Cela se produira inévitablement lorsque des formes abrégées de noms d'hôtes provenant de différents domaines sont placées dans le fichier. dans le fichier Il est possible que les fichiers contiennent des informations contradictoires ; l'authentification est acceptée si des informations valides peuvent être trouvées dans l'un ou l'autre des fichiers. l'un ou l'autre fichier.

Une utilisation (moins) courante est celle des serveurs SSH souvent utilisés comme serveurs SFTP dans un contexte de haute disponibilité par l'intermédiaire d'un VIP : lorsqu'il y a un basculement d'un nœud à l'autre, l'authentification de l'hôte peut changer.

On peut utiliser ssh-keyscan 10.0.4.4 éventuellement avec des options supplémentaires (telles que l'option -H pour la confidentialité du hachage) deux fois : une fois sur chaque VM différente, pour récupérer toutes les clés d'hôte possibles et les ajouter, ou certaines d'entre elles, au fichier ~/.ssh/known_hosts .

Aucune erreur d'authentification ne se produira alors, jusqu'à ce que l'on essaie d'accéder à un troisième nœud non lié avec la même adresse.

1voto

doneal24 Points 386

Vous n'indiquez pas le système d'exploitation de la machine de développement, mais cela devrait fonctionner pour openSSH sous Linux ou Mac.

A partir de la ligne de commande

ssh -o StrictHostKeyChecking=no 10.0.4.4

Ou configurez ~/.ssh/config avec les lignes suivantes

Host 10.0.4.4
StrictHostKeyChecking=no

Si vous contrôlez les machines virtuelles et qu'elles sont sous Linux, vous pouvez copier tous les fichiers clés dans le répertoire /etc/ssh/ d'une VM à l'autre, puis redémarrer sshd . Cela permet d'obtenir des clés d'hôte identiques.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X