Come posso cambiare la directory in cui ssh-keygen genera?


56

Voglio eseguire un comando come:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

La mia comprensione è che ssh-keygen restituisce la directory home. Sto lavorando su un computer in rete utilizzando Git Bash (Windows, MYSS MINGW64) in cui la directory home è quella a cui non ho accesso. Cambio la directory home in questo modo:

export HOME=C:/Users/myusername

così ora quando entro:

echo $HOME

dice:

C:/Users/myusername

ma quando provo di nuovo ad eseguire il comando ssh-keygen viene eseguito nella directory a cui non ho accesso. Ho esaminato il file del profilo per alcuni percorsi codificati ma non riesco a trovare nulla. Come faccio a cambiarlo per puntare a una directory a cui ho accesso?


Questo stesso comportamento si verifica su Ubuntu (la modifica HOMEnon influisce sulla directory predefinita per ssh-keygen). Anche se la specifica della directory funziona in modo esplicito, sarei interessato a sapere perché ssh-keygennon si limita a usare $HOME/.sshcome HOMEè attualmente definito.
Nathan,

Risposte:


88

Dovresti essere in grado di farlo specificando il nome del file di output con l' -fopzione, ad es.

ssh-keygen -t rsa -b 4096 -C "your_email@example.com" -f $HOME/.ssh/id_rsa

Ovviamente, aiuta davvero se la directory di output è già stata creata.

Per ulteriori letture:


Molto obbligato. Ho trascurato l'opzione -f. Ho appena creato una nuova cartella con mkdir .ssh nella mia HOME ed eseguito il comando che hai detto. Grazie mille.
Phlox Midas,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.