En este artículo, explicaremos cómo configurar SSH sin contraseñas en un sistema operativo Linux. Utilizaremos la aplicación de terminal de línea de comandos para este propósito. Para abrir el terminal de la línea de comando, use el atajo de teclado.
Hemos explicado el procedimiento mencionado en este artículo sobre el Ubuntu 20.04 sistema. Se puede seguir más o menos el mismo procedimiento en las versiones de Debian y Ubuntu anteriores.
Siga los pasos a continuación para configurar SSH sin contraseñas en su sistema Linux.
Genere un nuevo par de claves SSH en la máquina local
El primer paso será generar una nueva clave SSH en su sistema local. Para hacer esto, emita el siguiente comando en la terminal:
$ ssh -keygen -t rsa
Presione ENTER para aceptar todos los campos como predeterminados.
El comando anterior creará el keypair, yo.mi., la clave pública y la clave privada. La clave privada se mantiene en el sistema, mientras que la clave pública se comparte. Estas llaves se almacenan en el .carpeta ssh.
Puede ver el keyPair generado ingresando el siguiente comando:
$ ls -l .ssh
Copiar la clave pública a la máquina remota
En el siguiente paso, copie la clave pública al sistema remoto al que desea acceder desde su sistema local sin contraseñas. Usaremos el comando SSH-Copy-ID que está disponible de forma predeterminada en la mayoría de las distribuciones de Linux. Este comando copiará la clave pública ID_RSA.pub al .archivo ssh/autorized_keys en el sistema remoto.
La sintaxis para SSH-Copy-ID es la siguiente:
$ SSH-COPY-ID REMPIT_USER@remoto_ip
En nuestro ejemplo, el comando sería:
$ ssh-copy-id [email protected]
En el sistema remoto, puede verificar la transferencia de la clave pública viendo el archivo autorizado_keys.
$ gato .ssh/autorized_keys
Establezca el permiso en el archivo autorizado_keys en el sistema remoto en 600. Use el siguiente comando para hacerlo:
$ chmod 600 .ssh/autorized_keys
Establezca el permiso en el .Directorio SSH en el sistema remoto a 700. Use el siguiente comando para hacerlo:
$ chmod 700 .ssh
Agregue la clave privada al agente de autenticación SSH en el servidor local
En nuestra máquina local, agregaremos la clave privada al agente de autenticación SSH. Esto nos permitirá iniciar sesión en el servidor remoto sin tener que ingresar una contraseña cada vez.
Aquí está el comando para hacerlo:
$ ssh-add
Iniciar sesión en un servidor remoto usando las teclas SSH
Después de realizar los pasos anteriores, intente iniciar sesión en su Sevedor remoto. Esta vez, podrá iniciar sesión en su servidor remoto sin ingresar una contraseña.
Eso es todo lo que necesita para configurar el inicio de sesión de SSH sin contraseñas en un Ubuntu 20.04 sistema. Recuerde, puede compartir la clave pública con cualquiera, pero nunca compartir su clave privada. Cualquier persona con la clave privada podrá iniciar sesión en cualquier sistema que tenga la clave pública coincidente.