Le chiavi SSH vengono aggiunte usando "ssh-add-c" che non richiede conferma

Utilizzo di OS X 10.11.1 Spero di eseguire un'installazione in cui i miei tasti SSH aggiungono con ssh-add -c e quando l'agente ssh è richiesto di utilizzare un determinato tasto riceve una window di dialogo che chiede autorizzazioni (ad esempio ssh-askpass ).

Non riesco ad get altro che le chiavi da aggiungere tramite ssh-add -c che non sembra funzionare affatto. Posso aggiungere la chiave e confermare che la chiave viene aggiunta tramite ssh-add -l , ma quando vado a connettersi ad un host, alla fine finisco un'authentication di password.

Ho installato XQuartz e ho un set di env var DISPLAY, oltre ad aver provato a impostare il SSH_ASKPASS env var con un path a un file eseguibile applicabile. L'eseguibile non sembra essere eseguito quando tento la connessione ssh però.

Ho provato qualche ciclo di uccidere l'agente ssh e ri-aggiungendo le chiavi con l'env vars impostato senza fortuna.

James,

Stai cercando di correre prima di poter camminare?

Suppongo che utilizzi il Terminal applicazione Mac

Avete eseguito con successo ssh-agent e quindi eseguito con successo ssh-add senza l'argomento -c e quindi ha utilizzato con successo quelle credenziali per accedere a qualche cosa?

Se è così allora potrebbe essere pronto a pensare a utilizzare l'argomento -c .

La prima cosa da notare è che se si fa affidamento su un programma X11 per aprire la window di dialogo necessaria allora dovrai essere in esecuzione in Xterm, piuttosto che Terminal, in quanto un programma X11 avrà un momento difficile passare le informazioni su OS X .

Mi piacerebbe conoscere il tuo caso d'uso. Cosa stai cercando di fare?

Il problema era che l'SSH_ASKPASS env var non era disponibile per l'agente ssh quando è stato avviato.

Avevo provato a impostare questo con settein launchctl, ma che non sembrava persistere durante i riavvii.

Ho usato questa risposta qui (anche se sto usando El Capitan che ha funzionato bene) per call launchnet setenv su each avvio, prima che ssh-agent inizia.

Impostazione della variabile di ambiente PATH a livello di sistema in Mavericks