SSH ( Secure SHELL ) es un protocolo de red de código abierto y más confiable que se utiliza para iniciar sesión en servidores remotos para la ejecución de comandos y programas. También se utiliza para transferir archivos de una computadora a otra a través de la red mediante un protocolo de copia segura ( SCP ).
En este artículo, le mostraremos cómo configurar el inicio de sesión sin contraseña en RHEL / CentOS y Fedora usando claves ssh para conectarse a servidores Linux remotos sin ingresar una contraseña. El uso de inicio de sesión sin contraseña con claves SSH aumentará la confianza entre dos servidores Linux para facilitar la sincronización o transferencia de archivos.
Mi entorno de configuración
SSH Client : 192.168.0.12 ( Fedora 21 ) SSH Remote Host : 192.168.0.11 ( CentOS 7 )
Si está tratando con varios servidores remotos Linux , el inicio de sesión sin contraseña SSH es una de las mejores formas de automatizar tareas como copias de seguridad automáticas con scripts, archivos de sincronización mediante SCP y ejecución remota de comandos.
En este ejemplo, configuraremos el inicio de sesión automático sin contraseña SSH desde el servidor 192.168.0.12 como usuario tecmint a 192.168.0.11 con el usuario sheena .
Paso 1: Cree claves de autenticación SSH-Keygen en – (192.168.0.12)
Primero inicie sesión en el servidor 192.168.0.12 con el usuario tecmint y genere un par de claves públicas usando el siguiente comando.
[tecmint@tecmint.com ]$ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/tecmint/.ssh/id_rsa): [Press enter key] Created directory '/home/tecmint/.ssh'. Enter passphrase (empty for no passphrase): [Press enter key] Enter same passphrase again: [Press enter key] Your identification has been saved in /home/tecmint/.ssh/id_rsa. Your public key has been saved in /home/tecmint/.ssh/id_rsa.pub. The key fingerprint is: 5f:ad:40:00:8a:d1:9b:99:b3:b0:f8:08:99:c3:ed:d3 [email protected] The key's randomart image is: +--[ RSA 2048]----+ | ..oooE.++| | o. o.o | | .. . | | o . . o| | S . . + | | . . . o| | . o o ..| | + + | | +. | +-----------------+
Paso 2: Cree el directorio .ssh en – 192.168.0.11
Use SSH desde el servidor 192.168.0.12 para conectar el servidor 192.168.0.11 usando sheena como usuario y cree el directorio .ssh debajo de él, usando el siguiente comando.
[tecmint@tecmint ]$ ssh sheena@192.168.0.11 mkdir -p .ssh The authenticity of host '192.168.0.11 (192.168.0.11)' can't be established. RSA key fingerprint is 45:0e:28:11:d6:81:62:16:04:3f:db:38:02:la:22:4e. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.0.11' (ECDSA) to the list of known hosts. sheena@192.168.0.11's password: [Enter Your Password Here]
Paso 3: Cargue las claves públicas generadas en – 192.168.0.11
El uso de SSH del servidor 192.168.0.12 y subir una nueva clave generada pública ( id_rsa.pub ) en el servidor 192.168.0.11 bajo Sheena ‘s .ssh directorio que un nombre de archivo authorized_keys .
[tecmint@tecmint ]$ cat .ssh/id_rsa.pub | ssh sheena@192.168.0.11 'cat >> .ssh/authorized_keys' sheena@192.168.1.2's password: [Enter Your Password Here]
Paso 4: Establecer permisos en 192.168.0.11
Debido a las diferentes versiones de SSH en los servidores, necesitamos establecer permisos en el directorio .ssh y el archivo autorizado_keys.
[tecmint@tecmint ]$ ssh sheena@192.168.0.11 "chmod 700 .ssh chmod 640 .ssh/authorized_keys" sheena@192.168.0.11's password: [Enter Your Password Here]
Paso 5: Inicie sesión desde el servidor 192.168.0.12 al servidor 192.168.0.11 sin contraseña
A partir de ahora, puede iniciar sesión en 192.168.0.11 como usuario sheena desde el servidor 192.168.0.12 como usuario tecmint sin contraseña.
[tecmint@tecmint ]$ ssh sheena@192.168.0.11
Bash Shell , SSH