È possibile avere più chiavi SSH in un singolo client e lasciare che ssh scelga automaticamente quella giusta?
È possibile avere più chiavi SSH in un singolo client e lasciare che ssh scelga automaticamente quella giusta?
Risposte:
Puoi avere chiavi private diverse in file diversi e specificarle tutte ~/.ssh/configusando IdentityFilevalori separati (o usando l' -iopzione durante l'esecuzione ssh). Sarebbero stati provati in sequenza (checkout man 5 ssh_config).
Se si utilizza ssh-agent, tuttavia, potrebbe essere necessario comunicare all'agente le chiavi multiple che si stanno utilizzando ssh-add.
Sì:
-i identity_fileSeleziona un file da cui viene letta l'identità (chiave privata) per l'autenticazione della chiave pubblica. L'impostazione predefinita è
~/.ssh/identityper la versione del protocollo 1, e~/.ssh/id_dsa,~/.ssh/id_ecdsae~/.ssh/id_rsaper la versione del protocollo 2. file di identità può anche essere specificata su una base per-host nel file di configurazione. È possibile avere più-iopzioni (e più identità specificate nei file di configurazione). ssh proverà anche a caricare le informazioni sul certificato dal nome file ottenuto aggiungendo i nomi dei file-cert.pubdi identità.
Basta aggiungere -iper ogni identità o utilizzare più IdentityFilerighe in te .ssh/config.
authorized_keyscomandi specifici invece di una shell), potresti dover usare l'IdentitiesOnly yesopzione per assicurarti dissh-agentnon usare quella sbagliata. Vedi anche unix.stackexchange.com/q/52092/863