¿Cómo accedo a mi clave pública SSH?

611

Acabo de generar mi par de claves RSA y quería agregar esa clave a GitHub.

Lo intenté cd id_rsa.puby id_rsa.pub, pero no tuve suerte. ¿Cómo puedo acceder a mi clave pública SSH?

sscirrus
fuente
3
@kenorb ¿Quiere decir que Q es un duplicado de esto? Esta pregunta se hizo dos años antes. :)
sscirrus
Sí, el otro parece estar mejor posicionado (basado en la redacción, etc.), tiene más puntos de vista y votos en un período de tiempo más corto, lo que indica que es mucho más popular. Ver: ¿Debería votar para cerrar una pregunta duplicada, aunque sea mucho más nueva y tenga respuestas más actualizadas? Una vez duplicado, ambas respuestas podrían fusionarse en una.
kenorb
66
pbcopy < ~/.ssh/id_rsa.pub¡trabajó para mi! Mira este artículo de GitHub
Connor Leech

Respuestas:

1013

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

Puede enumerar todas las claves públicas que tiene haciendo:

$ ls ~/.ssh/*.pub

Mitch Dempsey
fuente
99
Aunque veo el archivo en el lugar al que se refiere (C: /Users/Me/.ssh/.id_rsa.pub), estos comandos están produciendo un error: No existe tal archivo o directorio. Estoy haciendo esto desde Git Bash, MyPC ~ / .ssh
sscirrus
2
@sscirrus: en Windows, puede usar el typecomando. O simplemente abra el archivo .pub en el bloc de notas y péguelo en github.
Peter Štibraný
Muchas gracias Peter, por la respuesta y la edición. Responda y aceptaré :)
sscirrus
3
@sscirrus: acepte este ... funciona igual de bien (bajo unix o cygwin)
Peter Štibraný
32
en Mac OS X:cat ~/.ssh/id_rsa.pub
karlingen
195

Copia la llave a tu portapapeles.

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

Advertencia: es importante copiar la clave exactamente sin agregar nuevas líneas o espacios en blanco. Afortunadamente, el comando pbcopy facilita la realización perfecta de esta configuración.

Y puedes pegarlo donde lo necesites.

Para tener una mejor idea de todo el proceso, verifique esto: Generando claves SSH .

D_D
fuente
66
sudo apt-get install xclip -ypara aquellos usuarios que no tienen pbcopytrabajo.
suarsenegger
44
sudo apt-get install -y xclipseguido por alias pbcopy="xclip -sel clip"y luego pbcopy < ~/.ssh/id_rsa.pubO simplementexclip -selection clipboard < ~/.ssh/id_rsa.pub
gebbissimo
47

Puede intentar ejecutar el siguiente comando para mostrar su huella digital RSA:

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

o clave pública:

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

Si tiene el mensaje: "El agente no tiene identidades", ssh-keygenprimero debe generar su clave RSA .

kenorb
fuente
1
Esto es bueno para cuando no conoce el camino de la clave de antemano. No siempre está adentro ~/.ssh/.
Rudolfbyker
Lo probé, funciona en Mac, Win10 (en git bash) y Ubuntu.
Filip Haglund
Usar ssh-add -Les, con mucho, la mejor opción, ya que no todas las claves SSH son claves RSA ubicadas en la ~/.sshcarpeta. Prefiero usar mi clave PGP para la autenticación y, por lo tanto, no tengo ningún ~/.ssh/id_rsa.pubarchivo.
steinybot
30

Si está en Windows use lo siguiente, seleccione todo y copie desde una ventana del Bloc de notas:

notepad ~/.ssh/id_rsa.pub  

Si estás en OS X, usa:

pbcopy < ~/.ssh/id_rsa.pub
nsuinteger
fuente
17

Así es como encontré el mío en OS X:

  1. Abrir una terminal
  2. (Estás en el directorio de inicio) cd .ssh(un directorio oculto)
  3. pbcopy <id_rsa.pub (esto lo copia al portapapeles)

Si eso no funciona, haga lsy vea qué archivos hay allí con una .pubextensión.

marca
fuente
10

Después de generar su clave SSH, puede hacer:

cat .ssh/id_rsa.pub |pbcopy

que copiará su clave ssh en su portapapeles.

Brett
fuente
9

En la terminal cat ~/.ssh/id_rsa.pub

explicación

  1. cat es una utilidad estándar de Unix que lee archivos e imprime resultados
  2. ~ ¿Es su ruta de usuario doméstico
  3. /.ssh : su directorio oculto contiene todos sus certificados ssh
  4. id_rsa.pub O id_dsa.pub son claves públicas RSA (la clave privada ubicada en la máquina del cliente). la clave principal, por ejemplo, se puede usar para habilitar el proyecto de clonación desde el repositorio remoto de forma segura hasta el punto final de su cliente.
avivamg
fuente
8

Si está utilizando Windows PowerShell, la forma más fácil es:

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

Eso copiará la clave a su portapapeles para pegar fácilmente.

Entonces, en mi caso, uso ed25519 ya que RSA ahora es bastante pirateable:

cat ~/.ssh/id_ed25519.pub | clip

Debido a que me encuentro haciendo esto mucho, creé una función y configuré un alias simple que podía recordar en mi perfil de PowerShell (obtenga más información sobre los perfiles de PowerShell aquí . Solo agregue esto a su Microsoft.PowerShell_profile.ps1:

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

Set_Alias -Name sshkey -Value Copy-SSHKey

Luego, en una consola PowerShell, ejecute . $profilepara cargar las funciones. Luego, a partir de ahora, todo lo que tendrá que hacer es ejecutar sshkey, y luego pegar la clave en el lugar que necesite a través del portapapeles.

Riley Taylor
fuente
7

¡Abra su archivo id_dsa.pub o some_name.pub con gedit y copie y pegue el contenido!

Solo usa:

~/.ssh$ gedit some_name.pub
sbdv0
fuente
Cuando lo hago, está abriendo un archivo en blanco. No muestra ningún texto en él. Pero cuando busco en el administrador de archivos, puedo ver el texto.
iamprem
7

Utilizar:

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

Luego copie todo el archivo sin espacios. Haga clic en su icono en la esquina superior derecha de la página de GitHub, vaya a configuración y agregue ssh.

Pega la copia en el espacio. Puede solicitar su contraseña de GitHub. Ingresarlo. Salvar.

yavorcik
fuente
7

El siguiente comando guardará la clave SSH en el portapapeles. Solo necesita pegar en la ubicación deseada.

cat ~/.ssh/id_rsa.pub | pbcopy
Prabhat Kasera
fuente
Esta es mi forma favorita.
iamkeir
5

Se puede encontrar en esta ruta (ruta predeterminada):

/Users/john/.ssh

john es tu nombre de usuario de Mac.

Espía
fuente
5

Si usa Windows, el comando es:

type %userprofile%\.ssh\id_rsa.pub

debería imprimir la clave (si tiene una). Debes copiar todo el resultado. Si no hay ninguno presente, entonces:

ssh-keygen -t rsa -C "[email protected]" -b 4096

Jghayes525
fuente
3

Abrir terminal nano ~ / .ssh / id_rsa.pub

Nick Wood
fuente
3

En UBUNTU +18.04

         ssh-keygen -o -t rsa -b 4096 -C "[email protected]" 

Y después de eso solo copia y pega

         cat ~/.ssh/id_rsa.pub 

o

         cat ~/.ssh/id_dsa.pub
Shabeer Sha
fuente
2

En una Mac, puede hacer esto para copiarlo en su portapapeles (como cmd + cacceso directo)
cat ~/Desktop/ded.html | pbcopy
pbcopy < ~/.ssh/id_rsa.pub

y pegar pbpaste > ~Documents/id_rsa.txt

o use cmd + vshorcut para pegarlo en otro lugar.

~/.sshes la misma ruta que /Users/macbook-username/.ssh
puede utilizar Imprimir directorio de trabajo: pwdcomando en la terminal para obtener la ruta a su directorio actual.

Jun711
fuente
1

Yo uso Git Bash para mi Windows.

$ eval $ (ssh-agent -s) // activa la conexión

  • alguna salida

$ ssh-add ~ / .ssh / id_rsa // agrega la identidad

  • alguna otra salida

$ clip <~ / .ssh / id_rsa.pub // ESTE ES EL IMPORTANTE. Esto agrega su clave a su portapapeles. Vuelve a GitHub y solo pégalo, ¡y listo! Usted debe ser bueno para ir.

JW
fuente
0

En Mac / unix y Windows:

ssh-keygenluego sigue las indicaciones. Le pedirá un nombre al archivo (digamos que lo llama pubkey, por ejemplo). De inmediato, debe tener su huella digital clave y la imagen de randomart de su clave visible para usted.

Luego, solo use su editor de texto favorito e ingrese el comando vim pubkey.pub y este (su clave ssh-rsa) debería estar allí.

Reemplace vim con emacs o cualquier otro editor que tenga / prefiera.

aserraderos
fuente