Définissez StrictHostKeyChecking no
dans votre /etc/ssh/ssh_config
fichier, où ce sera une option globale utilisée par tous les utilisateurs du serveur. Ou définissez-le dans votre ~/.ssh/config
fichier, où ce sera la valeur par défaut pour l'utilisateur actuel uniquement. Ou vous pouvez l'utiliser sur la ligne de commande:
ssh -o StrictHostKeyChecking=no -l "$user" "$host"
Voici une explication de la façon dont cela fonctionne man ssh_config
(ou voir cette version plus récente ):
StrictHostKeyChecking
Si cet indicateur est défini sur «yes», ssh n’ajoutera jamais automatiquement de clé d’hôte au $HOME/.ssh/known_hosts
fichier et refuse de se connecter aux hôtes dont la clé d’hôte a changé. Ceci fournit une protection maximale contre les attaques de chevaux de Troie, mais peut être gênant lorsque le /etc/ssh/ssh_known_hosts
fichier est mal géré ou que des connexions à de nouveaux hôtes sont fréquemment établies. Cette option oblige l'utilisateur à ajouter manuellement tous les nouveaux hôtes. Si cet indicateur est défini sur «non», sshajoutera automatiquement de nouvelles clés d’hôte aux fichiers hôtes connus de l’utilisateur. Si cet indicateur est défini sur «ask», les nouvelles clés d’hôte seront ajoutées aux fichiers d’hôte connus de l’utilisateur uniquement après que celui-ci aura confirmé ce qu’il souhaite vraiment faire, et
ssh refusera de se connecter aux hôtes dont la clé d’hôte a changé. . Les clés d'hôtes des hôtes connus seront vérifiées automatiquement dans tous les cas. L'argument doit être «oui», «non» ou «demander». La valeur par défaut est "demander".
ssh-keyscan
- Rassemblez les clés publiques sshSi vous connaissez déjà la liste des hôtes auxquels vous allez vous connecter, vous pouvez simplement émettre:
Vous pouvez donner l'
-H
option de hacher les résultats comme ssh par défautVous pouvez aussi donner
-t keytype
été keytype estdsa
,rsa
ouecdsa
si vous avez une préférence quant à quel type de clé pour saisir au lieu de la valeur par défaut.Une fois que vous avez exécuté,
ssh-keyscan
votre fichier hosts-connus sera pré-rempli et ssh ne vous demandera pas la permission d'ajouter une nouvelle clé.la source
ssh-keyscan -H myhost >> ~/.ssh/known_hosts
, ou pour l'ensemble du serveur,/etc/ssh/ssh_known_hosts
Vous pouvez ajouter l'empreinte digitale aux hôtes connus de chaque serveur. Pour un utilisateur unique:
la source
Ignorer l'hôte
Ignorer le HostKeyChecking. Pour cela j'utilise par exemple:
Ajouter un hôte
Ajoutez l'empreinte de l'hôte / serveur à
.ssh/known_hosts
avant votre première connexion. C'est le moyen le plus sûr.la source
/dev/null
? Ne serait-il pas préférable de fairessh -oStrictHostKeyChecking=no [email protected]
une fois pour$HOME/.ssh/known_hosts
enregistrer l'empreinte du serveur dans le fichier, afin que les connexions suivantes se poursuivent sans demande de confirmation?Exécutez l'extrait suivant avant d'essayer.
ps: strictement pas pour les serveurs de production, méfiez-vous de ManInMiddle
la source
J'aime la réponse de Tim pour certaines choses, cependant, s'il s'agit d'un hôte sur lequel vous souhaitez vous connecter régulièrement, je créerais une entrée dans votre ~ / .ssh / config (créez-la si le fichier n'existe pas).
la source