Sto riscontrando alcuni problemi con SSH KeychainIntegration in OS X Mavericks. Ho provato a sondare il sito di supporto di Apple, ma non ho visto nessuno che avesse il mio problema. Ho ho visto molte persone che apparentemente non sanno come usare SSH così bene, così ho deciso di provare un'altra comunità.
Innanzitutto, la mia configurazione funziona. Sono in grado di utilizzare la mia coppia di chiavi e ssh per gli host come ho bisogno, con le mie credenziali di essere in cache nell'agente. Sono in grado di vedere le mie credenziali memorizzate nella cache tramite "ssh-add -l", come previsto. Mi viene richiesto di inserire la mia password da una finestra di dialogo in stile OS X, con una casella di controllo che dice "Ricorda la password nel mio portachiavi". Di solito ignoro questa casella di controllo, ma quando la controllo, vedo la mia chiave memorizzata nel portachiavi. Questa chiave memorizzata nel portachiavi è apparentemente mai usata, tuttavia, dato che ho una password. Almeno questo è quello che ho raccolto da varie cose che ho letto. Quando inserisco la mia password nella finestra di dialogo, e la chiave viene memorizzata nella cache dell'agente, mi collego correttamente, ma non prima che mi venga detto "Salvataggio della password sul portachiavi non riuscito". Vedere questo messaggio di errore è ciò che mi ha spinto a indagare ulteriormente; Non mi piace ricevere un errore ogni volta che mi collego.
Le cose diventano interessanti quando si guarda alla pagina di manuale SSH_CONFIG (5 ) . Esistono due opzioni per gestire il portachiavi, specifiche per Apple: AskPassGUI e KeychainIntegration. Sei in grado di attivare questi in ~ / .ssh / config, e così facendo si ottengono risultati interessanti.
Impostando AskPassGUI su no, non ti verrà più richiesto un dialogo in stile OS X, ma una riga di testo di input nel tuo terminale. No biggie. Ma se lo fai, allora ssh-agent non memorizzerà le tue credenziali nella cache. Questo è chiaramente rotto e frustrante perché potrei facilmente vivere con il prompt del testo se le credenziali sono state memorizzate nella cache.
Impostando KeychainIntegration su no, ssh genera un errore grave, come segue:
~/.ssh/config: line 11: Bad configuration option: KeychainIntegration
~/.ssh/config: terminating, 1 bad configuration options
La mia domanda, semplicemente, è questa: esiste un modo per disabilitare effettivamente l'integrazione di Keychain OS X per SSH?