È 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/config
usando IdentityFile
valori separati (o usando l' -i
opzione 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_file
Seleziona un file da cui viene letta l'identità (chiave privata) per l'autenticazione della chiave pubblica. L'impostazione predefinita è
~/.ssh/identity
per la versione del protocollo 1, e~/.ssh/id_dsa
,~/.ssh/id_ecdsa
e~/.ssh/id_rsa
per la versione del protocollo 2. file di identità può anche essere specificata su una base per-host nel file di configurazione. È possibile avere più-i
opzioni (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.pub
di identità.
Basta aggiungere -i
per ogni identità o utilizzare più IdentityFile
righe in te .ssh/config
.
authorized_keys
comandi specifici invece di una shell), potresti dover usare l'IdentitiesOnly yes
opzione per assicurarti dissh-agent
non usare quella sbagliata. Vedi anche unix.stackexchange.com/q/52092/863