Ho impostato una passphrase durante la creazione di una nuova chiave SSH sul mio laptop. Ma, come mi rendo conto ora, questo è piuttosto doloroso quando si tenta di commettere ( Git e SVN ) in una posizione remota su SSH molte volte in un’ora.
Un modo a cui riesco a pensare è cancellare le mie chiavi SSH e crearne di nuove. C’è un modo per rimuovere la passphrase, pur mantenendo le stesse chiavi?
Risposta breve:
$ ssh-keygen -p
Questo ti chiederà quindi di inserire la posizione del file di chiavi, la vecchia passphrase e la nuova passphrase (che può essere lasciata vuota per non avere passphrase).
Se si desidera eseguire tutto su un’unica riga senza fare richieste:
$ ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile]
Importante: ~/.bash_history
attenzione che durante l’esecuzione dei comandi di solito vengono registrati nel tuo file ~/.bash_history
(o simile) in testo semplice, inclusi tutti gli argomenti forniti (ad es. I passphrase in questo caso). Si consiglia pertanto di utilizzare la prima opzione, a meno che non si abbia una ragione specifica per fare diversamente.
Si potrebbe prendere in considerazione l’utilizzo di ssh-agent, che può memorizzare la passphrase per un certo tempo. Le ultime versioni di gpg-agent supportano anche il protocollo utilizzato da ssh-agent.
Potresti voler aggiungere quanto segue al tuo .bash_profile (o equivalente), che avvia ssh-agent all’accesso.
if [ -f ~/.agent.env ] ; then . ~/.agent.env > /dev/null if ! kill -0 $SSH_AGENT_PID > /dev/null 2>&1; then echo "Stale agent file found. Spawning new agent… " eval `ssh-agent | tee ~/.agent.env` ssh-add fi else echo "Starting ssh-agent" eval `ssh-agent | tee ~/.agent.env` ssh-add fi
Su alcune distribuzioni Linux (Ubuntu, Debian) puoi usare:
ssh-copy-id -i ~/.ssh/id_dsa.pub [email protected]
Questo copierà l’ID generato su una macchina remota e lo aggiungerà al portachiavi remoto.
Puoi leggere di più qui e qui .
$ ssh-keygen -p
funzionato per me
Aperto git bash. Incollato: $ ssh-keygen -p
Premi Invio per la posizione predefinita.
Inserisci la vecchia passphrase
Inserisci una nuova passphrase: BLANK
Conferma la nuova passphrase: BLANK
BOOM il dolore di inserire passphrase per git push era sparito.
Grazie!