No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Vinculando nuestra llave SSH en Github

16/18
Recursos

Aportes 346

Preguntas 334

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Hola,
a lo mejor por el blur no se ve pero falta el “-c”

ssh-keygen -t rsa -b 4096 -C "email de github"

Hay un pequeño error en esta clase con respecto al comando ssh-copy-id.
El comando ssh-copy-id sirve para copiar la llave pública y asignarla como una llave autorizada en otro servidor remoto. Lo cual nos permite acceso al servidor sin tener que usar la contraseña.
En la clase se da a entender que el comando sirve como un “Ctrl + C” de la llave. Sin embargo, no es tan simple como eso.
Les recomiendo que omitan esa parte y sigan donde abre y copia la llave manualmente.

Si quieren saber un poco más acerca de cómo funciona el comando ssh-copy-id, les comparto un poco de documentación.
Un saludo.

ssh-keygen -t rsa -b 4096 -C "tu e-mail"

Hay que agregar un -C en mayúscula.

Aquí comparto mi llave…
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAklOUpkD
HrfHY17SbrmTIpNLTGK9Tjom/BWDSUGPl+nafzlHDTY
W7hdI4yZ5ewN U N C A18JH4JW9jbhUFrviQzM7xl
ELEVf4h9lFX5C O M P A R T A SQVkbPppSwg0cd
a3Pbv7kOdJ/MTyT UBlWXFCR+HAo3FXRitBqxiX1
nKhXpHAZsMciLqC L A V E8V6RjsNAQwdsdMF
vSlVK/7XAt3FaoJoAsncO KM1Q9x5+3V0Ww68/eI
Fmb1zuUFljQJKprrX88XypNDvjYNby6vw/Pb0rwert/En
mZ+AW4OZPnTPI89ZPmVMLuayrD2cE86Z/il8b+gw3r
[email protected]

Comando para generar tu llave SSH

ssh-keygen -t rsa -b 4096 [email]

Para evaluar que hay un agente corriendo

eval "$(ssh-agent -s)"

Copiar ID SSH al agente

ssh-copy-id [email]

Copiar llave publica

cd ~/.ssh 
cat id_rsa.pub

Ahora solo tienes que dirigirte a https://github.com/settings/keys (Con tu usuario) y agregar la llave copiada anteriormente

Nota: Por seguridad no compartas tus llaves! 🔐

