¡Hola a todos!

Hoy quiero compartir con vosotros una guía para crear un script de Nagios que nos permitirá verificar si nuestra instancia de Nextcloud está actualizada a la última versión disponible. Mantener Nextcloud actualizado es crucial para asegurar la seguridad y el rendimiento de nuestra plataforma, y con este script automatizaremos la tarea de comprobarlo.

Creación del Script para Verificar la Versión de Nextcloud

Paso 1: Instalar Dependencias

Primero, necesitamos asegurarnos de tener curl y jq instalados en el servidor donde se ejecutará el script. Estos paquetes nos permitirán realizar solicitudes HTTP y procesar datos JSON, respectivamente.

sudo apt-get update
sudo apt-get install curl jq -y

Paso 2: Crear el Script Bash

Ahora, vamos a crear un script llamado check_nextcloud_version.sh. Este script comprobará la versión actual de Nextcloud instalada y la comparará con la última versión disponible en GitHub.

#!/bin/bash

# Variables
NEXTCLOUD_URL="https://tuURLdeNextCloud.com"  # URL de tu instancia de Nextcloud
CURRENT_VERSION_FILE="/var/www/nextcloud/version.php"  # Ruta al archivo de versión de Nextcloud
NEXTCLOUD_LATEST_RELEASE_URL="https://api.github.com/repos/nextcloud/server/releases/latest"

# Obtener la última versión desde GitHub
LATEST_VERSION=$(curl -s $NEXTCLOUD_LATEST_RELEASE_URL | jq -r '.tag_name' | grep -oP '\d+\.\d+\.\d+')

# Obtener la versión actual instalada en Nextcloud
CURRENT_VERSION=$(grep -oP "\d+\.\d+\.\d+" $CURRENT_VERSION_FILE | head -1)

# Verificar si la variable LATEST_VERSION está vacía
if [ -z "$LATEST_VERSION" ]; then
    echo "NEXTCLOUD UNKNOWN - No se pudo obtener la última versión disponible."
    exit 3
fi

# Comparar versiones
if [ "$CURRENT_VERSION" == "$LATEST_VERSION" ]; then
    echo "NEXTCLOUD OK - La versión actual ($CURRENT_VERSION) está actualizada."
    exit 0
else
    echo "NEXTCLOUD CRITICAL - La versión actual ($CURRENT_VERSION) no está actualizada. La última versión es $LATEST_VERSION."
    exit 2
fi

Guarda el script y dale permisos de ejecución:

define command{
    command_name    check_nextcloud_version
    command_line    /ruta/al/script/check_nextcloud_version.sh
}

Agregar el Servicio en services.cfg:

define service{
    use                 generic-service
    host_name           tu_servidor
    service_description Nextcloud Version
    check_command       check_nextcloud_version
}

Paso 4: Reiniciar Nagios

Finalmente, reiniciamos el servicio de Nagios para aplicar los cambios:

sudo systemctl restart nagios

 

Con este script y la configuración en Nagios, ahora podrás monitorizar automáticamente si tu instancia de Nextcloud está actualizada. Mantener tu plataforma al día es fundamental para la seguridad y el rendimiento, y con esta solución, podrás estar al tanto de las actualizaciones de manera eficiente.

¡Espero que esta guía te sea útil! ¡Hasta la próxima!

⬇️¡Sigue, comenta y comparte! ⬇️

¡Descubre mis 5 HERRAMIENTAS SECRETAS que transformarán tu productividad!

Apúntate y te enseñaré mis 5 herramientas principales para ser más eficiente en mi día a día. Además, te iré enviando todas las novedades del sector tecnológico resumidas para que estés al día de todo lo que sucede, actualizaciones de principales softwares y vulnerabilidades destacadas de la semana.

⬇️ Seguro que esto te interesa ⬇️