Sto provando a configurare le mie chiavi SSH per GitHub e ho creato una nuova chiave SSH per lo stesso. Sono riuscito a configurare la chiave SSH ma desidero mantenere queste impostazioni e salvarle nel file di configurazione ~/.ssh/config
che non è disponibile. Dove posso aggiungere questo percorso chiave per mantenere la configurazione?
Risposta accettata:
Ecco un breve manuale su come configurare l'autenticazione basata su chiave SSH per GitHub.
1. Installa il openssh-client
se non è già installato, e ovviamente git
:
sudo apt update && sudo apt install -y openssh-client git
2. Crea la directory ssh dell'utente e una sottodirectory in cui verrà archiviata la tua chiave ssh GitHub dedicata:
mkdir -p ~/.ssh/github
chmod 700 ~/.ssh ~/.ssh/github
3. Genera la chiave SSH (la chiave di output avrà i permessi ottali 600
):
ssh-keygen -t rsa -b 4096 -C '[email protected]' -f ~/.ssh/github/id_rsa -q -N ''
-q
– silenzio ssh-keygen;-N ''
– passphrase vuota (senza), puoi assegnarne una se vuoi.
4. Copia il contenuto del file id_rsa.pub
, usa il seguente comando per emetterlo:
cat ~/.ssh/github/id_rsa.pub
5. Vai al tuo account GitHub. Dal menu a discesa nell'angolo in alto a destra, seleziona Il tuo profilo . Fai clic su Modifica profilo e quindi seleziona Chiavi SSH e GPG . Fare clic sulla Nuova chiave SSH pulsante. Digita un po' di minaccioso per un Titolo e incolla il contenuto di ~/.ssh/github/id_rsa.pub
nel campo Chiave . Quindi fare clic su Aggiungi chiave SSH pulsante.
6. Crea il ~/.ssh/config
file, se non esiste già:
touch ~/.ssh/config
chmod 600 ~/.ssh/config
Modifica il config
file e aggiungi la seguente voce per la nuova chiave SSH:
Host github.com
IdentityFile ~/.ssh/github/id_rsa
7. Prova la configurazione. Usa il seguente comando:
ssh -T [email protected]
Sulla domanda:Sei sicuro di voler continuare a connetterti (sì/no)? – rispondi con sì . Se tutto è andato bene dovresti ricevere un messaggio di saluto come questo:
Hi pa4080! You've successfully authenticated, ...
Come utilizzare la chiave SSH.
1. Se hai già clonato il repository tramite HTTPS, utilizzando un comando come questi:
git clone https://github.com/username/repository-name.git
git clone git://github.com/username/repository-name
Vai all'interno della directory del repository ed esegui il comando successivo per consentire il lavoro tramite SSH:
git remote set-url origin [email protected]:username/repository-name.git
2. Clonare direttamente un repository tramite SSH:
git clone [email protected]:username/repository-name.git
3. Inoltre, se stai usando VSC, funzionerà senza problemi con questa configurazione. Per i repository già clonati, usa semplicemente Apri cartella opzione e tutte le funzionalità di VSC Git funzioneranno.
Correlati:come eseguire una modifica batch (turno) della data di creazione del file?