Come posso accedere alla mia chiave pubblica SSH?


611

Ho appena generato la mia coppia di chiavi RSA e volevo aggiungere quella chiave a GitHub.

Ci ho provato cd id_rsa.pube id_rsa.pub, ma senza fortuna. Come posso accedere alla mia chiave pubblica SSH?



3
@kenorb Vuoi dire che Q è un duplicato di questo? Questa domanda è stata posta due anni prima. :)
sscirrus,

Sì, l'altro sembra essere posizionato meglio (in base alla formulazione, ecc.), Ha più opinioni e voti in un periodo di tempo più breve, il che indica che è molto più popolare. Vedi: dovrei votare per chiudere una domanda duplicata, anche se è molto più recente e ha risposte più aggiornate? Una volta duplicati, entrambe le risposte potrebbero essere unite in una sola.
Kenorb,

6
pbcopy < ~/.ssh/id_rsa.pubha funzionato per me! Controlla questo articolo di GitHub
Connor Leech,

Risposte:


1013

cat ~/.ssh/id_rsa.pub o cat ~/.ssh/id_dsa.pub

Puoi elencare tutte le chiavi pubbliche che hai facendo:

$ ls ~/.ssh/*.pub


9
Anche se vedo il file nel punto in cui si riferisce (C: /Users/Me/.ssh/.id_rsa.pub), questi comandi generano un errore: nessun file o directory. Lo sto facendo da Git Bash, MyPC ~ / .ssh
sscirrus,

2
@sscirrus: in Windows, puoi usare il typecomando. O semplicemente apri il file .pub nel blocco note e incollalo su github.
Peter Štibraný,

Grazie mille Peter, per la risposta e la modifica.
Dagli

3
@sscirrus: accetta questo ... funziona anche (con unix o cygwin)
Peter Štibraný,

32
su Mac OS X:cat ~/.ssh/id_rsa.pub
karlingen

195

Copia la chiave negli appunti.

$ pbcopy < ~/.ssh/id_rsa.pub
# Copies the contents of the id_rsa.pub file to your clipboard

Attenzione: è importante copiare la chiave esattamente senza aggiungere nuove righe o spazi bianchi. Per fortuna il comando pbcopy rende facile eseguire perfettamente questa configurazione.

E puoi incollarlo dove ti serve.

Per avere un'idea migliore dell'intero processo, controlla questo: Generazione di chiavi SSH .


6
sudo apt-get install xclip -yper quegli utenti che non hanno pbcopylavoro.
suarsenegger,

4
sudo apt-get install -y xclipseguito da alias pbcopy="xclip -sel clip"e poi pbcopy < ~/.ssh/id_rsa.pubO semplicementexclip -selection clipboard < ~/.ssh/id_rsa.pub
gebbissimo l'

47

Puoi provare a eseguire il comando seguente per mostrare l'impronta digitale RSA:

ssh-agent sh -c 'ssh-add; ssh-add -l'

o chiave pubblica:

ssh-agent sh -c 'ssh-add; ssh-add -L'

Se hai il messaggio: "L'agente non ha identità", devi prima generare la chiave RSA ssh-keygen.


1
Questo è utile quando non si conosce in anticipo il percorso della chiave. Non è sempre dentro ~/.ssh/.
Rudolfbyker,

Provato, funziona su Mac, Win10 (in git bash) e Ubuntu.
Filip Haglund,

L'uso ssh-add -Lè di gran lunga l'opzione migliore in quanto non tutte le chiavi SSH sono una chiave RSA presente nella ~/.sshcartella. Preferisco di gran lunga usare la mia chiave PGP per l'autenticazione e quindi non ho alcun ~/.ssh/id_rsa.pubfile.
steinybot,

30

Se sei su Windows, utilizza quanto segue, seleziona tutto e copia da una finestra di Blocco note:

notepad ~/.ssh/id_rsa.pub  

Se usi OS X, usa:

pbcopy < ~/.ssh/id_rsa.pub

17

Ecco come ho trovato il mio su OS X:

  1. Apri un terminale
  2. (Sei nella directory home) cd .ssh(una directory nascosta)
  3. pbcopy <id_rsa.pub (questo lo copia negli appunti)

Se ciò non funziona, esegui una lse vedi quali file sono presenti con .pubun'estensione.


10

Dopo aver generato la chiave SSH puoi fare:

cat .ssh/id_rsa.pub |pbcopy

che copierà la tua chiave ssh negli appunti.


9

Sul terminale cat ~/.ssh/id_rsa.pub

spiegazione

  1. cat è un'utilità Unix standard che legge i file e stampa l'output
  2. ~ È il tuo percorso utente domestico
  3. /.ssh : la directory nascosta contiene tutti i certificati ssh
  4. id_rsa.pub O id_dsa.pub sono chiavi pubbliche RSA (la chiave privata situata sul computer client). la chiave primaria, ad esempio, può essere utilizzata per abilitare in modo sicuro il progetto di clonazione dal repository remoto all'endpoint del client.

8

Se si utilizza Windows PowerShell, il modo più semplice è:

cat ~/.ssh/id_<key-type-here>.pub | clip

Questo copierà la chiave negli appunti per un facile incollaggio.

Quindi, nel mio caso, uso ed25519 poiché RSA è ora abbastanza hackerabile:

cat ~/.ssh/id_ed25519.pub | clip

Poiché mi trovo a fare molto, ho creato una funzione e impostato un semplice alias che potrei ricordare nel mio profilo PowerShell (scopri di più sui profili PowerShell qui . Basta aggiungere questo al tuo Microsoft.PowerShell_profile.ps1:

function Copy-SSHKey {
    Get-Content ~/.ssh/id_ed25519.pub | clip
}

Set_Alias -Name sshkey -Value Copy-SSHKey

Quindi, in una console di PowerShell, esegui . $profileper caricare le funzioni. Quindi d'ora in poi tutto ciò che dovrete fare è eseguire sshkey, quindi incollare la chiave ovunque sia necessario tramite gli Appunti.


7

Apri il tuo file id_dsa.pub o some_name.pub con gedit e copia e incolla il contenuto!

Usa solo:

~/.ssh$ gedit some_name.pub

Quando lo faccio, si apre un file vuoto. Non mostra alcun testo al suo interno. Ma quando sfoglio il file manager, sono in grado di vedere il testo.
iamprem,

7

Uso:

# sudo su
# cd /home/user/.ssh
.ssh# gedit id_rsa.pub

Quindi copia l'intero file senza spazi. Fai clic sull'icona in alto a destra della pagina GitHub, vai alle impostazioni e aggiungi ssh.

Incolla la copia nello spazio. Potrebbe richiedere la tua password GitHub. Entra Salva.


7

Il seguente comando salverà la chiave SSH negli Appunti. Hai solo bisogno di incollare nella posizione desiderata.

cat ~/.ssh/id_rsa.pub | pbcopy

Questo è il mio modo preferito.
iamkeir,

5

Può essere trovato su questo percorso (percorso predefinito):

/Users/john/.ssh

john è il tuo nome utente Mac.


5

Se stai usando Windows, il comando è:

type %userprofile%\.ssh\id_rsa.pub

dovrebbe stampare la chiave (se ne hai una). Dovresti copiare l'intero risultato. Se nessuno è presente, quindi:

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



3

In UBUNTU +18.04

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

E dopo basta copiare e incollare

         cat ~/.ssh/id_rsa.pub 

o

         cat ~/.ssh/id_dsa.pub

2

Su un Mac, puoi farlo per copiarlo negli appunti (come un cmd + ccollegamento)
cat ~/Desktop/ded.html | pbcopy
pbcopy < ~/.ssh/id_rsa.pub

e incollare pbpaste > ~Documents/id_rsa.txt

oppure usa cmd + vshorcut per incollarlo da qualche altra parte.

~/.sshè lo stesso percorso che /Users/macbook-username/.ssh
è possibile utilizzare Stampa directory di lavoro: pwdcomando sul terminale per ottenere il percorso della directory corrente.


1

Uso Git Bash per Windows.

$ eval $ (ssh-agent -s) // attiva la connessione

  • un po 'di output

$ ssh-add ~ / .ssh / id_rsa // aggiunge l'identità

  • qualche altra uscita

$ clip <~ / .ssh / id_rsa.pub // QUESTO È QUELLO IMPORTANTE. Questo aggiunge la tua chiave agli appunti. Torna su GitHub e incollalo e voilá! Dovresti essere bravo ad andare.


0

Su Mac / unix e Windows:

ssh-keygenquindi seguire le istruzioni. Ti chiederà un nome per il file (supponiamo che tu lo chiami pubkey, per esempio). Immediatamente, dovresti avere l'impronta digitale della chiave e l'immagine casuale della chiave visibile a te.

Quindi usa semplicemente il tuo editor di testo preferito e inserisci il comando vim pubkey.pube (la tua chiave ssh-rsa) dovrebbe essere lì.

Sostituisci vim con emacs o qualunque altro editor tu abbia / preferisci.

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.