Configurar SSH Github en Windows 10, Linux y MacOs

Autor: rioyi | Lectura: 5 minutos | Jan 23, 2024

Explora Git en Windows 10: aprende a instalar, generar llaves SSH y configurar GitHub con facilidad. Este tutorial te guía hacia una gestión de proyectos segura y eficiente. ¡Perfecto para usuarios de todos los niveles!

Configurar SSH Github en Windows 10, Linux y MacOs

WINDOWS 10

Para windows vamos a instalar git, ya sea desde los links de descarga o usando la terminal.

Descarga e instalación de GIT desde links

Haz clic aquí para descargar la última versión (2.43.0) de 64 bits de Git para Windows. Esta es la versión más reciente. Se publicó el 2023-11-20.

Links de descarga para 32 y 64 bits
Instalador independiente (Standalone Installer):
Portátil (Portable "thumbdrive edition")

Descarga e instalación de GIT usando la herramienta winget

Instale la herramienta winget si aún no la tiene y, a continuación, escriba este comando en la línea de comandos o en Powershell.
winget install --id Git.Git -e --source winget

La versión actual del código fuente es la 2.43.0. Si desea la versión más reciente, puede compilarla a partir del código fuente.
Al instalar la app en tu equipo, recuerda instalar la consola de bash, porque ahí es donde vamos a trabajar la mayor parte “LIKE A HACKER”!
Abre la consola de git-cmd o PowerShell, lo debes conseguir en el botón inicio, una vez tengas instalado git, abre la consola y vamos al primer paso.

Generar llave ssh:

Para ello vamos a escribir en nuestra consola el siguiente comando:
ssh-keygen -t rsa -b 4096 -C "momoko@humantodev.com"

NOTA 1:
Donde dice: momoko@humantodev.com, ahí va tu email. Cuando lo generes te salen las opciones como por ejemplo: donde quieres guardarlo, si deseas colocarle clave, entre otras cosas, si le das ENTER dejará todo en blanco y hará la configuración por defecto.

NOTA 2:
Puede que no necesites darle una contraseña a la llave ya que no la vas a compartir, y si quieres usarla para git podría ser molesto que, por ejemplo, al hacer un git pull te pida la clave de la llave ssh.

Algunos flags:
  • El -t rsa genera una clave con encriptación RSA.
  • El -b es el tamaño, en este caso es de 4096 bit.
  • El -C le colocas una nota para identificar la llave muy útil.
1_sh0--a670muispjvuyk1za_rioyi_blog
RSA SHA256
Te debería salir algo como esto en tu consola.
Es la imagen de tu llave y quiere decir que se genero correctamente, ¡Felicidades!
Este comando crea una carpeta nueva en el directorio del usuario, llamada .ssh, dentro de ella vas a ver la lave publica y la privada.

NOTA IMPORTANTE:  Debes tener windows configurado para poder ver las carpetas ocultas. Para poder ver las carpetas que comienzan con “.”, en tu caso el “.ssh”. Para ello debes ir a Opciones de Carpetas, acá te dejo como Ver Carpetas y archivos ocultos en windows.

Esta llave que se generó la debemos montar en un agente (como un manejador de llaves) y luego cargarla para poder ser usada.
Para preparar tu agente con tu nueva llave corre en la consola el siguiente comando:
eval $(ssh-agent -s)

Esto creará al agente y te dará el numero de pid que esta corriendo. Luego le agregas la llave al agente con este comando:
ssh-add ~/.ssh/id_rsa

Te debe salir un mensaje como este:
Identity added: /c/User/momoko/.ssh/id_rsa(momoko@humantodev.com)

Volvamos con nuestras llaves generadas, vas a ver 2 archivos un .pub y otro sin extensión.
1_xv2w_6pxybyofyqgoas6za_rioyi_blog
archivos generados rsa

NOTA 3:
El archivo .pub Claro! es el publico, ese debes compartir y este vamos a configurarlo en nuestra cuenta de github.


