Original article: How to Get and Configure Your Git and GitHub SSH Keys
Si usas Github sin configurar una clave SSH, te lo estas perdiendo. Sólo piensa en todo el tiempo que gastas en introducir tu correo electrónico y contraseña en la consola cada vez que haces push de un commit, que podría ser dedicado a programar.
Bueno, no mas. Aquí hay una guía rápida para generar y configurar una clave SSH con GitHub, para que nunca mas tengas que autenticarte de la manera antigua.
Verifica si ya existe una clave SSH
Primero, revisa si ya tienes generadas claves SSH para tu maquina. Abre la terminal e ingresa el siguiente comando.
ls -al ~/.ssh
Si ya generaste claves SSH, deberías ver una respuesta similar a esta:
-rw------- 1 user_name user_name 1766 Jul 7 2018 id_rsa
-rw-r--r-- 1 user_name user_name 414 Jul 7 2018 id_rsa.pub
-rw------- 1 user_name user_name 12892 Feb 5 18:39 known_hosts
Si tus claves ya existen, avanza a la sección copiar tu clave SSH pública mas debajo.
Si no ves ninguna respuesta o recibes un mensaje de que el archivo o directorio no existe (No such file or directory
), entonces ejecuta en la terminal:
mkdir $HOME/.ssh
Luego genera un nuevo conjunto de claves con:
ssh-keygen -t rsa -b 4096 -C your@email.com
Ahora revisa que tus claves existan con el comando ls -al ~/.ssh
y asegurate de que la salida de la terminal es similar a la mostrada mas arriba.
Aviso: Las claves SSH siempre son generadas como un par de claves públicas (id_rsa.pub
) y privadas (id_rsa
). Es extremadamente importante que nunca reveles tu clave privada, y solo uses tu clave pública para cosas como la autenticación en GitHub. Puedes leer mas sobre como funcionan los pares de claves SSH / RSA aquí.
Agregua tu clave SSH al ssh-agent
ssh-agent
es un programa que se inicia cuando inicias sesión y almacena tus claves privadas. Para que funcione correctamente, necesita estar ejecutandose y tener una copia de tu clave privada.
Primero, asegúrate de que ssh-agent
esta ejecutándose con:
eval "$(ssh-agent -s)" # for Mac and Linux
o:
eval `ssh-agent -s`
ssh-agent -s # for Windows
Luego, añade tu clave privada al ssh-agent
con:
ssh-add ~/.ssh/id_rsa
Copia tu clave SSH publica
A continuación, debes copiar tu clave SSH pública en el portapapeles
Para Linux o Mac, imprime el contenido de tu clave pública a la consola con:
cat ~/.ssh/id_rsa.pub # Linux
Luego selecciona y copia la respuesta.
O para Windows simplemente ejecuta:
clip < ~/.ssh/id_rsa.pub # Windows
Añade tu clave pública SSH a GitHub
Ve a la página de ajustes de GitHub, click en SSH and GPG keys y en dar al botón "New SSH key":
Luego ingresa un nombre reconocible y pega tu clave pública (id_rsa.pub
) :
Finalmente, comprueba la autenticación en la terminal con:
ssh -T git@github.com
Si seguiste correctamente todos los pasos, deberías ver este mensaje:
Hi your_user_name! You've successfully authenticated, but GitHub does not provide shell access.