DEV Community

Cover image for ¿Cómo crear una llave SSH y conectarla con Github en Windows? 🤔
Cristian Fernando
Cristian Fernando

Posted on

¿Cómo crear una llave SSH y conectarla con Github en Windows? 🤔

Índice

  1. Introducción
  2. Consideraciones iniciales
  3. Crear una llave SSH en Windows
  4. Llave pública vs Llave privada
  5. Conectando la llave SSH con Github
  6. Verificando la conexión
  7. Conclusiones

1. Introducción

Cuando aprendemos Git y Github inicialmente nos sugieren que clonemos proyectos usando el protocolo HTTP donde solo es suficiente tener a mano la url del proyecto para poder clonarlo de manera satisfactoria.

Con el tiempo aprendemos que existen otros protocolos que proporcionan mayor seguridad para lograr lo mismo como por ejemplo el protocolo SSH.

img

2. Consideraciones iniciales

Este post es netamente práctico y puede ser considerado más como una guía rápida, no nos extenderemos en explicar que es el protocolo SSH, que beneficios tiene usarlo o que algoritmos de criptografía asincrónica existen para poder encriptar nuestros datos, iremos directo al grano a explicar como crear una llave SSH y conectarla de manera adecuada con GitHub.

Una última consideración a tomar en cuenta es que los ejemplos de este post están hechos con git 2.47.0 y la interfaz de GitHub a la fecha es del 08-12-2024 (mencionamos esto último porque es posible que con el tiempo la interfaz de Github sea un poco diferente a la mostrada en estos ejemplos)

git-version

Dicho todo esto podemos comenzar 😎

3. Crear una llave SSH en Windows

  • Abrimos nuestra consola git bash y nos dirigimos al home de nuestra PC, en mi caso la ruta sería: /c/Users/crisf.

  • Verificamos que la carpeta .ssh no existe con ls .ssh y luego creamos la carpeta correspondiente con mkdir .shh.

img

  • Entramos en la carpeta .ssh que acabamos de crear y ejecutamos el siguiente comando: ssh-keygen -t rsa -C "email que usas en git"

img

Esto creará el archivo id_rsa y id_rsa.pub en la ruta /c/Users/crisf/.ssh

img

4. Llave pública vs Llave privada

El archivo id_rsa.pub es nuestra clave pública y que podemos compartir con cualquier servicio que nos pida una conexión ssh (en nuestro caso Github).

Por otro lado el archivo id_rsa es nuestra clave privada que no debe ser compartida bajo ningún motivo con nadie.

5. Conectando la llave SSH con Github

Ahora vamos a nuestra cuenta de GitHub, nos dirigimos a Settings y luego a SSH and GPG keys, tendríamos que ver una pantalla como la siguiente:

img

Ahora le damos a New SSH key y llenamos los datos con un título para nuestra llave y posteriormente el valor de nuestra llave pública.

Se vería así:

img

Y nuestra llave ya creada se verá así:

img

6. Verificando la conexión

Para verificar que la conexión se hizo de manera exitosa ejecutamos: ssh -T git@github.com y aceptamos la conexión.

img

La salida esperada debería ser nuestro usuario de GitHub un mensaje de autenticación exitosa.

Esta es la confirmación de que hemos hecho todo bien y que podemos usar SSH para poder trabajar de ahora en adelante.

La manera más simple y práctica de probar esto es intentando clonar un repositorio usando SSH, de mi GitHub intentó clonar un proyecto ejercicios-python que tengo:

img

Finalmente Github se encarga de mandarnos un email al correo que establecimos en nuestra conexión:

img

Todo perfecto 😃

7. Conclusiones

  • Aprender a crear llaves SSH es súper importante para conectarnos con diferentes servicios que así lo necesiten.
  • Muchas veces necesitamos crear estas llaves pero olvidamos los pasos a seguir, este post es una guía rápida para poder lograr este propósito.

Otros post de mi autoría que te pueden interesar:

end

Top comments (0)