AHORA CON LA GENTE DE LINUX Y MAC

Vamos al grano!!!!
Abre la consola y corre estos comandos:

Generar las llaves (el detalle de los flags esta arriba en la sección de windows.)
ssh-keygen -t rsa -b 4096 -C "momoko@humantodev.com"

Crear Agente a usar Llave ssh
eval $(ssh-agent -s)

Agregar Llave ssh al agente para ser usada.
ssh-add ~/.ssh/id_rsa

Te debe salir un mensaje como este:
Identity added: /c/User/momoko/.ssh/id_rsa(momoko@humantodev.com)

CONFIGURANDO MI GITHUB

1_narqbpqawfkg_hcjlgyekg_rioyi_blog
config ssh keys

Para añadir una llave SSH a tu cuenta GitHub, ve a la configuración (Settings) de tu cuenta y selecciona la opción “llaves SSH y GPG” en el menú de la izquierda.
1_7jd-9wybmjqc73snpbbogg_rioyi_blog
ejemplo del menu ssh

En la derecha, haz clic en el botón “Nueva clave de SSH” para crear una nueva clave de SSH para Github.
El siguiente paso es agregar la contenido dentro de nuestro archivo id_rsa.pub.
Para ello desde windows pueden hacer click derecho sopbre el archivo y abrir como… este archivo lo pueden abrir con un editor de texto o el popular block de notas.

En linux o mac solo tienen que correr el siguiente comando:
cat ~/.ssh/id_rsa.pub

El contenido de la llave publica se ve algo asi:
ssh-rsa B3NzaC1yc2EAAAADAQABAAACAQC+HvRnxwPJyUiUO/UCPKrW6mFPgJF8LxsC2lbBePtn+UDv4Xy+eMJRgG5fbaqy2i0tvPWtO9AAIlclkIVeu5LmV7RaE8H78VXxGVQLcWXvlS0SGlwIxXXd9hBeGh6qPmrya63Ezrt/J1fNy6Ro9s5+ndLogBG2G0JKdAoytbCIBgPmm6sK9nvv3kHrjSK4S0rRz0nb9oaxCQF6V+T75hPgYp+JMOl8yZZMGLN3GPadE2ye2/lskJXzYjlHyjAE6a0g+vrHmMjOULPUrO   momoko@humantodev.com

Vas a copiar todo el contenido de la llave y la vas a pegar en github
1_kwsylcg6i-pcxus4qicwuw_rioyi_blog
ejemplo de como insertas clave ssh

Le das al botón de agregar y listo! ya tienes configurada tu llave ssh en tu github, adiós inseguridad y adiós agregar claves en cada push o pull.
Recuerda cuando clones tus repositorio tomar la opción de copiar la url por SSH y no por HTTP, sino no estas usando tu llave ssh.

Recomendaciones:

  • Si tienes varias computadoras y deseas agregar las llaves en tu cuenta github, en el titulo agrégale algo que lo identifique por ejemplo: [linux][trabajo]rioyi o [mac][personal]rioyi, así logras identificar las llaves con más facilidad cuando vas a hacer mantenimiento de ellas.
  • No agregues clave a la llave si solo la vas a usar en tu maquina y no vas a compartirla, de lo contrario siempre que uses la llave te va a pedir la clave y puede ser molesto.
  • Configura, rompe, prueba y pregunta así vas aprendiendo a usar la llaves, son muy útiles, por ejemplo para conectarte de forma segura a un servidor.

                                                   .        .       .

Si te gusta este tipo de contenido, ¡sígueme en Medium para obtener más post como este! ¿Todavía no eres miembro? ¡Haz clic aquí para convertirte en uno ahora!

Además, considera seguirme y apoyarme en Buy Me A Coffee. El café para escritores es como combustible para, eh, supongo que lo que sea que funcione con combustible. Una pequeña cantidad de tu parte significa mucho para mí :)


¿Disfrutas mi contenido?

¡Considera invitarme un café para apoyarme a manter los servidores!

Invítame un café