Autenticación SSH vs HTTPS

Domina Autenticación SSH vs HTTPS con Git y GitLab profesional

Módulo 4 ⏱️ 2 horas 🛠️ Git CLI 🦊 GitLab 🤖 ChatGPT-4 🚀 Batch Mode 🎨 Visual Cards

1. INTRODUCCIÓN TÉCNICA:

La autenticación SSH y HTTPS son dos métodos de conectividad y autenticación que se utilizan en Git y GitLab para interactuar con repositorios remotos. SSH, que significa Secure Shell, es un protocolo de red que permite la comunicación segura entre dos sistemas de red. HTTPS, por otro lado, significa Hyper Text Transfer Protocol Secure, que es una versión segura del HTTP. Ambos son críticos en el desarrollo moderno debido a su papel en la seguridad y la eficiencia de la colaboración en el desarrollo de software. En el ecosistema Git/GitLab, se utilizan para clonar, tirar y empujar cambios a los repositorios remotos.

2. COMANDOS Y EJEMPLOS PRÁCTICOS AVANZADOS:

Para configurar SSH en GitLab, primero generamos la llave SSH con el siguiente comando:

Comandos Bash Copiar
$ ssh-keygen -t rsa -b 4096 -C "[email protected]"

Luego, añadimos la llave SSH a GitLab:

Comandos Bash Copiar
$ cat ~/.ssh/id_rsa.pub

Copia el output y pégalo en GitLab (Perfil -> Settings -> SSH Keys)

Para clonar un repositorio con SSH:

Comandos Bash Copiar
$ git clone [email protected]:username/repo.git

Para clonar con HTTPS:

Comandos Bash Copiar
$ git clone https://gitlab.com/username/repo.git

Ejercicios Prácticos Visuales

1

Generar y añadir una llave SSH en GitLab

Básico 8-13 min
Ejercicio 1: Generar y añadir una llave SSH en GitLab Objetivo: Aprender a generar y añadir una llave SSH a GitLab. Dificultad: Fácil Tiempo estimado: 10 minutos Instrucciones: Sigue los comandos anteriores para generar y añadir una llave SSH a GitLab.
2

Clonar un repositorio utilizando SSH y HTTPS

Básico 11-16 min
Ejercicio 2: Clonar un repositorio utilizando SSH y HTTPS Objetivo: Aprender a clonar un repositorio utilizando tanto SSH como HTTPS. Dificultad: Fácil Tiempo estimado: 10 minutos Instrucciones: Sigue los comandos anteriores para clonar un repositorio utilizando tanto SSH como HTTPS.
4. PROBLEMAS COMUNES Y SOLUCIONES AVANZADAS:

Error: "Permission denied (publickey)." Diagnóstico: Este error ocurre cuando GitLab no puede autenticar tu conexión SSH. Solución: Asegúrate de que tu llave SSH esté correctamente añadida a GitLab.

Error: "Cloning into 'repo'... fatal: repository 'https://gitlab.com/username/repo.git/' not found" Diagnóstico: Este error ocurre cuando intentas clonar un repositorio que no existe o no tienes permiso para ver. Solución: Asegúrate de que el repositorio existe y tienes permiso para verlo.

5. MEJORES PRÁCTICAS EMPRESARIALES:

1. Utiliza SSH para conexiones seguras y eficientes. 2. Asegúrate de que tu llave SSH esté protegida con una frase de contraseña segura. 3. Utiliza HTTPS cuando la configuración SSH no sea posible o esté bloqueada. 4. Mantén tus llaves SSH y credenciales de GitLab seguras. 5. No compartas tus llaves SSH o credenciales de GitLab. 6. Sigue las convenciones de commit de tu equipo para mantener un historial de commit limpio y comprensible.