Creación de claves SSH
Victor Arana Flores
20 Jul 2022
Esta página describe cómo crear claves SSH.
Las claves SSH se pueden utilizar para establecer una conexión segura con el Centro de Datos y el Servidor de Bitbucket para:
- Cuando se realizan operaciones Git desde el equipo local
- Cuando otro sistema o proceso necesita acceder a los repositorios en Bitbucket (por ejemplo, su servidor de construcción)
La clave SSH debe ser añadida a Bitbucket, y tu administrador de Bitbucket debe haber habilitado el acceso SSH a los repositorios Git antes de que puedas hacer uso de la clave.
Bitbucket soporta los siguientes tipos de claves SSH:
- ED25519
- RSA2 (le recomendamos que utilice un tamaño de clave de al menos 2048 bits)
- ECDSA
- DSA (le recomendamos que utilice otros tipos de llaves)
Puede utilizar una clave SSH existente con Bitbucket si lo desea, en cuyo caso puede ir directamente a "Claves de usuario SSH para uso personal" o "Claves de acceso SSH para uso del sistema".
En esta página:
Creación de una clave SSH en Windows
1. Comprobar las claves SSH existentes
Todos estos pasos lo haremos utilizando la terminal de Git Bash, la cual se instala cuando instalamos GIT en nuestra computadora. De no tenerlo instalado, te recomiendo primero dirigirte a la página de git para su instalación.
Abra la terminal de Git Bash y ejecute:
ls -al ~/.ssh
- Si ves "No such file or directory", entonces no hay claves existentes: ve al paso 3.
- Caso contrario deberías ver algo así:
total 36
drwxr-xr-x 1 Usuario 197121 0 May 11 12:58 ./
drwxr-xr-x 1 Usuario 197121 0 May 11 12:59 ../
-rw-r--r-- 1 Usuario 197121 3389 Aug 17 2022 id_rsa
-rw-r--r-- 1 Usuario 197121 747 Aug 17 2022 id_rsa.pub
-rw-r--r-- 1 Usuario 197121 2563 May 10 12:13 known_hosts
-rw-r--r-- 1 Usuario 197121 1821 May 10 12:13 known_hosts.old
2. Copiar las claves SSH
Abra la terminal de git bash y ejecuta el siguiente comando:
clip < ~/.ssh/id_rsa.pub
3. Generar una nueva clave SSH
Si no tiene una clave SSH existente que desee utilizar, genere una de la siguiente manera:
- Log in to your local computer as an administrator.
- Abra la consola de git bash y ejecute el siguiente comando
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
Asociar la clave con tu dirección de correo electrónico te ayuda a identificar la clave más adelante.
Ten en cuenta que el comando ssh-keygen sólo está disponible si ya has instalado Git (con Git Bash).
Verás una respuesta similar a esta:
C:\Users\fperez>ssh-keygen -t ed25519 -C "your_email@example.com"
Generating public/private ed25519 key pair.
Enter file in which to save the key (/c/Users/fperez/.ssh/id_ed25519):
3. Sólo tiene que pulsar <Enter> para aceptar la ubicación y el nombre del archivo por defecto. Si el directorio .ssh no existe, el sistema crea uno por ti.
4. Introduzca, y vuelva a introducir, una frase de contraseña cuando se le pida. Toda la interacción se parecerá a esto:
C:\Users\fperez>ssh-keygen -t ed25519 -C "your_email@example.com"
Generating public/private ed25519 key pair.
Enter file in which to save the key (/c/Users/fperez/.ssh/id_ed25519):
Created directory '/c/Users/fperez/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in c/Users/fperez/.ssh/id_ed25519.
Your public key has been saved in c/Users/fperez/.ssh/id_ed25519.pub.
The key fingerprint is:
SHA256:wvaHYeLtY6+DlvV5sFZgDi3abcdefghijklmnopqrstuvw your_email@example.com
5. Ya has terminado y ahora puedes ir a las claves de usuario SSH para uso personal o a las claves de acceso SSH para uso del sistema.
Creación de una clave SSH en Linux y macOS
1. Comprobar las claves SSH existentes
Abra un terminal y ejecute lo siguiente:
ls -al ~/.ssh
- Si ve “No such file or directory, then there are no existing keys”: vaya al paso 3.
- Caso contrario deberías ver algo así:
total 36
drwxr-xr-x 1 Usuario 197121 0 May 11 12:58 ./
drwxr-xr-x 1 Usuario 197121 0 May 11 12:59 ../
-rw-r--r-- 1 Usuario 197121 3389 Aug 17 2022 id_rsa
-rw-r--r-- 1 Usuario 197121 747 Aug 17 2022 id_rsa.pub
-rw-r--r-- 1 Usuario 197121 2563 May 10 12:13 known_hosts
-rw-r--r-- 1 Usuario 197121 1821 May 10 12:13 known_hosts.old
2. Copiar las claves SSH
Haga esto en un terminal en su ordenador local, ejecutando:
pbcopy < ~/.ssh/id_rsa.pub
3. Generar una nueva clave
Si no tiene una clave SSH existente que desee utilizar, genere una de la siguiente manera:
- Abra un terminal en su ordenador local e introduzca lo siguiente:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
Asociar la clave con su dirección de correo electrónico le ayudará a identificar la clave más adelante.
Verás una respuesta similar a esta:
fperez@homemac ~ % ssh-keygen -t ed25519 -C fperez@email.com
Generating public/private ed25519 key pair.
Enter file in which to save the key (/Users/fperez/.ssh/id_ed25519):
2. Sólo tiene que pulsar <Enter> para aceptar la ubicación y el nombre del archivo por defecto. Si el directorio .ssh no existe, el sistema crea uno por ti.
3. Introduzca, y vuelva a introducir, una frase de contraseña cuando se le pida.
Toda la interacción se parecerá a esto:
fperez@homemac ~ % ssh-keygen -t ed25519 -C fperez@email.com
Generating public/private ed25519 key pair.
Enter file in which to save the key (/Users/fperez/.ssh/id_ed25519):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/fperez/.ssh/id_ed25519.
Your public key has been saved in /Users/fperez/.ssh/id_ed25519.pub.
The key fingerprint is:
SHA256:gTVWKbn41z6JgBNu3wYjLC4abcdefghijklmnopqrstuvwxy fperez@email.com
The key's randomart image is:
+--[ED25519 256]--+
|==+. +o.. |
|.oE. +o.. |
| . ...o |
| .o... |
| oo+S . |
| + ..B = . . |
|.+.+.oo+ * o . |
|o++.o+ . + + |
|B+ o. . . |
+----[SHA256]-----+
fperez@homemac ~ %
5. Ya has terminado y ahora puedes ir a las claves de usuario SSH para uso personal o a las claves de acceso SSH para uso del sistema.