SSH para Github, Gitlab, etc

Guillermo David
MyCodeBad
Published in
2 min readMar 30, 2018

En este post veremos como configurar nuestro equipo de desarrollo con llaves SSH para GITHUB y GITLAB. Esto puede ser aplicado a BITBUCKET entre otros.
Estos pasos fueron ejecutados en el sistema operativo Debian 9.

Definición

SSH o Secure Shell, es un protocolo de administración remota que permite a los usuarios controlar y modificar sus servidores remotos a través de Internet. El servicio se creó como un reemplazo seguro para el Telnet sin cifrar y utiliza técnicas criptográficas para garantizar que todas las comunicaciones hacia y desde el servidor remoto sucedan de manera encriptada. Proporciona un mecanismo para autenticar un usuario remoto, transferir entradas desde el cliente al host y retransmitir la salida de vuelta al cliente.

Puedes ver mas en este enlace.

Paso 1.

En nuestra terminal escribimos el siguiente comando, con el correo que usamos en github.

$ ssh-keygen -t rsa -C "nombre_correo@dominio.extension"

Paso 2.

Nos retornara el siguiente mensaje.

$Generating public/private rsa key pair.

Enter file in which to save the key (/home/user_name/.ssh/id_rsa):

Este punto puedes ponerle un nombre para identificar la llave, en mi caso pondre “github_me” y le damos enter.

github_me

Luego pondremos una contraseña para la llave ssh que estamos creando. Ahora repetimos los mismos pasos: 1 y 2, pero para gitlab.

Paso 3.

En nuestra terminal ejecutamos el siguiente comando.

ls -la ~/.ssh

Nos mostrara en terminal algo similar a esto.

Imagen 1. Respuesta de ls -la ~/.ssh

Paso 4.

Ahora nos ubicaremos en la carpeta “.ssh”, desde la terminal y creamos un archivo llamado “config”.

cd ~/.ssh
touch config
vim config

Y dentro del archivo ponemos lo siguiente:

# Personal account
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_me
# Gitlab account
Host gitlab.com
HostName gitlab.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitlab_me

Paso 5

Agregamos nuestras llaves que creamos, con el siguiente comando.

ssh-add ~/.ssh/github_me
ssh-add ~/.ssh/gitlab_me

Una vez generado nuestras llaves, tenemos que agregar dichas llaves ssh, a GITHUB y GITLAB, propiamente dichos.

Paso 6

Una vez ya agregada nuestras “ssh” generados a GITHUB y GITLAB, probamos la conectividad, con el siguiente comando.

ssh -T git@github.com

Y les mostrara el siguiente mensaje.

Imagen 2. Realizando el test de conectividad con las llaves generadas.

Y listo, ya tenemos configurado nuestras llaves ssh en nuestro equipo de desarrollo.

Paso 7

Ahora para copiar tu clave publica, podemos ejecutar el siguiente comando, en caso de no tenerla necesitas instalarla.

xclip -sel clip < ~/.ssh/github_me.pub

Y lo tenemos en la papelera, entonces cuando hagamos ctrl +v, dentro de nuestras configuraciones en nuestro repositorio lo podremos pegar.

Puedes visitar mi pagina personal en: https://guillermoparedes.github.io

--

--