BASH – Ejecución de comandos remotos via SSH.-

Este SCRIPT permite lanzar la ejecución de comandos remotos basados en sistemas CENTOS y DEBIAN. Cabe recordar que para que se ejecute correctamente en cada servidor remoto. Se debe tener configurado el acceso SSH en forma correcta.-

#!/bin/bash
CONF="actualizar_servidores.conf"
CMD_DEBIAN="sudo apt-get update && sudo apt-get upgrade && sudo apt-get clean"
CMD_CENTOS="sudo yum update && sudo yum clean all"
# CONF - username:host:port:os
for SERVER in $(cat $CONF)
do
    # Parsear linea de configuración
    USER=$(echo $SERVER | cut -d ':' -f1)
    HOST=$(echo $SERVER | cut -d ':' -f2)
    PORT=$(echo $SERVER | cut -d ':' -f3)
    OS=$(echo $SERVER | cut -d ':' -f4)
    # Ofrecer actualizar el servidor actual
    echo -e "#\n##\n###\n####"
    read -p "¿Desea actualizar $HOST? (Si/No): " ANS
    if [[ $ANS =~ ^[SsYy]$ ]]
    then
        # Actualizar el servidor
        case $OS in
            "debian") ssh -p $PORT $USER@$HOST $CMD_DEBIAN;;
            "centos") ssh -t -p $PORT $USER@$HOST $CMD_CENTOS;;
        esac
    fi

done
Esta entrada fue publicada en Unix - Linux. Guarda el enlace permanente.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.