it-swarm.it

Impostazione della posizione predefinita della chiave ssh

ssh cercherà le sue chiavi di default nella cartella ~/.ssh. Voglio forzarlo a cercare sempre in un'altra posizione.

La soluzione alternativa che sto usando è quella di aggiungere le chiavi dalla posizione non standard all'agente:

ssh-agent
ssh-add /path/to/where/keys/really/are/id_rsa 

(su Linux e MingW32 Shell su Windows)

53
tardate

Se stai solo cercando di indicare una posizione diversa per il tuo file di identità, puoi modificare il tuo file ~/.ssh/config con la seguente voce:

IdentityFile ~/.foo/identity

man ssh_config per trovare altre opzioni di configurazione.

80
Drew Frezell

man ssh mi dà che queste opzioni potrebbero essere utili.

-i file_identità Seleziona un file da cui viene letta l'identità (chiave privata) per l'autenticazione RSA o DSA. L'impostazione predefinita è ~/.ssh/identity per la versione 1 del protocollo e ~/.ssh/id_rsa e ~/.ssh/id_dsa per la versione 2. di protocollo, inoltre è possibile specificare i file di identità su base per host nella configurazione file. È possibile avere più opzioni -i (e più identità specificate nei file di configurazione).

Quindi potresti creare un alias nella tua configurazione bash con qualcosa del genere

alias ssh = "ssh -i/path/to/private_key"

Non ho guardato in un file di configurazione ssh, ma come il -i opzione anche questo potrebbe essere aliasato

-F configfile Specifica un file di configurazione alternativo per utente. Se viene fornito un file di configurazione sulla riga di comando, il file di configurazione a livello di sistema (/ etc/ssh/ssh_config) verrà ignorato. L'impostazione predefinita per il file di configurazione per utente è ~/.ssh/config.

19
roo