Cuando un administrador de sistemas tiene que realizar diferentes tareas de mantenimiento o puesta a punto de varios servidores, normalmente tiene que ir servidor por servidor ejecutando las mismas órdenes, o crear un script que automatice dicha tarea. Hoy os presentamos la herramienta ClusterSSH que nos permitirá conectarnos vía SSH a múltiples máquinas y enviarles a todas ellas la misma orden.
¿Qué es ClusterSSH?
ClusterSSH es una herramienta totalmente gratuita y de código libre que nos permitirá realizar los mismos cambios en un grupo de servidores. Esta herramienta es muy fácil de utilizar, ya que simplemente debemos teclear en un ordenador «central» el comando «cssh IP_1 IP_2», con esto entraremos directamente en la administración de esos servidores desde la consola central. Todo lo que escribamos en la consola central es directamente replicado en las consolas de los equipos que estamos controlando.
En entornos empresariales lo más normal es tener claves criptográficas SSH, y no se usa el típico usuario/contraseña del sistema por seguridad. ClusterSSH también es capaz de soportar aquellos servidores SSH que para iniciar sesión se necesita un usuario y contraseña, no obstante, la parte negativa es que deberemos ir uno por uno introduciendo la contraseña para acceder a ellos. Por este motivo, lo ideal para utilizar ClusterSSH es utilizar la pareja de claves SSH para iniciar sesión.
La instalación de ClusterSSH la podemos hacer directamente desde los repositorios de nuestra propia distribución Linux, tecleando el siguiente comando:
sudo apt install clusterssh
Si el repositorio de software de nuestro sistema operativo no tiene esta herramienta, no hay ningún problema. Al ser de código abierto, podemos descargar el código fuente y compilarlo en nuestro sistema operativo, podéis acceder directamente al proyecto ClusterSSH en su Github. La última versión de este software es la 4.08 que fue lanzada el 18 de octubre de 2016, por lo que es una herramienta en continuo desarrollo.
Configuración de ClusterSSH
Con esta herramienta nosotros podemos definir las direcciones IP que queramos cada vez que lanzamos el comando principal, sin embargo, si tenemos una gran cantidad de máquinas, siempre podemos editar el fichero de configuración que se encuentra en /etc/clusterssh/ y podremos crear grupos de máquinas, por ejemplo, el grupo «webs» que estén formadas por cuatro direcciones IP de la plataforma, cuando ejecutemos «cssh webs» automáticamente se conectarán con las IP definidas.
De esta forma, podremos administrar diferentes grupos de máquinas fácilmente. Os recomendamos visitar este enlace de HackPlayers donde cuentan detalladamente cómo hacer funcionar ClusterSSH en la organización.