Ejecutar un script local en un servidor remoto con SSHPASS

Pongamos que tengo un script en un servidor local que quiero que se ejecute en un servidor remoto en el que no existe este script:

# ll
total 4
-rwxr--r-- 1 hpddpers uxsup3 249 May 4 10:31 luns.sh
#

Para hacerlo, ejecutaré el siguiente comando:

# sshpass -p MiContraseñaSecreta -q [email protected] "bash -s" -- < luns.sh 
la01wai0;/dev/sda;107.4;GB
la01wai0;/dev/sdb;53.7;GB
#

Como podemos observar, con sshpass, envío la contraseña con la que acceder en el servidor remoto y con < luns.sh especifico mi script local a ejecutar en el destino.

Acceso SFTP enviando la contraseña con SSHPASS

También podemos utilizar SSHPASS para acceder por SFTP con el usuario y la contraseña enviada por parámetros en la misma línea. Veamos un ejemplo:

[[email protected] ~]# sshpass -p test sftp -oBatchMode=no -b - [email protected] << !
> ls
> bye
> !
sftp> ls
sftp> bye
[[email protected] ~]# sshpass -p test sftp -oBatchMode=no -b - [email protected] << !
ls -la
bye
!

sftp> ls -la
drwx------    3 test     test         4096 Mar  6 08:05 .
drwxr-xr-x   33 root     root         4096 Mar  6 08:05 ..
-rw-r--r--    1 test     test           18 Feb 15  2017 .bash_logout
-rw-r--r--    1 test     test          176 Feb 15  2017 .bash_profile
-rw-r--r--    1 test     test          124 Feb 15  2017 .bashrc
-rw-r--r--    1 test     test          500 Nov 27  2014 .emacs
-rw-r--r--    1 test     test          124 Feb  5  2018 .mkshrc
drwxr-xr-x    4 test     test         4096 Nov 23  2017 .mozilla
sftp> bye
[[email protected] ~]#

El parámetro «-p test» indica la contraseña del usuario «[email protected]».

Y si queremos ejecutar un put por SFTP en una sola línea:

[[email protected] pced]# (echo ls; echo "put /interfases/tresoreria/CEPD/CEPD_08082019_050506.txt") | sshpass -p test sftp -oBatchMode=no -b - [email protected] >> status.log
+---------------------------------------------------------------------+
|                                                                     |
|  Use of this network is restricted to authorized users only. User   |
|  activity may be monitored and/or recorded. Anyone using this       |
|  network expressly consents to such monitoring and/or recording.    |
|                                                                     |
|  BE ADVISED: if possible criminal activity is detected, these       |
|  records, along with certain personal information, may be provided  |
|  to law enforcement officials.                                      |
|                                                                     |
+---------------------------------------------------------------------+

[[email protected] pced]# cat status.log
sftp> ls
CEPD_08082019_050506.txt
sftp> put /interfases/tresoreria/CEPD/CEPD_08082019_050506.txt
Uploading /interfases/tresoreria/CEPD/CEPD_08082019_050506.txt to /home/test/CEPD_08082019_050506.txt
[[email protected] pced]#

¿Te ha gustado? ¡Compártelo!

Share on facebook
Share on twitter
Share on linkedin
Share on whatsapp
Share on telegram
Share on email

Deja un comentario

Tal vez también te gustaría leer...

Instalación de Ceph Storage en Linux RedHat 7

En este artículo aprenderemos a instalar RedHat Ceph Storage en un sistema Linux RedHat 7.7, configurando un cluster de dos nodos. Tabla de contenidos1 ¿Qué es Ceph?2 Conceptos previos de Ceph3 Instalación de Ceph3.1 Requerimientos previos3.1.1 Creación de los repositorios de yum3.1.2 Instalación de los paquetes RPM de Ceph3.1.3 Arranque del servicio NTP3.2 Configuración Manual

Leer más »

Limitar los recursos de CPU y memoria en Linux RedHat

Debido a una serie de pruebas de rendimiento que querían hacer desde el equipo de aplicaciones, me han preguntado si era posible limitar los recursos de CPU y memoria a nivel global del servidor, un Linux RedHat 7. Podemos hacerlo con CGROUPS pero para este caso concreto he preferido limitar los recursos mediante parámetros del

Leer más »

GlusterFS – Filesystems con Alta Disponibilidad en Linux

Alguna vez os he hablado de ServiceGuard para montar entornos de alta disponibilidad robustos, que monten filesystems y levanten servicios, pero este es un software de pago que no quería utilizar para montar un único filesystem con alta disponibilidad. En su lugar, he elegido GlusterFS, que es opensource y con soporte de RedHat. Tabla de

Leer más »

Configurar un servidor Memcached en Linux RedHat 7

Memcached es uno de los servidores de cacheo más populares. Se utiliza para que aplicaciones externas cacheen su contenido en un servidor centralizado como, por ejemplo, páginas WEB estáticas. El objetivo es acelerar la velocidad de la aplicación accediendo al contenido que ya está en caché en vez de tener que reinterpretarlo cada vez que

Leer más »

Conexiones seguras con SSH en Linux

SSH es un protocolo de comunicaciones que proporciona seguridad criptográfica cuando nos conectamos a un servidor para iniciar una sesión o transfereir archivos por SFTP o SCP. Los comandos SSH, SFTP y SCP utilizan el mismo puerto de comunicaciones, que es el 22. Rebajas Logitech B100 – Ratón óptico, color negro 4,99 EUR COMPRAR EN

Leer más »

Guía de Linux

Tabla de contenidos1 Historia de Linux2 ¿Qué es una distribución Linux y cuál instalar?3 ¿Cómo iniciar una sesión en Linux?4 Cinco maneras de ejecutar comandos en Linux5 Funcionamiento del editor «vi»6 Comandos básicos de Linux relacionados con el sistema de archivos7 Comandos básicos relacionados con los procesos8 Comando básicos de Linux relacionados con los filtros

Leer más »