Je ne parviens pas à me connecter à une instance de serveur SSH et la sortie commentée contient debug1: Roaming not allowed by server
. Les problèmes prévisibles et évitables suivants se posent:
ssh
6.6.1 exécuté sur Ubuntu 14.04.ssh
ne BTW -> plus de problèmes et de temps d'attente - vous avez été prévenu!)site:www.openssh.org roaming
dans Google avec un résultat vide et les pages de manuel ne contiennent pas le terme. C'est absurde de l'utiliser même si cela a été documenté à cause de son ambiguïté!Que pourrait signifier le message? Comment puis-je l'utiliser pour déboguer le grand ensemble d'autres erreurs très ambiguës, non intuitives et peu utiles, ainsi que d'autres messages de SSH?
Ce n'est pas vraiment un message d'erreur. C'est juste un message de débogage vous indiquant que le serveur n'accepte pas les connexions itinérantes.
Le roaming est apparemment une fonctionnalité expérimentale ajoutée à OpenSSH en 2009 environ. L'objectif de cette fonctionnalité est de permettre à un client ssh de se déconnecter d'une session de serveur, puis de reprendre la session depuis un autre emplacement. Voir ici pour en savoir plus. Google, ssh, itinérance et "Martin Forssén" afficheront d'autres pages. Il ne semble pas que cela soit activement développé. Je soupçonne que les développeurs SSH ne l’ont jamais documentée car c’est expérimental et peut-être pas terminé.
En inspectant le code source OpenSSH, il existe une option non documentée côté client UseRoaming
qui peut être définie sur yes ou no. Ajouter la ligne "UseRoaming no" à votre configuration client (normalement votre fichier .ssh/config
) devrait supprimer le message de débogage.
Je ne comprenais pas pourquoi le paramètre HostbasedAuthentication
côté serveur contrôlait si le serveur acceptait les connexions itinérantes ou non.
Mise à jour: le support d'itinérance client fait apparemment l'objet d'un rapport d'exposition aux vulnérabilités informatiques, CVE-2016-0777 . Les versions OpenSSH 5.4 à 7.1p1 sont vulnérables. Les utilisateurs doivent mettre à niveau vers OpenSSH 7.1p2 ou une version ultérieure. Les utilisateurs qui ne peuvent pas mettre à niveau doivent désactiver l'itinérance dans le client en ajoutant "UseRoaming no" à la configuration de leur client ssh. Voir ce qui suit:
Le journal des modifications de openssh 5.3 sur CentOS6 a une note:
2009/06/27 Ajouter l’option client UseRoaming. Il ne fait encore rien mais contrôlera si le client tente d'utiliser l'itinérance s'il est activé sur le serveur . De Martin Forssen.
@ ILMostro_7 chmod 600 registered_keys a bien fonctionné pour moi.
Pour le bénéfice de tous ceux qui arrivent ici en cherchant "Itinérance non autorisée par le serveur" sur Google et qui utilisent un client Linux (Ubuntu), vous pouvez corriger cet avertissement et alors voir: -
Agent admitted failure to sign using the key
Le remède à cela est donné à https://help.github.com/articles/error-agent-admitted-failure-to-sign/
# start the ssh-agent in the background
$ eval "$(ssh-agent -s)"
# Agent pid 59566 (displays process id)
$ ssh-add
# Enter passphrase for /home/you/.ssh/id_rsa: [tippy tap]
# Identity added: /home/you/.ssh/id_rsa (/home/you/.ssh/id_rsa)
'#' = commentaire. vous = votre-nom d'utilisateur. [tippy tap] = humo [u] r? = appuyez sur la touche Entrée.
J'espère que cela aide quelqu'un autant que ce Q & R m'a déjà aidé.
Ce message d'erreur peut s'afficher lorsque /etc/ssh/sshd_config
n'a pas HostbasedAuthentication
défini sur yes
sur le serveur.
Je ne sais pas pourquoi.
Un autre problème peut être:
Vérifiez les autorisations sur le répertoire $ USER/.ssh qui devrait appartenir à l'utilisateur et être chmod 700. Le fichier registered_keys devrait également être chmod 700 et appartenir à l'utilisateur.