Creación de llaves SSH

Creación de claves pública y privada para trabajar con GitHub o conectarse remotamente a otro equipo.

Ubicación de las llaves

Lista todas las llaves. Si existen se mostrará un resultado similar, al final es lo que se obtendrá:

ls -l ~/.ssh
total 12
-rw------- 1 user user 3243 jun  1 15:05 id_rsa
-rw------- 1 user user  742 jun  1 15:05 id_rsa.pub
-rw-r--r-- 1 user user 1326 Jun  1 15:05 known_hosts

Creación de una nueva llave

Para este ejemplo se creará la llave id_rsa.

  1. Crea una nueva llave SSH.

    ssh-keygen -t rsa -b 4096 -C "user@example.com"
    
    Enter file in which to save the key (/home/user/.ssh/id_rsa):
    Enter passphrase (empty for no passphrase): 
    Enter same passphrase again: 
    Your identification has been saved in /home/user/.ssh/id_rsa.
    Your public key has been saved in /home/user/.ssh/id_rsa.pub.
    The key fingerprint is:
    SHA256:xCYt9XPANH0jk76Td96cU1m1D2htEPamHfu8lWce5Kk user@example.com
    The key's randomart image is:
    +---[RSA 4096]----+
    |        .o+.oo   |
    |       + ..+*.o .|
    |      o = o..B+.o|
    |       =   o++++.|
    |        S  ..+oo+|
    |            + ++*|
    |             o OX|
    |              .=O|
    |             E .o|
    +----[SHA256]-----+
    
  2. Inicia el agente ssh.

    eval "$(ssh-agent -s)"
    
    Agent pid 19690
    
  3. Adiciona la clave privada al agente ssh.

    ssh-add ~/.ssh/id_rsa
    
    Identity added: /home/user/.ssh/id_rsa (/home/user/.ssh/id_rsa)
    

Modo de uso

Copia la clave pública id_rsa.pub.

cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAAF...MLZ94Nq2F4ToHR3U6Q== user@example.com

Pega la clave pública donde se lo requiera.

  • Si es para GitHub, en la sección Settings > SSH and GPG keys del panel de configuraciones.

  • Si es para conectarse remotamente, en un archivo dentro de la carpeta ~/.ssh.

    cd /home/server/.ssh
    
    nano authorized_keys
    

Permisos para la carpeta que contiene las llaves

sudo chmod 600 -R ~/.ssh/*
sudo chmod 644 ~/.ssh/known_hosts
sudo chmod 755 ~/.ssh

Referencias

  bash key chmod 

Publicado: 1 de junio de 2020