Mi aporte:

  1. Regresar a la terminal
  2. Crear una llave de tipo SSH la cual es una llave o token que se le estará pasando a GitHub
    a. ssh-keygen -t rsa -b 4096 -C “email de github”, en cuanto se ejecute nos indicara la ruta en donde estará almacenando la llave (en mi caso en: (/home/marcoev/.ssh/id_rsa), aceptamosy nos creara la carpeta .ssh
    i. las carpetas o archivos que inician con . (punto) en el nombre, en Linux se crean como escondidos
    b. posteriormente nos pide una contraseña, la que se indique es importante que no la olvidemos
    c. el archivo id_rsa.pub es el que enviaremos a github y es la parte publica, la parte privada es la que mantendremos nosotros y no debemos de compartir
    i. The key fingerprint is:
    ii. SHA256:***********************
    d. Comando para evaluar si tenemos un agente de ssh corriendo
    i. eval “$(ssh-agent -s)”
  3. ssh-copy-id “correo”
    a. ADVERTENCIA, El estudiante Sneyder Alfonso indica que este paso no es correcto o necesario hacerlo, ya que este comando no funciona como un control + c (copy), yo no lo realice y pude concluir el paso sin problema
  4. Nos cambios a la carpeta de .ssh
    a. cd ~/.ssh
  5. mostramos el contenido del archivo id_rsa.pub, seleccionamos y lo copiamos (con el mouse)
    a. cat id_rsa.pub
    b. Para validar que se haya copiado correctamente, en la línea de comandos damos clic derecho y si se pega, quiere decir que esta bien
  6. Vamos al portal de github, en tu usuario ir a settings>SSH and GPG Keys y damos clic en New SSH Keys
  7. Pegamos el contenido en el campo de key y en title escribimos el nombre de la computadora y clic en Add SSH Key

Hola a todos dure como 2 horas descifrando el comando para la llave del ssh y aquí van los tips:

ssh-keygen -t rsa -b 4096 -C “Tu correo”

  1. Debes escribir -C en MAYUSCULA
  2. El correo que vas a Digitar es el que tienes registrado en tu cuenta de “github . com”, si no la tienes ingresa a la pagina y hazlo.
  3. Importantísimo tu correo debe ir entre coimillas “”

no se porque pasaron por alto todo esto espero ayude a alguien mas.

Si no les funciona el comando “ssh-copy-id your@email”, pueden utilizar este comando, “ssh-add ~/.ssh/id_rsa”…

tanto que el profe oculto su correo en el video para que lo termine mostrando en el minuto 7:01 jajaja

El curso me había parecido muy amigable para quienes empiezan en el mundo de la terminal y programación, pero Ricardo al ocultar su correo deja muchos conflictos en los comandos como el -C (con c Mayúscula) cuando se crea la llave y la forma en la que copia la llave a GitHub es engorrosa. Tuve que devolverme al curso de Freddy para recordar como se hacía. Estos detalles pueden tomar horas de descifrado a muchos.

Recomiendo a platzi que grabe nuevamente esta clase dado que veo muchos errores y lo confirme revisando las pregutnas y aportes

A alguien le ha pasado esto al copiar el ID SSH?

Resumen de Vinculación con github


Verificar versiones de git:

git --version

Update (hacer cada vez que se instale software nuevo):

sudo apt-get update 

Instalar git :

sudo apt install git

Vinculando llave ssh:

ssh-keygen -t rsa -b 4096 -C "email de github"

Validar que le agente está corriendo:

 eval "$(ssh-agent -s)"

Copiar llave pública:

ssh-copy-id "email de github"

Ingresamos a la carpeta .ssh y abrimos el archivo id_rsa.pub:

	cd .ssh
	cat id_rsa.pub
	(Copiar llave)

Vincular con github

Profile -> setting -> SSH and GPG keys -> New SSh key -> copiar toda la llave y colocarle un nombre

Hola les comparto una idea de lo que son las llaves públicas y privadas

Luego de ejecutar

eval "$(ssh-agent -s)"

Hace falta la siguiente instrucción

ssh-add ~/.ssh/id-rsa

(donde id-rsa es el nombre de la llave) en lugar de hacer ssh-copy-id.

Puedes revisar con más detalle en el tutorial Configurar llaves…

El profesor Celis no es nada cuidadoso al dar las instrucciones y mostrarlas, dado que dejo borroso parte del comando

(ssh-keygen -t rsa -b 4096 **********) y tampoco lo explico.

Gracias a Roger Carlos Ariel Alba por su aporte dejando el comando completo

ssh-keygen -t rsa -b 4096 -C “email de github”

Por si a alguien le pasa la -C es en mayúscula sino no sirve

y recuerden amiguitos al momento de crear la llave lo hacen con ssh-keygen -t rsa -b 4096 -C [email protected]

y recuerden la letra C es en MAYUSCULA… para no pasar un buen rato tratando de ver que pusiste mal jajaajaj experiencia propia

Si no funciona el comando “ssh-copy-id your@email”, pueden utilizar este comando, “ssh-add ~/.ssh/id_rsa”
No importa si arroja algo como esto: No such file or directory
Ustedes oprimen enter y siguen con el código de Celis, ejemplo:
yadirn@ALEX:~$ cat “nombre que le pusieron a la llave cuando la crearon”.pub

ejemplo yadirn@ALEX:~$ cat llavecita.pub

Me funcionó de esa manera

para los que tiene instalado git para Windows y no les funciona el comandó "ssh-copy-id email" y tampoco el comando "ssh-add ~/.ssh/id_rsa" la forma que funciona es "ssh-add .ssh/id_rsa"

Recuerdo que no entendí mucho o nada de esta clase pero luego cuando estaba viendo la clase 22 del curso de Git y Github (https://platzi.com/clases/1557-git-github/19951-conexion-a-github-con-ssh/) me di cuenta ya había creado una llave SSH 😐.
.
En ese momento aprendí que debo tener fe en el futuro y paciencia en el ahora, ya que puedo estar haciendo cosas que generen huecos de seguridad, posibles hackeos o publicando fotos que ni yo sabía que tenía 🙄 . Tengo fe de que mi yo del futuro los va a solucionar; y paciencia por ese día que tarde o temrpano va a llegar 🙂👍🏽.

si les da el siguiente error:

Pueden usar el siguiente comando:

Buenos dias cuando pongo el comando ssh-copy-id lalsalsla@gmail me sale el siguiente mensaje y queda ahi como esperando otro comando.
a alguien le paso?
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/radical/.ssh/id_rsa.pub"
slds.

Si a alguno les dio dolores de cabeza el copy-id, yo seguì los pasos directo de github. Desde que les dan “eval” para saber si corre el agente, (si funciona) ponen este comando: cat ~/.ssh/id_rsa.pub
Les va a aparecer la llave que deben copiar en github. Ahora sigan al minuto 6:48 del video “Vinculando nuestra llave SSH en Github”

Les dejo el orden de cada paso actualizado, de acuerdo a la documentación:

ssh-keygen -t ed25519 -C "[email protected]"
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
cat ~/.ssh/id_ed25519.pub
Me gustaría enterder la importancia del agente y del "copy" mencionado...

/usr/bin/ssh-copy-id: ERROR: ssh: connect to host hotmailcl port 22: Connection timed out


a mi me arrojo esto, pero si se generlo el .pub y lo pude colocar en github
realmente no se si funcione, hasta que haga la prueba

🔑 Nunca debemos compartir nuestra llave privada con nadie, si la compartimos por error podemos crear otra.

Llave SSH, es una llave, login, token, que vamos a estar utilizando para poder pasárselo a Github con el fin de subir el código a nuestro repositorio.
Es el código de seguridad con el que vamos a estarnos conectando a Github.

Generar llave SSH

ssh-keygen -t rsa -b 4096 -C "correo@gmail.com"

-t: tipo de algoritmo de encriptación RSA 
-b: Cantidad de bits
-C: correo de identificación

Utilizar el SSH Agent, que nos va a ayudar a gestionar nuestras claves.
Añadimos la clave al agente:

eval "$(ssh-agent -s)"

Copiar la llave pública (este paso se puede omitir)

ssh-copy-id [email protected] 

Copiar la llave publica para pasarla a Github

cd ~/.ssh
cat id_rsa.pub

Copiamos el contenido del archivo para ingresarlo a Github

Ingresamos la llave SSH en Github

Perfil / Settings / SSH and GRG keys / New SSH Key

Tuve un error en la parte de copiar el id ssh, me salía “network is unreachable”, lo solucioné poniendo este comando:

ssh-add ~/.ssh/id_rsa

Sin añadir el correo y procedí normal con el resto de la clase.

Chicos de platzi, estaria bueno que re graben esta clase ya que es dificil para muchos que recein arrancamos, con toda la buena onda! besos.

Este errorcito del profe me han costado 2 valiosas horas, tomen nota.
ssh-keygen -t rsa -b 4096 -C “email de github entre comillas”

el -C debe ser la C mayuscula y tu correo debe ir entre comillas

Para los que tienen el problema con el comando
ssh-keygen -t rsa -b 4096 -C email de github

NOTA: ciertamente va una C que no se alcanzo a ver en el video pero además esa C ES EN MAYUSCULA de lo contrario no la va a tomar.
esto me estaba pasando me daba error pero era porque la estaba dejando en minúscula.

" ssh-keygen -t rsa -b 4096 -C [email] "

En mi caso el comando es asi:
ssh-keygen -t rsa -b4096 -C “[email protected]
-b4096 (Van pegados)
-C mayuscula, la tenia en minuscula, sacaba el error por estas dos razones, Gracias por el comentario de ayuda.

pienso se debería usar un usuario demo así podemos ver todo los que recién estamos aprendiendo, as]i como editar los errores del video para no tener que repetirlos y aprender solo la buena práctica

Hola, les dejo una aclaración:
La única llave SSH que no debe ser compartida es la llave privada “id_rsa”. Por el contrario, la que si se puede compartir con cualquiera (y es medio troll porque no serviría de nada) es la llave pública “id_rsa.pub”

Y es por lo siguiente: con la llave pública es como si ustedes o cualquiera con dicha llave encerrara información dentro de un baúl. Sin embargo, la única persona que puede abrir el baúl es quien posee la llave privada.

Esto se verá más a fondo en el curso de git y github, pero es importante que al ser una intro tenga la misma base de un curso avanzado y no difieran las explicaciones sobre las llaves SSH.

Hola!
Esta clase está genial, solo que para los que no sabemos nada nos queda complicado cuando se generan errores y es porque se omitió algo en la explicación.

CONCLUYENDO:

Regresar a la terminal
Crear una llave de tipo SSH la cual es una llave o token que se le estará pasando a GitHub
a. ssh-keygen -t rsa -b 4096 -C “email de github”, en cuanto se ejecute nos indicara la ruta en donde estará almacenando la llave (en mi caso en: (/home/marcoev/.ssh/id_rsa), aceptamosy nos creara la carpeta .ssh
i. las carpetas o archivos que inician con . (punto) en el nombre, en Linux se crean como escondidos
b. posteriormente nos pide una contraseña, la que se indique es importante que no la olvidemos
c. el archivo id_rsa.pub es el que enviaremos a github y es la parte publica, la parte privada es la que mantendremos nosotros y no debemos de compartir
i. The key fingerprint is:
ii. SHA256:***********************
d. Comando para evaluar si tenemos un agente de ssh corriendo
i. eval “$(ssh-agent -s)”
ssh-copy-id “correo”
a. ADVERTENCIA, El estudiante Sneyder Alfonso indica que este paso no es correcto o necesario hacerlo, ya que este comando no funciona como un control + c (copy), yo no lo realice y pude concluir el paso sin problema
Nos cambios a la carpeta de .ssh
a. cd ~/.ssh
mostramos el contenido del archivo id_rsa.pub, seleccionamos y lo copiamos (con el mouse)
a. cat id_rsa.pub
b. Para validar que se haya copiado correctamente, en la línea de comandos damos clic derecho y si se pega, quiere decir que esta bien
Vamos al portal de github, en tu usuario ir a settings>SSH and GPG Keys y damos clic en New SSH Keys
Pegamos el contenido en el campo de key y en title escribimos el nombre de la computadora y clic en Add SSH Key

En el minuto 1.52 se borra una parte importante del comando, la escribo:
ssh-keygen -t rsa -b4096 -C "email de github"
Si les sale Too many arguments es debido a que falta la “C”, en mayúscula, buena vibra

aqui cuando quiero compartir mi llave de git:
lo que se imaginan:
lClE1qtMnsiwyshi1
lo que comparto:
⣿⣿⣿⣿⣿⣿⡇⠀⠉⠛⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣇⠀⠀⠀⠀⠈⠛⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠟⠋⠉ ⣿⣿⣿⣿⣿⣿⣿⡄⠀⠀⠀⠀⠀⠀⠈⠻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠟⠋⠁⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣆⠀⠀⠀⠀⠀⠀⠀⠘⠉⠉⠉⠉⠉⠉⠀⠉⠉⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣄⠀⢀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡗⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣾⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡟⠀⠀⠀⠠⠲⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠔⢦⡀⠀⠀⠀⠀⢻⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠁⠀⠀⠀⠸⣾⡿⠀⠀⠀⠀⠀⠀⠀⠀⠈⢷⡿⠃⠀⠀⠀⠀⠀⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⡏⢀⣀⣀⠀⠀⠀⠀⠀⠀⠰⠶⠄⠀⠀⠀⠀⠀⠀⠀⢀⣀⡀⠀⠀⢸⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⠣⣿⣿⣿⡧⠀⠀⠀⠀⠀⠀⣀⣀⣀⠀⠀⠀⠀⠀⢼⣿⣿⣿⡆⠀⠀⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⡄⠙⠛⠛⠁⠀⠀⠀⠀⠀⡃⠀⠀⠀⠃⠀⠀⠀⠀⠈⠻⠿⠟⠁⠀⠀⢸ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⠀⠀⠀⠀⠀⠀⠀⠀⠀⠑⠠⠤⠤⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀

este comando ssh-copy-id. me dio un error al final de la espera, leyendo con este comando me funciono ssh-add ~/.ssh/id_rsa

Hay un error en la parte de ssh-copy-id que dice que no se puede conectar, tienen que usar ssh-add ~/.ssh/id_rsa y continuar con la siguiente instrucción.

Me sale el siguiente mensaje de error

Clase 15 – Vinculando nuestra llave SSH en GitHub


¿Qué es una llave SSH?

  • Es una llave de identificación y seguridad con la que nos conectaremos a GitHub.

¿Cómo podemos crear una llave SSH?

  • Con el comando ssh-keygen -t rsa -b 4096 -C “correo-electrónico”

¿Qué significa -t rsa en el comando ssh-keygen -t rsa -b 4096 -C “correo-electrónico”?

  • Es el protocolo de encriptación que tendrá la llave SSH.

¿Qué significa -b 4096 en el comando ssh-keygen -t rsa -b 4096 -C “correo-electrónico”?

  • La cantidad de bits que tiene la llave.

¿Qué correo debemos colocar en el comando ssh-keygen -t rsa -b 4096 -C “correo-electrónico”?

  • El correo con el que nos registramos en GitHub.

¿Cuándo ejecutamos el comando para crear la llave SSH nos brindan la ruta en la que será guardada la llave?

  • Si.

¿Es necesario poner contraseña a la llave SSH para que funcione correctamente?

  • Si.

¿Entre la llave pública y la privada, cuál debemos compartir con GitHub?

  • La pública.

¿Cómo podemos asegurarnos que la llave SSH está corriendo bien?

  • Con el comando eval “$(ssh-agent -s)”

¿Cómo podemos compartir la llave pública SSH con GitHub?

  • Accedemos al directorio en el que esta guardada la llave.
  • Ejecutamos el comando cat con el nombre de la llave pública y copiamos su contenido.
  • Nos dirigimos a la sección de Settings de GitHub dentro de nuestro perfil.
  • Buscamos la opción SSH and GPS Keys.
  • Clic en el botón New SSH key
  • Finalmente pegamos el contenido de la llave publica en el cuadro de texto que dice Key y le asignamos un titulo a la llave para poder identificarla.
  • Clic en el botón Add SSH Key.

¿Cómo podemos diferenciar la llave pública con la llave privada?

  • La llave pública tiene como extensión .pub

¿Por qué no debemos compartir las llaves públicas y privadas con alguien o alguna plataforma?

  • Porque corremos el riesgo de un robo de información sensible del proyecto que estemos realizando.

Para crear la clave SSH, deben hacer lo siguiente:

sudo ssh-keygen -t rsa -b 4096 -C 'email' 

Seguido a esto, se debe corroborar que el agent funcione y el PID cambie constante mente “no tiene que ser estática”.

eval $(ssh-agent -s)

Luego, se debe emplear la siguiente línea.

ssh-copy-id 'email'

Lo siguiente, es ir directamente a la carpeta oculta donde esta el ssh.

cd  ~/.ssh

Se visualiza los archivos dentro de la carpeta para corroborar su existencia.

ls

Luego, se debe ‘ver’ la clave publica generada usando la siguiente línea.

cat id_rsa.pub 

Finalmente, se copia la clave que se generó.

** por seguridad, la clave generada no debe ser compartida**

Espero que mi aporte les haya sido de utilidad :c de demoré en comprender :,v

Aqui esta mi llave de GitHub
![](

Cambien el comando por este y me funciono :
ssh-add ~/.ssh/id_rsa

La verdad que el curso hasta ahora me parece muy bien yo en lo particular no tengo experiencia y estoy aprendiendo de 0 lo único que e aprendido bastante bien es a observar con más detalle la escritura de las lineas de código y eso me a ayudado por alguna razón mi archivo al abrir la key con cat me tiraba un código muy amplio y en github me marcaba el error que mi key no tenía el formato. . Pub yo regrese en la terminal a home y di ls y note que tenia un archivo public.pub le di cat y me abrió una key la pegue y todo solucionado espero a alguien le sirva esto saludos

Para los que tienen el problema con el comando
ssh-keygen -t rsa -b 4096 -C email de github

NOTA: ciertamente va una C que no se alcanzo a ver en el video pero además esa C ES EN MAYUSCULA de lo contrario no la va a tomar.
esto me estaba pasando me daba error pero era porque la estaba dejando en minúscula.

Todo iba tan bien hasta que en ssh-copy-id y el correo no me lo reconoció me marca error y luego en cd ~/.ssh tampoco la carpeta esta disponible.

el curso va muy rapido, no se aclaran muchos temas, muchas dudas en gran numero de personas, el problema es que es un curso fundamental para continuar el proceso de la escuela y con tantas dudas sin resolver…

Los códigos usados fueron

ssh-keygen -t rsa -b 4096 -C”You Email"

Se presiona enter. Luego pide una contraseña, la agregamos y la confirmamos.

eval "$(ssh-agent -s)"

ssh-copy-id "You Email" 

cd ~/.ssh

cat id_rsa.pub 

ssh-keygen -t rsa -b 4096 -c “!email de github”

La - C va en mayuscula se van a ahorrar dolores de cabeza y estar buscando tutoriales

deberian o eliminar este curso o actualizarlo, son cosas que ya no se usan y definitivamente no necesitas

Esta clase me costo un ojo, mucho cuidado cuando esten ingresando los comandos.
Si se llegan a atorar en un paso, lean los comentarios de los demas estudiantes, es probable que a alguien le haya pasado lo mismo.
Saludos amixes

para los que necesiten una breve guía después del comando $ ssh-keygen

Una manera de poder tener el ssh si a ustedes tampoco les funcionó el método que nos enseñaron en este video puedes hacerlo de esta manera

<cp -r ~/.ssh /mnt/c/Users/"NombredetuWINUSER"/Desktop/ssh">

Esto lo que hace es copiar todos los archivos que están en la carpeta .ssh que se genera al ejecutamos el comando

< ssh-keygen -t rsa -b 4096 -C "email de github">

y los copia en una carpeta que se crea automáticamente llamada ssh.

Esto fue una manera de como yo lo hice, espero que a ustedes también les funcione.
Adjunto una imagen de como apareceria.

Para quienes ven el curso en marzo de 2023, pueden crear su key siguiendo las siguientes indicaciones: https://docs.github.com/es/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent

O pueden también checkear el video https://www.youtube.com/watch?v=Y7dwAWOhxJk

En esta clase y clases anteriores surgen muchos problemas, es urgente que actualizen este curso.
Por ejemplo, eh estado teniendo problemas al hacer lo del minuto 6 copiando el id.

MI CARA CUANDO EL PROFE DIJO QUE COMPARTA LA LLAVE PUBLICA EN COMENTARIOS, JAJAJAJA BUENA BROMA.

Jajaja cmamo con eso de compartir tu llave XD

Estas últimas clases han sido más de resistencia y persistencia sobre como solucionar errores de algo que no entiendo bien.

Gracias a todos los comentarios, se logró.

BUENAS NOCHES, he visto un inconveniente que muchos han tenido a la hora de hacer el “(ssh-copy-id [email protected])”

ssh-copy-id [email protected]

y leyendo en la pagina oficial de github, encontre que el protocolo de encriptacion rsa ya no esta siendo admitido desde el 15 demarzo del 2022 (la verdad soy nuevo y no entendi muy bien por que)
pero recomiendan acualizar a ed25519, probe usando este protocolo y puedo seguir los pasos del video sin ningun problema.

les dejo el link de donde saque esta informacion, asi pueden leerlo todos.

https://docs.github.com/es/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent

espero que les sea de ayuda mi humilde aporte.

Si te sale este mensaje se puede seguir adelante con los pasos. no genera inconveniente alguno.
connect to host gmail .com port 22 network is unreachable

pasé varias horas buscando solución hasta que decidí continuar con los pasos y todo funciona bien.

Aqui te dejo mi llave ssh-rsa AAAAB3NzaC1yc2EAAAADANOCREASQUEQABAAACAQC2G2jm/YAOdgxKDwESCIERTOyqMeGaWdYOZTSXb/mL4WvqUgx6cR2wLMYZiQUP6Mj/RbzbOV+wk5GQLHo5s249qjUzUqNdk0GvkgSEGURIDADANTETODOOw2hmrJVOJui4+h37hnE0SEAGgUbq3IuRqDeYabGTn3zjVsfNm3h4XTEwLXUQjS678WQWXl6tFRzlMx7ctpjRUBC8Bmg0hNXUalPeRJQ== [email protected]

Conectar nuestra terminal con Github

Para esto es necesario generar una clave SSH.

¿Qué significa? Secure SHell - cascarón seguro.

¿Qué es? Es la llave/clave/token con la que GIT te permite subir información a Github.
Ejemplo gráfico: Tú, como persona (GIT) quieres guardar dinero en el banco (Github). Para acceder a tu caja fuerte, tienes que pasar por un guardia de seguridad el cual te va a pedir una clave (SSH). Esta clave comprueba tu identidad y te permite acceso.

Generar clave SSH con el siguiente comando:
ssh-keygen -t rsa -b 4096 -C “emailDeGithub”
Este comando genera una clave pública y una privada en una carpeta oculta llamada .ssh, almacenada por defecto en home/tuUsuario. La clave pública vendría a ser el candado, y la clave privada la llave. Esta clave pública es la que se le da a Github, y la privada es la que la desbloquea.

Puedes ver las mismas utilizando cat clavePublicaOPrivada.

Comando explicado:
ssh-keygen (Generador de clave SSH) Sería “generar una clave ssh pública y privada”
-t (tipo) Especifica el algoritmo de clave, por ejemplo: rsa (Secure Data Transmission) el cual establece un cifrado.
-b Especifica el número de bits de tu clave (cuanto más grande, más seguro). 4096 es la cantidad de bits recomendada.
-C Habilita la compresión de información, supongo que para el envío de datos.

Las opciones (-t , -b , -c) modifican las opciones por defecto. Lo que viene por defecto es: compresión deshabilitada, 2048 bits y otro tipo de algoritmo).

Confirmar que esté corriendo OK el SSH agent
Primero, ¿Qué es el SSH agent? Básicamente es un programa auxiliar que recuerda las contraseñas del usuario y las usa para iniciar sesión en servidores sin que este tenga que ingresarlas. Realiza una especie de login automático.

Ahora, para comprobar que esté funcionando OK, escribir el siguiente comando: eval “$(ssh-agent) -s”
eval significa evaluar
-s Invoca un subsistema en el servidor remoto. Esto da más seguridad a la hora de transportar la contraseña.

	Repito: este comando solo confirma que el ssh agent esté corriendo.

Añadir las claves SSH al SSH agent con: ssh-copy-id “email”

Copiar la clave SSH pública:
Nos movemos a la carpeta .ssh con ~/.ssh
Vemos la clave pública con cat clavePublica
Copiamos todo su contenido

Subir la clave SSH pública a Github
Ir a: https://github.com/
Profile > Settings
SSH and GPG keys
New SSH key
Añadir título y llave

SSH: es una clave de acceso que nos permite conectarnos a github.

Clear llave en ubuntu
ssh-keygen: -t rsa -b 4096 -C [email protected]
-t: nos permite escoger el algoritmo de incriptacion
rsa: protocolo de incriptacion
-b: tan grande va a ser nuestra llave
4096:cantidad de bits
y por ultimo nuestro correo con el cual nos registramos en github

eval “$(ssh-agent -s)”: nos permite evaluar si hay un agente corriendo.
ssh-copy-id correoalquevinculamos nuestra cuenta.
Nos permite movernos al directorio donde se encuentra nuestra llave
cd .ssh
**para ver nuestra llave publica **
cat id_rsa.pub

ssh-keygen -t rsa -b 4096 -C "email de git hub"

ojo, si pones la C en minúscula no funciona, debe ir en mayúscula

Jamás imagine todo lo que existe detrás del desarrollo web. Me disculparan ustedes pero considero que esto es fascinante D:

Ya que por el filtro de borrosidad no se nota, antes del correro va un “-C” importantísimo que esta sea en mayúcula, así:

ssh-keygen -t rsa -b 4096 -C "[email protected]"

¿esa llave se hace cada vez que creo un proyecto? ¿o solo se hace una vez?

Vinculando nuestra llave SSH en GitHub

En la terminal
-> clear
-> ssh-keygen -t rsa -b 4096 -C correo GitHub
– enter
– contraseña de ubuntu

-> eval “$(ssh-agent -s)” : ver agente corriendo
-> clear

-> ssh-copy-id correo GitHub

-> cd ~/.ssh
-> ls
-> cat id_rsa.pub

. Copiar llave
. Vamos a GitHub en la web
. Entrar en avatar o foto de cuenta
. Settings
. SSH and GPG keys
. New SSH key
. Pegar key / llave
. Title: Llave curso Prework
. Add SSH key
. No me pido contraseña :v

Git es una herramienta indispensable para todo desarrollador. Al inicio es complicado, pero una app que me sirvió mucho para comenzar fue "Git commands". Está gratis en Google Play y te da una explicación de todo lo que hay en Git, súper recomendado para todos

No costaba nada crear un correo solamente para pruebas…

cuando pones el codigo ssh-copy-id “correo@gmail” y te sale el error ERROR: ssh: connect to host gmail. com port 22: Network is unreachable saltate ese paso y coloca el codigo siguiente cd ~/.ssh de todos modos te va a dar la llave que necesitas

aqui es muy importante este detalle, la "C" es mayuscula!

Mi dislexia esta haciendo que aprenda a fuerza cada curso.

asi quedo…gracias chicos por sus valiosos aportes

Para mi fue confuso en el minuto 4:56 que empieza a explicar lo de ssh-copy-id
Y luego continua haciendo lo de cd ~/.ssh para copiar la llave

Si alguien mas tiene esta confusion, yo creo que ambas son opciones de hacer lo mismo. Es decir, con ssh-copy-id se copia automaticamente y con la segunda opcion es como buscar la llave para copiarla manualmente.

A mi de ninguna forma al copiar el ID me funcionaba por lo que me funciono fue esto:

SSH-AGENT BASH luego ejecutas SSH-ADD y te pedira la clave sudo lo cual despues el mismo terminal te dira: identity added lo cual ya sabes que tu identidad fue agregada.

<h3>Git: es una base de datos muy precisa con todos los cambios y crecimiento que ha tenido nuestro proyecto. Los commits son la única forma de tener un registro de los cambios. Pero las ramas amplifican mucho más el potencial de Git.</h3>
  • Commit: Todos los commits se aplican sobre una rama. Por defecto, siempre empezamos en la rama master (pero puedes cambiarle el nombre si no te gusta) y creamos nuevas ramas, a partir de esta, para crear flujos de trabajo independientes.
    .

  • Branch: Crear una nueva rama se trata de copiar un commit (de cualquier rama), pasarlo a otro lado (a otra rama) y continuar el trabajo de una parte específica de nuestro proyecto sin afectar el flujo de trabajo principal (que continúa en la rama master o la rama principal).
    .

  • Los equipos de desarrollo tienen un estándar: Todo lo que esté en la rama master va a producción, las nuevas features, características y experimentos van en una rama “development” (para unirse a master cuando estén definitivamente listas) y los issues o errores se solucionan en una rama “hotfix” para unirse a master tan pronto como sea posible.
    .

  • Merge: Crear una nueva rama lo conocemos como Checkout. Unir dos ramas lo conocemos como Merge, pero hay que tener cosas en cuenta:
    .
    Podemos crear todas las ramas y commits que queramos. De hecho, podemos aprovechar el registro de cambios de Git para crear ramas, traer versiones viejas del código, arreglarlas y combinarlas de nuevo para mejorar el proyecto.

IMPORTANTE Solo ten en cuenta que combinar estas ramas (sí, hacer “merge”) puede generar conflictos. Algunos archivos pueden ser diferentes en ambas ramas. Git es muy inteligente y puede intentar unir estos cambios automáticamente, pero no siempre funciona. En algunos casos, somos nosotros los que debemos resolver estos conflictos “a mano”.

Hay un punto, no es un error es simplemente un detalle omitido y me estaba generando un error cuando intentaba aplicar el comando ssh-copy-id.
En cuando se esta generando la instruccion ssh-keygen -t rsa -b 4096 -C “email de github” hay que darle enter simplemente y no un nombre como tal en linea marcada en la flecha de la imagen

Saludos

hola, después de sufrir con la evaluación del agente, por fin conseguí mi llave. no me funcionaba el comando ,
recomiendo usar ssh-add ~/.ssh/id tsa a cambio de “ssh-copy-id your@email”, me funciono de esta manera

Hola, les dejo mi síntesis de la clase por si alguien se perdió, espero les ayude, si en algún momento me equivoco háganmelo saber:


El objetivo de la clase es vincular nuestra clave SSH con nuestra cuenta de Github. Para esto necesitamos:

  • Una cuenta en Github.
  • Nuestra clave SSH, que contiene:
    • Llave pública: Para compartir con Github.
    • Llave privada: Para tener en nuestro equipo.


Este protocolo funciona así:

  • Le enviamos nuestra llave pública a Github, así cada vez que nos quiera enviar info la ‘cifra’ usando esta llave.
  • Recibimos la info ‘cifrada’ y la podemos ‘descifrar parcialmente’ puesto que la llave pública nos pertenece.
  • Para ‘descifrar completamente’ la info requerimos la llave privada, la cual solo se encuentra en nuestro equipo. Esto es que si alguien intercepta nuestra info o llave pública no podrá ver nada ya que solo nuestro equipo posee las dos llaves.


Entonces:

  1. Generamos la llave SSH (y nuestras llaves pública y privada) usando:

    ssh-keygen -t rsa -b 4096 -C 'email_de_Github'
    
  2. Administramos nuestra llave privada usando el agente SSH. (Gestiona la llave privada que debe estar en nuestro equipo)

    • Evaluamos que exista un agente-ssh corriendo.
      eval “$(ssh-agent -s)
  • NOTA: Varios compañeros ayudaron aportando el comando siguiente, el cual pertenece a este paso, no es un reemplazo al comando ‘ssh-copy-id’, igualmente es opcional.

    • Añadimos la llave privada al agente SSH. Nos sirve para no escribir la contraseña cada vez que se use la llave privada, podemos añadirla al agente-ssh y que este se encargue de implementar el inicio de sesión único.
      ssh-add ~/.ssh/id_rsa
      
  1. Copiamos llave pública. (Envía la llave publica a Github). Tenemos varias opciones:

    • Usar comando ‘ssh-copy-id’.
      Pero algunos tuvieron el error ‘time-out’. Al parecer ‘ssh-copy-id’ requiere el ‘Usuario@Host’ de donde queremos enviar nuestra llave (es decir Github) no nuestro ‘email’.
  • NOTA: La clase tiene un corte, mostrándonos el siguiente metodo, el cual si sustituye a ‘ssh-copy-id’.

    • Abrir nuestra llave y copiar su contenido

      • Accedemos a la ubicación de nuestra llave.

        cd ~/.ssh
        ls
        
      • Abrimos nuestra llave pública y copiamos su contenido.

        cat id_rsa.pub
        
      • Añadir llave SSH a Github

        • En Github

        • Icono de cuenta -> Settings -> SSH and GPG Keys -> New SSH Key

        • Dar nombre a llave(Nombre del PC)

        • Pegar llave publica

Hola. Si alguien tiene problemas al vincular SSH con github porque salga “Connection time out”, aquí les dejo un enlace para solucionarlo:
https://dev.to/johncardenasp/como-crear-y-vincular-una-llave-ssh-con-github-42i4#:~:text=Vincular llave SSH con GitHub&text=Le das en la opción,sin ningún tipo de problema.

9 min de video que fue como media hora para mi

Como generar tu llave de github para poder trabajar desde WSL: ssh-keygen -t rsa -b 4096 -C “correo_entre_comillas”

Hola, para todos los que no le funciona tal cual el profesor lo utiliza, y les aparece el error “Too many arguments” tiene que poner una “-C” antes de poner su correo.
Ejemplo: ssh-keygen -t rsa -b 4096 -C “tu correo” y le das Enter.


alguien puede ayudarme.

Si quieren ponerle un nombre diferente a su par de llaves pueden usar la bandera -f seguida del nombre al final del comando ssh-keygen, y para los que estan viendo este curso en el futuro Github recomienda el tipo de seguridad ed25519, por ejemplo:

ssh-keygen -t ed25519 -C "[email protected]" -f github

Too Many Arguments.… si les sale este problema, es porque deben colocar -C en mayúsculas, antes del correo.

En el minuto dos el video tiene un error de edición, no sale el -C antes del correo y vi en los comentarios que genera confusión por aparece un “too many arguments”

Para copiar en la terminal hacen: ctrl + shift + c
Para pegar en la terminal hacen: ctrl + shift + v

Con Ctrl + L también limpias la terminal.

Dejo como pueden copiar la llave publica .