Configurazione errata: impossibile ssh


12

Come descritto in molti altri post, dopo l'aggiornamento a MacOS Sierra ho modificato il file di configurazione ssh in questo modo:

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

Host *
  AddKeysToAgent yes
  UseKeychain yes

Ottengo ancora il seguente errore:

$ssh -Y vscxxxxx@login.hpc.ugent.be
/Users/manfredo/.ssh/config: line 8: Bad configuration option: usekeychain
/Users/manfredo/.ssh/config: terminating, 1 bad configuration options

Cosa mi sto perdendo?


Qual è l'output di ssh -Ve type ssh? O sai se hai installato ssh non predefinito di sistema?
Jari Keinänen,

OpenSSH_7.3p1, OpenSSL 1.0.2k 26 gen 2017
Manfredo

Risposte:


10

Rimuovi la UseKeychain yeslinea dalla tua configurazione. L'aggiornamento ha interrotto l'installazione esistente rimuovendo questa opzione.


Questo è probabilmente falso, supponendo che stiamo parlando del ssh fornito dal sistema. Quale aggiornamento l'ha rotto? O intendi qualche aggiornamento ssh non Apple? Sono su macOS aggiornato e non ho UseKeychain yeso usekeychain yesnon do errori.
Jari Keinänen,

Funziona davvero. Non so davvero cosa l'abbia smesso di funzionare, l'unica cosa è che ho aggiornato i miei pacchetti macport oggi.
Manfredo

4

La documentazione di Apple sugli aggiornamenti OpenSSH in macOS 10.12.2 afferma che:

Se condividi la tua configurazione ssh con sistemi che eseguono versioni precedenti di OpenSSH che non comprendono l'opzione UseKeychain, puoi specificare l'opzione IgnoreUnnown per mantenere la tua configurazione compatibile con le versioni nuove e vecchie.

Quindi il trucco è che nel tuo file di configurazione ssh, aggiungi IgnoreUnknown UseKeychaincome di seguito:

Host *
  AddKeysToAgent yes
  IgnoreUnknown UseKeychain
  UseKeychain yes

0

Se si specifica /usr/bin/sshper i comandi, funziona. Il percorso predefinito in 10.12 mette /usr/local/binin cima in modo che qualsiasi altra versione di sshnon funzionerà con quell'opzione, poiché è specifica per il sistema mac.


per aggiungere a questo, semplicemente nano ~/.bash_profileassicurarsi che /usr/binsia prima /usr/local/binse non sono affatto nella tua $PATHdichiarazione semplicemente aggiungere entrambi con loro in quell'ordine. Qualcosa di simile export PATH="~/bin:/usr/bin:/usr/local/bin/:$PATH, allora source ~/.bash_profilequesto risolto per me
abc123
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.