GNU/Linux >> Tutoriales Linux >  >> Linux

Inicio de sesión SSH sin contraseña en 3 pasos simples

SSH (SHELL seguro) es un protocolo de red seguro de código abierto que permite a los usuarios iniciar sesión de forma segura en sistemas Linux remotos y otros dispositivos de red. Además, el protocolo se utiliza para la transferencia de archivos entre sistemas Linux utilizando el protocolo de copia segura (SCP) .

Por lo general, SSH solicita a los usuarios las contraseñas antes de iniciar sesión. Sin embargo, puede configurar el inicio de sesión sin contraseña SSH en otro sistema Linux remoto desde su sistema Linux. Esto mejora la confianza y es útil en trabajos cron que requieren copias de seguridad de archivos de forma remota mediante el protocolo SCP.

En esta guía, aprenderá cómo configurar el inicio de sesión SSH sin contraseña usando claves ssh para aumentar la confianza entre dos servidores.

Configurar entorno


ssh client      : 66.152.163.19 (Ubuntu 18.04)

ssh remote Host : 173.82.2.236  (CentOS 7)

Generar claves SSH en el sistema cliente ( 66.152.163.19 )

El primer paso para configurar un inicio de sesión sin contraseña es generar claves de autenticación ssh en el sistema cliente. Las claves SSH son claves digitales que crean confianza entre los sistemas Linux.

Para generar las claves ssh, ejecute el comando.

$ ssh-keygen

Se le solicitará el archivo en el que desea guardar la clave. Presione 'Enter' para guardar en el directorio de ubicación predeterminado ( /root/.ssh)

Enter file in which to save the key (/home/user/.ssh/id_rsa):

Pulse Intro.

A continuación, se le pedirá una frase de contraseña. Estamos configurando un inicio de sesión sin contraseña, presione 'Enter' dos veces para omitir.


Enter passphrase (empty for no passphrase):
Enter same passphrase again:

Presiona 'Enter' en ambas ocasiones.

El resultado completo se muestra a continuación.

Salida de muestra

El ssh-keygen El comando genera claves ssh públicas y privadas y las almacena en /root/.ssh directorio.

Para verificar ejecutar:

ls /root/.ssh

Salida de muestra

La clave pública se denota por id_rsa.pub .

La clave privada se denota por id_rsa .

Copiar la clave pública ssh al sistema remoto (173.82.2.236)

El siguiente paso es copiar la clave pública al servidor Linux remoto. Esto se logrará usando el ssh-copy-id comando como se muestra a continuación.

ssh-copy-id remote_username@server_ip_address

En nuestro ejemplo, el comando será:

ssh-copy-id [email protected]

Se le preguntará si está seguro de que desea continuar conectándose. Escribe yes y presiona 'Entrar'

The authenticity of host '173.82.2.236 (173.82.2.236)' can't be established.
ECDSA key fingerprint is SHA256:U4aOk0p30sFjv1rzgh73uhGilwJ2xtG205QFqzB9sns.
Are you sure you want to continue connecting (yes/no)? yes

A continuación, se le solicitará la contraseña del sistema remoto. Escriba la contraseña y presione 'Enter'

[email protected]'s password:

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

El resultado completo se muestra a continuación.

La clave pública ssh se guardará en /root/.ssh/authorized_keys archivo en el sistema remoto.

Inicio de sesión en el sistema remoto

Después de haber copiado la clave ssh pública en el sistema remoto, ahora puede iniciar sesión sin que se le solicite una contraseña, como se muestra.

ssh server-ip-address

Para nuestro caso, esto será:

ssh 173.82.2.236

Y así es como configura una configuración de SSH sin contraseña desde un sistema cliente Linux a un servidor Linux remoto.

  • Elimine la clave pública del sistema cliente. Si cree que la clave privada está comprometida, elimine la clave pública del servidor remoto y vuelva a configurarla.
  • El comando SSH anterior funciona sin proporcionar una identificación de usuario porque estamos usando el usuario raíz en ambos servidores. Si configuró el inicio de sesión sin contraseña para otro usuario, indíquelo también en el comando SSH.

Linux
  1. Cómo configurar el inicio de sesión SSH sin contraseña

  2. 3 pasos para realizar el inicio de sesión SSH sin contraseña usando ssh-keygen y ssh-copy-id

  3. Cómo configurar las claves SSH para el inicio de sesión ssh "sin contraseña" en Linux

  4. Cómo usar el comando ssh-keygen para configurar ssh sin contraseña

  5. Cómo configurar claves SSH para inicio de sesión SSH "sin contraseña" en CentOS/RHEL

Cómo configurar el inicio de sesión SSH sin contraseña en Linux con claves

Cómo configurar el inicio de sesión sin contraseña SSH en CentOS 7 / RHEL 7

Cómo configurar el inicio de sesión sin contraseña SSH en CentOS 8 / RHEL 8

Cómo configurar el inicio de sesión sin contraseña SSH en AlmaLinux

Configure el inicio de sesión SSH sin contraseña para varios servidores remotos mediante script

Genere claves SSH para iniciar sesión sin contraseña en Ubuntu