Github: Configurar clave SSH
Cuando estamos trabajando con GitHub y deseamos interactuar con los repositorios de manera más segura y eficiente, utilizar una clave SSH es una excelente opción. SSH permite que tu conexión con GitHub sea cifrada y sin necesidad de ingresar tus credenciales.
Crear una Nueva Clave SSH
Comenzamos creando una nueva clave, usando el correo electrónico como etiqueta en la terminal:
1
ssh-keygen -t rsa -b 4096 -C "user@mail.com"
-t rsa
: Especifica el tipo de clave (RSA es el más común).-b 4096
: Especifica que tan compleja es la llave (eL tamaño 4096 bits se considera seguro).-C "user@mail.com
: Agrega un comentario con tu dirección de correo para identificar la clave.
Luego se nos pedirá donde almacenar la nueva llave, si se presiona Enter por lo general se almacena en el directorio del usuario en una subcarpeta oculta llamada .ssh
:
1
Enter file in which to save the key (~/<user>/.ssh/id_rsa):
Selecciona la ubicación de tu preferencia o solo presiona Enter.
Agregar la Llave al Servicio de Ssh-Agent
El comando ssh-agent
es un programa auxiliar que realiza seguimiento de las claves de identidad del usuario y sus frases de contraseñas.
Verificar si el programa se está ejecutando:
1
eval $(ssh-agent -s)
Ahora agregamos la llave privada al agente ssh. Si creaste la llave con un nombre distinto, asegurate de apuntar hacia donde se encuentre la llave que creaste. Si dejaste los valores predeterminado basta con copiar el siguiente comando:
1
ssh-add ~/.ssh/id_rsa
El comando anterior nos devolverá el siguiente mensaje:
1
Identity added: /<User>/.ssh/id_rsa (user@mail.com)
Registrar la LLave Pública a Github
En Git Bash podemos usar la herramienta clip
de Windows para copiar la clave de una manera sencilla y rápida:
1
clip < ~/.ssh/id_rsa.pub
- Vamos a nuestra cuenta en GitHub e iniciamos sesión.
- Dirigite a la configuración de llaves SSH y GPG
- Damos clic en el botón New SSH key.
- En el campo
title
agrega una etiqueta descriptiva para la clave nueva. - En el campo
Key
pega la clave que está contenida en el portapapeles con ctrl + v.
Probar la Conexión
Par asegurarnos de que todo está funcionando correctamente, probamos la conexión con GitHub usando el siguiente comando:
1
ssh -T git@github.com
Si todo está configurado correctamente, deberías recibir un mensaje como el siguiente:
1
Hi mc-herrera-90! You've successfully authenticated, but GitHub does not provide shell access.
Mi lema es