Cómo usar sshpass para iniciar sesión en SSH no interactiva

Cómo usar sshpass para iniciar sesión en SSH no interactiva

SSH (Secure Shell) es una herramienta ampliamente utilizada para conectarse y administrar servidores de forma remota. Sin embargo, se requiere una contraseña para iniciar sesión en el servidor. En situaciones en las que se necesita automatizar el proceso de inicio de sesión, por ejemplo, en secuencias de comandos programadas, la autenticación interactiva es un problema.

Es ahí donde entra en juego sshpass, que automatiza la introducción de contraseñas de inicio de sesión de manera segura para conectarse a un servidor sin necesidad de entrada interactiva por parte del usuario.

A continuación se presentan instrucciones sobre cómo utilizar sshpass para iniciación de sesión de SSH no interactiva.

📋 Aquí podrás encontrar✍
  1. Requisitos
  2. Pasos para usar sshpass para iniciar sesión no interactiva de SSH
    1. Paso 1: Instala sshpass
    2. Paso 2: Verifique la versión de sshpass
    3. Paso 3: Crea un archivo de script
    4. Paso 4: Ejecuta el script
  3. Ejemplo: Cómo usar sshpass para ejecutar comandos en un servidor remoto
    1. Paso 1: Crea el archivo de script
    2. Paso 2: Permite la ejecución del archivo de script
    3. Paso 3: Ejecuta el archivo de script
  4. Conclusión
  5. Preguntas frecuentes
    1. ¿Es sshpass seguro?
    2. ¿Puedo utilizar sshpass en lugar de configurar una clave SSH?
    3. ¿Puedo utilizar sshpass en Windows?
    4. ¿Dónde puedo encontrar más información sobre sshpass?

Requisitos

Antes de comenzar con los pasos para usar sshpass para iniciar sesión de SSH no interactiva, asegúrese de tener lo siguiente:

  • Un servidor remoto
  • sshpass instalado en su sistema
  • Nombre de usuario y contraseña para el servidor remoto

Pasos para usar sshpass para iniciar sesión no interactiva de SSH

Paso 1: Instala sshpass

El primer paso es instalar sshpass en su sistema. Si utiliza una distribución de Linux, puede instalar sshpass desde el administrador de paquetes. Por ejemplo, en Ubuntu puede usar el siguiente comando para instalar sshpass:

sudo apt-get install sshpass

Paso 2: Verifique la versión de sshpass

Una vez que haya instalado sshpass, puede verificar la versión con el siguiente comando:

sshpass -V

Esto mostrará la versión de sshpass instalada en su sistema.

Paso 3: Crea un archivo de script

Cree un archivo de script para iniciar sesión en el servidor remoto. Este archivo debe contener los siguientes comandos:

sshpass -p 'contraseña' ssh usuario@servidorremoto

Nota: Asegúrese de reemplazar "contraseña", "usuario" y "servidorremoto" con sus propias credenciales y detalles del servidor.

Paso 4: Ejecuta el script

Una vez que haya creado el archivo de script, ejecútelo usando el siguiente comando:

bash nombredetuarchivo.sh

Este comando ejecutará el archivo de script y se conectará automáticamente al servidor remoto sin necesidad de una entrada interactiva de contraseña.

Ejemplo: Cómo usar sshpass para ejecutar comandos en un servidor remoto

A continuación, se presenta un ejemplo de cómo usar sshpass para ejecutar comandos en un servidor remoto sin la necesidad de una entrada de contraseña interactiva.

Digamos que desea ejecutar el comando "mkdir codigos" en su directorio de inicio en el servidor remoto.

Sigue los siguientes pasos:

Paso 1: Crea el archivo de script

Cree un archivo de script llamado "crear_directorio.sh", que contenga los siguientes comandos:

 #!/bin/bash

sshpass -p 'contraseña' ssh usuario@servidorremoto "mkdir codigos"

echo "El directorio ha sido creado exitosamente."

Nota: Asegúrese de reemplazar "contraseña", "usuario" y "servidorremoto" con sus propias credenciales y detalles del servidor.

Paso 2: Permite la ejecución del archivo de script

Antes de ejecutar el archivo de script, asegúrese de que tenga permisos de ejecución. Para hacer esto, ejecute el siguiente comando:

chmod +x crear_directorio.sh

Paso 3: Ejecuta el archivo de script

Para ejecutar el script y crear el directorio, ejecute lo siguiente comando:

bash crear_directorio.sh

Este comando ejecutará el archivo de script y conectará automáticamente al servidor remoto sin necesidad de una entrada interactiva de contraseña. El directorio "codigos" debería ser creado en su directorio de inicio en el servidor remoto.

Conclusión

Usar sshpass para iniciar sesión en SSH no interactiva puede ahorrar tiempo y esfuerzo para la automatización de procesos de inicio de sesión. Si necesita conectarse a un servidor remoto de forma programada, sshpass es una herramienta útil que puede asegurar, de una manera segura, la autenticación no interactiva.

Preguntas frecuentes

¿Es sshpass seguro?

Sí, sshpass es seguro siempre y cuando se utilice bajo buenas prácticas de seguridad y no se comparta la contraseña en un lugar no seguro.

¿Puedo utilizar sshpass en lugar de configurar una clave SSH?

Sí, sshpass puede utilizarse en lugar de configurar una clave SSH, pero no se recomienda para actividades que involucren seguridad crítica.

¿Puedo utilizar sshpass en Windows?

No, sshpass no está disponible en Windows. Se recomienda usar herramientas como PuTTY que están disponibles en Windows.

¿Dónde puedo encontrar más información sobre sshpass?

Puede encontrar más información sobre sshpass en su página de manual y en la documentación de Linux.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir

Este sitio web utiliza Cookies propias y de terceros de análisis para recopilar información con la finalidad de mejorar nuestros servicios, así como para el análisis de su navegación. Si continua navegando, se acepta el uso y si no lo desea puede configurar el navegador. CÓMO CONFIGURAR