SSH Y GITLAB. ACTIVIDADES AUTOMÁTICAS

La Eficiencia es hacer las cosas correctamente,la efectividad es hacer las cosas correctas.

– Peter Drucker.

Quizá el titulo de artículo sea un poco confuso, pero es que Yoast me pone puntos menos si pongo títulos demasiados largos. Pero explicare un poco el titulo para ver de que va todo esto.

Anteriormente nosotros usábamos el cliente GitKraken; Para poder realizar nuestros Pull , Push y Merge , Las cuales son nuestras actividades básicas que realizamos constante para administrar nuestro proyecto de ALUX. Pues la últimas políticas de GitKraken restringen los proyectos privados y se necesita una licencia la cual vale la pena. Pues bien por el momento regresaremos al CLI y a la ahora que queremos realizar las mismas actividades debemos escribir nuestra contraseña. Lo cual es un fastidio.

gitlab para junglacode
gitlab para junglacode

Soluciones

En git yo conozco hasta el momento 2 soluciones las cuales nos pueden ahorrar ese pequeño fastidio de escribir a cada rato los malditos passwords. Y tenemos dos vías almacenar las credenciales en GIT y crear accesos con SSH.

Almacenar credenciales

Este método lo recomiendo para el protocolo HTTPS , y es lo puedes usar con un comando simple el cual permite guardar tus contraseñas con un X lapso de tiempo.

monolinux@weapon-x:~> git config --global credential.helper 'cache --timeout=3600'

Este simple comando puede almacenar tu contraseña por 15 min, Si modifica el timeout puede postergarla por mas tiempo

Accesos con llaves publicas SSH

Hay un mundo bastante interesante con este tema del SSH y es que no solo sirve para Git, sino que también puedes utilizarlo para la administración de servidores y mas aplicaciones. Pero nos centraremos en GIT. Y lo primero que debemos hacer es crear las llaves :

monolinux@weapon-x:~> ssh-keygen 
Generating public/private rsa key pair.
Enter file in which to save the key (home/regina/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in home/regina/.ssh/id_rsa.
Your public key has been saved in home/regina/.ssh/id_rsa.pub.
The key fingerprint is:
43:c5:5b:5f:b1:f1:50:43:ad:20:a6:92:6a:1f:9a:3a 
monolinux@weapon-x:~>

Vamos a ver el contenido de las llaves para posteriormente ingresarla en GitLab. Lo que vamos a obtener el contenido de la id_rsa.pub si ustedes tienen otro numbre solo recuerden que sea la llave publica

monolinux@weapon-x:~>  cd ~/.ssh
monolinux@weapon-x:~>  ls
monolinux@weapon-x:~>  id_rsa id_rsa.pub known_hosts
monolinux@weapon-x:~>  head id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAklOUpkDHrfHY17SbrmTIpNLTGK9Tjom/BWDSU
GPl+nafzlHDTYW7hdI4yZ5ew18JH4JW9jbhUFrviQzM7xlELEVf4h9lFX5QVkbPppSwg0cda
Pbv7kOdJ/MTyBlWXFCR+HAo3FXRitBqxiX1nKhXpHAZsMciLq8V6RjsNAQwdsdMFvSlVK/7X
t3FaoJoAsncM1Q9x5+3V0Ww68/eIFmb1zuUFljQJKprrX88XypNDvjYNby6vwwert/En
mZ+AW4OZPnTPI89ZPmVMLuayrD2cE86Z/il8b+gw3r3+1nKatmIkjn2so1d01QraTlMqVSsrRFi9wrf+M7Q==weaponx.local

el comando head te muestra el contenido de archivos y debe aparecer algo semejante como lo que esta enseguida de dicho comando. Y este resultado es el que vamos a colocar en Gitlab.

ssh_gitlab_monolinux

Con esto podemos realizar todas las actividades sin necesidad de escribir la fastidiosa contraseña a cada rato.. Saludos y si tienen alguna duda no duden en comentarnos

Bibliográficas :

https://git-scm.com/book/es/v2/Herramientas-de-Git-Almacenamiento-de-credenciales

https://git-scm.com/book/es/v1/Git-en-un-servidor-Generando-tu-clave-p%C3%BAblica-SSH

https://www.redeszone.net/seguridad-informatica/servidor-ssh-en-linux-manual-de-configuracion-para-maxima-seguridad/

Deja un comentario

Tu dirección de correo electrónico no será publicada.