Parallel SSH (pssh) es una herramienta totalmente gratuita y compatible con todos los sistemas operativos basados en Unix y Linux, que nos va a permitir conectarnos de manera simultánea a varios servidores SSH para ejecutar comandos a la vez, sin necesidad de ir entrando en cada uno de ellos para realizar las mismas acciones.
Cuando una web o empresa tiene varios servidores, normalmente están configurados todos ellos con el mismo sistema operativo y las mismas versiones de los programas. Si por ejemplo queremos modificar algo en un grupo de ellos, o actualizar a las últimas versiones todos los programas, deberíamos entrar uno por uno y ejecutar los mismos comandos, por lo que tendremos una tarea repetitiva.
Gracias a herramientas como pssh, podremos conectarnos de manera remota a varios servidores SSH simultáneamente, y ejecutar una misma orden en todos ellos. Por lo que estaremos automatizando en gran medida todo el proceso de despliegue y actualización de dichos servidores.
Algunas características importantes de pssh es que nos permite introducir las contraseñas de acceso, por lo que no es necesario tener únicamente claves privadas en el sistema.
Instalación de pssh en Debian
Esta herramienta está disponible en todos los repositorios de las principales distribuciones, nosotros lo hemos probado en Debian 8 y únicamente tenemos que poner la siguiente orden para instalarlo correctamente:
1 |
sudo apt-get install pssh |
Si usáis FreeBSD o derivados podéis usar el propio pkg para instalarlo y si utilizáis sistemas basados en Red Hat podéis instalarlo a través de yum. En tu sistema es probable que no se pueda ejecutar el comando “pssh” propiamente dicho, sino que es a través del comando “parallel-ssh” tal y como podéis ver a continuación:
Cómo utilizar PSSH para conectarnos simultáneamente a varios SSH
Lo más sencillo para utilizar esta herramienta es crear un fichero de texto con todos los hosts a los que queremos conectarnos, la sintaxis es muy sencilla, a continuación podéis verlo:
1 |
[usuario@]IP_servidor[:puerto] |
Un ejemplo de nuestro fichero de texto de pruebas:
1 |
root@10.10.2.1 |
2 |
3 |
root@10.10.2.2 |
4 |
5 |
root@10.10.2.3 |
Es recomendable que en la organización o en nuestro hogar hagamos uso de las claves criptográficas de SSH, no solo porque de cara a la seguridad es más seguro, sino porque no tendremos que introducir la contraseña de acceso a cada uno de los servidores SSH a los que queremos conectarnos.
Una vez que hayamos creado el fichero de texto, deberemos poner la siguiente orden:
1 |
parallel-ssh -i -h nombre_archivo_texto COMANDO |
Si por ejemplo queremos mostrar la fecha de todos los servidores a los que nos hemos conectado, bastaría simplemente con hacer:
1 |
parallel-ssh -i -h nombre_archivo_texto date |
Os recomendamos visitar la página MAN de Parallel-ssh o pssh donde encontraréis todas las opciones que tenemos disponibles, entre las que se incluye poder conectarnos a varios servidores sin necesidad de utilizar un fichero de texto como entrada de datos:
1 |
pssh -i -H "host1 host2" echo "hello, world" |
Artículos Recomendados sobre SSH:
- Manual para configurar un servidor SSH en Linux
- Manual para configurar un servidor SSH en Windows
- SSH Tunneling: Conoce cómo configurar y usar un túnel SSH para navegar de manera segura
- Mejora al máximo la seguridad de tu servidor SSH
Fuente: https://www.redeszone.net/
Entusiasta de la seguridad cibernética. Especialista en seguridad de la información, actualmente trabajando como especialista en infraestructura de riesgos e investigador.
Experiencia en procesos de riesgo y control, soporte de auditoría de seguridad, diseño y soporte de COB (continuidad del negocio), gestión de grupos de trabajo y estándares de seguridad de la información.
Envía tips de noticias a info@noticiasseguridad.com o www.instagram.com/iicsorg/.
También puedes encontrarnos en Telegram www.t.me/noticiasciberseguridad