Mauvaise configuration: ne peut pas ssh

12

Comme décrit dans de nombreux autres articles, après la mise à niveau vers MacOS Sierra, j'ai modifié le fichier de configuration ssh comme suit:

Host me
HostName login.hpc.ugent.be
User vscxxxxx
Port 22

Host *
  AddKeysToAgent yes
  UseKeychain yes

J'obtiens toujours l'erreur suivante:

$ssh -Y [email protected]
/Users/manfredo/.ssh/config: line 8: Bad configuration option: usekeychain
/Users/manfredo/.ssh/config: terminating, 1 bad configuration options

Qu'est-ce que je rate?

Manfredo
la source
Quelle est la sortie de ssh -Vet type ssh? Ou savez-vous si vous avez installé ssh par défaut non système?
Jari Keinänen
OpenSSH_7.3p1, OpenSSL 1.0.2k 26 janvier 2017
Manfredo

Réponses:

10

Supprimez simplement la UseKeychain yesligne de votre configuration. La mise à jour a interrompu la configuration existante en supprimant cette option.

Jakuje
la source
C'est probablement faux, en supposant que nous parlons du ssh fourni par le système. Quelle mise à jour l'a cassé? Ou voulez-vous dire une mise à jour ssh non Apple? Je suis sur macOS mise à jour et ayant UseKeychain yesou usekeychain yesdonner aucune erreur.
Jari Keinänen
Cela fonctionne réellement. Je ne sais pas vraiment ce qui l'a fait cesser de fonctionner, la seule chose est que j'ai mis à jour mes packages macport aujourd'hui.
Manfredo
4

La documentation d'Apple sur les mises à jour d'OpenSSH dans macOS 10.12.2 indique que:

Si vous partagez votre configuration ssh avec des systèmes exécutant des versions plus anciennes d'OpenSSH qui ne comprennent pas l'option UseKeychain, vous pouvez spécifier l'option IgnoreUnknown pour garder votre configuration compatible avec les nouvelles et les anciennes versions.

Donc, l'astuce est que dans votre fichier de configuration ssh, ajoutez IgnoreUnknown UseKeychaincomme ci-dessous:

Host *
  AddKeysToAgent yes
  IgnoreUnknown UseKeychain
  UseKeychain yes
Unnawut
la source
0

Si vous spécifiez /usr/bin/sshpour les commandes, cela fonctionne. Le chemin par défaut dans 10.12 place /usr/local/binen haut de sorte que toute autre version de sshne fonctionnera pas avec cette option, car elle est spécifique au système mac.

chancelant
la source
pour ajouter à cela, nano ~/.bash_profileassurez-vous simplement /usr/binavant /usr/local/binsi elles ne sont pas du tout dans votre $PATHdéclaration, ajoutez simplement les deux avec elles dans cet ordre. Quelque chose comme export PATH="~/bin:/usr/bin:/usr/local/bin/:$PATHalors source ~/.bash_profilecela m'a résolu pour
abc123