• Superviseurs

  • Nagios XI ne s'installe pas encore sur Debian 12.
    On prend donc une VM un peu plus vieille (genre la 11.7).. et on s'assure que l'espace de stockage est suffisamment grand (au moins 10Go)

    On se loggue en root

    su -

    On télécharge le script d'installation

    wget https://assets.nagios.com/downloads/nagiosxi/install.sh -P /tmp
    cd /tmp

    On autorise l'exécution

    chmod 740 install.sh

    Et on y va !

    ./install.sh

     

     


    votre commentaire
  • Ne pas utiliser le paquet disponible sur le dépôt Debian... il vous faudrait régler plusieurs problèmes de configuration. Il est préférrable d'utiliser l'installeur proposé par Nagios.

    L'agent NRPE permet notamment de compter le nombre d'utilisateurs connectés sur un serveur Debian distant.


    Pour installer l'agent :

    Passez en root

    su -

    1) Télécharger l'agent sur le site officiel de Nagios

    wget https://assets.nagios.com/downloads/nagiosxi/agents/linux-nrpe-agent.tar.gz -P /tmp
    cd /tmp
    tar -xvzf linux-nrpe-agent.tar.gz
    cd linux-nrpe-agent

    2) Installer l'agent

    ./fullinstall

    Redémarrez !!!

    reboot

    3) Configurer l'agent

    Au cours de l'installation, il faudra indiquer l'adresse IP du serveur Nagios XI

     

     

     

     


    votre commentaire
  • Comment déployer une sonde afin que Nagios-XI puisse vous avertir lorsqu'un serveur MariaDB s'arrête ?

    Sur le serveur MariaDB (une Debian 12)

    Passez en root

    su -

     

    1) Créer un utilisateur pour Nagios-XI (nommé "nagios") avec les droits sur la base wordpressdb.

    10.10.11.2 est l'adresse de votre serveur MariaDB
    10.10.10.200 étant l'adresse IP du serveur Nagios-XI

    10.10.10.10 étant l'adresse IP du client accédant à l'interface web de Nagios-XI (pour faire les tests de la commande au moment de la création de votre sonde)

    mysql -uroot -e"GRANT ALL ON wordpressdb.* TO 'nagios'@'10.10.10.200' IDENTIFIED BY 'Ertyuiop,'"
    mysql -uroot -e"GRANT ALL ON wordpressdb.* TO 'nagios'@'10.10.10.10' IDENTIFIED BY 'Ertyuiop,'"

    2) Autoriser les connexions au serveur à distance depuis le serveur MariaDB

    nano /etc/mysql/mariadb.conf.d/50-server.cnf
    # Changer la bind-address comme ci-dessous :
    bind-address = 10.10.11.2

    3) redémarrez Mariadb

    systemctl restart mysql

     

    Sur Nagios-XI
    (via l'interface web d'un client)
    Allez dans le CCM (Onglet Configure), puis rubrique Services dans le menu de gauche, Ajouter.

    Choissisez la commande check_xi_mysql_health

    $ARG1$ :

    --hostname 10.10.11.2 --username nagios --password Ertyuiop, --database wordpressdb --mode connection-time

    S'assurer que le serveur MariaDB est bien démarré avec Nagios-XI

     N'oubliez pas d'ajouter l'hôte MariaDB dans "Manage Host" et de régler les délais d'alerte.


    votre commentaire
  • Le but est de renvoyer les logs émis par le serveur Nagios-XI vers un serveur Rsyslog Debian 12

    Sur le Nagios-XI

    Passez en root

    su -


    1) Changer le hostname
    (mon serveur s'appelle "localhost" pour l'instant, je vais le changer pour "NAGIOS-XI")

    sysctl kernel.hostname=NAGIOS-XI.localdomain
    hostnamectl set-hostname NAGIOS-XI
    reboot

    2) Installer Rsyslog et le configurer afin qu'il renvoie les logs

    dnf install rsyslog
    systemctl enable rsyslog

    - Faire la configuration de remontée :
    (faîtes des copier/coller)

    echo '#############################################' >> /etc/rsyslog.conf
    echo '# CONFIGURATION CLIENT' >> /etc/rsyslog.conf
    echo 'action(type="omfwd"' >> /etc/rsyslog.conf
    echo 'queue.filename="fwdRule1"' >> /etc/rsyslog.conf
    echo 'queue.maxdiskspace="1g"' >> /etc/rsyslog.conf
    echo 'queue.saveonshutdown="on"' >> /etc/rsyslog.conf
    echo 'queue.type="LinkedList"' >> /etc/rsyslog.conf
    echo 'action.resumeRetryCount="-1"' >> /etc/rsyslog.conf
    echo 'Target="10.10.10.210" Port="514" Protocol="udp")' >> /etc/rsyslog.conf

    Bien sûr, vous veillerez à modifier l'adresse IP du serveur Rsyslog, le port et le protocole indiqués dans cette dernière ligne, au besoin !

     

     

     


    votre commentaire
  • On peut utiliser la commande

    check_http -H IP-DU-SERVEUR-WEB

    qui vous alarmera de toute façon lorsque la page index.truc ne sera plus là... ou cibler la page index :

    check_http -H IP-DU-SERVEUR-WEB -u https://IP-DU-SERVEUR-WEB/index.truc


    Passer par le CCM dans Nagios-XI, Services, Ajoutez-en un, sélectionnez soit la commande :

    check_xi_service_http

    ou directement

    check_http

     

    .. et ajouter les arguments au besoin (comme mentionnés ci-dessus)

    Ne pas oublier de préciser à quelle échéance la vérification doit avoir lieu et le niveau d'alerte en cas de soucis.

     


    votre commentaire
  • Les articles précédents montrent comment faire remonter les logs d'une VM cliente Debian vers un serveur Rsyslog.
    Voyons à présent comment faire remonter les logs une machine client windows 11 vers un serveur Rsyslog

    1) Télécharger l'agent Windows
    https://www.rsyslog.com/windows-agent/windows-agent-download/

    2) Installer le paquet téléchargé (rsyslogwa.exe)
    Laissez tous les paramètres par défaut.

    3) Lancer l'agent de configuration (Rsyslog Windows Agent Configuration)
    Et procédez a minima comme sur la capture d'écran ci-dessous !
    (déroulez les petits + depuis Rule Sets, jusqu'à Rsyslog, puis indiquez le protocole voulu - nous avions utilisé UDP:514, indiquez l'IP du serveur Rsyslog, cliquez sur Confirm, Save et Démarrez !)

    Remonter les logs d'une machine Windows 11 grâce à Rsyslog Windows Agent

    Les logs de la machine windows remonteront alors sur votre serveur Rsyslog.


    votre commentaire
  • Un serveur de logs va centraliser les logs de toutes les machines du réseau.
    Il va réceptionner les logs envoyés par toutes les machines.


    Nous allons mettre en place un tel serveur ainsi que montrer la configuration de base d'un client (qui enverra ses logs au serveur)
    Je ne détaille pas ici la configuration réseau des machines, elle est déjà faîte.
    Voir les articles consacrés en cas de besoin.


    Nous avons 2 zones réseau :

    - un LAN (10.10.10.0/24)
         * : 10.10.10.1     : passerelle

         * : 10.10.10.10   : un client windows 11 pro
         * : 10.10.10.200 : un serveur de supervision Nagios-XI   
         * : 10.10.10.210 : un serveur Linux Debian 12 qui sera notre serveur de logs Rsyslog
    - une DMZ (10.10.11.0/30)
         * : 10.10.11.1     : passerelle

         * : 10.10.11.2     : un serveur web sous debian avec Wordpress installé dessus

    Installer un serveur de logs (Rsyslog)

     

    Configuration du serveur Rsyslog

    1) Changer le hostname (le hostname par défaut de ma VM est "debian", je vais le changer pour "RSYSLOG")
    - Passez en root :

    su -

    - Changez le hostname

    sed -i 's/debian/RSYSLOG/' /etc/hosts
    sed -i 's/debian/RSYSLOG/' /etc/hostname

    - redémarrez

    reboot

    2) Installez et configurez rsyslog (toujours en root)

    apt update
    apt install rsyslog net-tools -y
    systemctl enable rsyslog

    - Configurez rsyslog afin que les flux passent uniquement en UDP, sur le port par défaut (514) et qu'il n'autorise que les machines sur nos réseaux à lui envoyer des logs.
    (faîtes un copier/coller des commandes suivantes)

    echo '#############################################' >> /etc/rsyslog.conf
    echo '# CONFIGURATION SERVEUR' >> /etc/rsyslog.conf
    echo 'module(load="imudp")' >> /etc/rsyslog.conf
    echo 'input(type="imudp" port="514")' >> /etc/rsyslog.conf
    echo '$AllowedSender UDP, 127.0.0.1/24, 10.10.10.0/24, 10.10.11.0/30' >> /etc/rsyslog.conf

    - Nous allons à présent faire en sorte que les logs de chaque client arrivent dans un dossier nominatif et distinct :
    (sous la forme /var/log/rsyslogclients/HOSTNAMECLIENT-IPCLIENT/rsyslog.log)

    echo '$template DynamicFile,"/var/log/rsyslogclients/%source%-%fromhost-ip%/rsyslog.log"' >> /etc/rsyslog.conf
    echo '*.* ?DynamicFile' >> /etc/rsyslog.conf

    - Démarrez le service

    systemctl start rsyslog

    - Vérifiez si tout s'est bien passé

    systemctl status rsyslog
    netstat -peanut | grep udp

    (le service doit être lancé et le port 514 apparaître dans netstat)

     

    Configuration d'un client (Debian WORDPRESS)

    1) Changer le hostname (le hostname par défaut de ma VM est "debian", je vais le changer pour "WORDPRESS")
    - Passez en root :

    su -

    - Changez le hostname

    sed -i 's/debian/WORDPRESS/' /etc/hosts
    sed -i 's/debian/WORDPRESS/' /etc/hostname

    - redémarrez

    reboot

    2) Installez et configurez rsyslog (toujours en root)

    apt update
    apt install rsyslog -y
    systemctl enable rsyslog

    - Configurer le rôle de client (afin que notre WORDPRESS renvoie ses logs à RSYSLOG)
    (faîtes un copier/coller des commandes suivantes)

    echo '#############################################' >> /etc/rsyslog.conf
    echo '# CONFIGURATION CLIENT' >> /etc/rsyslog.conf
    echo 'auth,authpriv.* @10.10.10.210' >> /etc/rsyslog.conf

    - Démarrez le service

    systemctl start rsyslog

     
    Vous devriez voir les logs de votre client WORDPRESS remonter sur le serveur RSYSLOG, dans le dossier /var/log/rsyslogclients/


    votre commentaire
  • Le TP est réalisé sur Hyper-V.
    Il consiste à superviser plusieurs équipements au moyen de Nagios XI.

    1) Télécharger le support de stockage Nagio-xi pour Hyper-V sur le site nagios : https://www.nagios.com/downloads/nagios-xi/microsoft/
    2) Créer un ordinateur virtuel sur Hyper-V (4096Mo de RAM, 1 CPU) et ajouter le support de stockage décompressé téléchargé précedemment
    3) Lancer la VM Nagios-XI, faire la configuration réseau (si réseau interne) grâce à nmtui
    4) Sur un poste client, dans le même réseau que le serveur Nagios-XI, accédez à son interface web via un navigateur : https://IP-NAGIOS

    Configuration de base de Nagios-XI

     

    5) Entrez les informations de base. Vous pouvez faire une demande pour tester toutes les fonctionnalités, cet essai est valide 1 mois. Vous obtenez un code d'accès par mail à entrer dans le champs réservé "Trial Key"

    Configuration de base de Nagios-XI

     

    6) Entrez les informations concernant l'utilisateur administrateur de la console.
    (je laisse par défaut pour cet essai)

    Configuration de base de Nagios-XI



    L'initialisation se fait, et la console vous propose à présent de vous identifier.

    Configuration de base de Nagios-XI

     

    7) Acceptez les conditions générales

    Configuration de base de Nagios-XI

     

    Vous voici à présent sur le Dashboard.

    Configuration de base de Nagios-XI

     

    ----------------------------------------------------------------------------

    Configurons à présent le monitoring pour un serveur web sous Debian 12, placé en DMZ et ayant l'IP 10.10.11.2/30.
    Le serveur Nagios est sur le LAN et a l'IP 10.10.10.200/24
    Les règles de pare-feux permettent la communication entre LAN et DMZ.

    1) Sur Debian :

    - Installer snmpd et snmp

    su -
    apt install snmpd snmp libsnmp-dev -y
    systemctl enable snmpd

    - Configurer snmpd :

    nano /etc/snmp/snmpd.conf
    # Dans la SECTION : Agent Operating Mode, commentez la ligne agentaddress comme ci-dessous
    # agentaddress 127.0.0.1,[::1]

    # Ajoutez la ligne suivante :
    agentaddress udp:161

    # Dans la SECTION : Access Control Setup, remplacer comme suit :
    rocommunity SeCuReMeDiA 10.10.10.200/32 # IP du serveur nagios

    - Démarrer snmpd :

    systemctl restart snmpd

    La configuration de l'agent SNMP est terminée

    Il s'agît ici d'une configuration toute ouverte !
    Pour aller plus loin, on pointe l'IP de l'interface voulue du serveur debian sur la ligne agentaddress (on laisse pas tout ouvert comme ici avec upd:161), on change la communauté et on pointe le serveur de supervision /32 !

    Pour tester :
    - regarder les ports ouverts :

    su -
    apt install net-tools
    netstat -nlpu | grep 161

    - Tester l'agent :

    snmpwalk -v2c -c public localhost | head -5

    2) Sur le dashboard de Nagios-XI, cliquer sur "Exécuter un assistant de configuration"

    Configuration de base de Nagios-XI

     

    3) Choisissez le plugin de monitoring qui vous intéresse.. Nous allons rester sur "Linux SNMP" pour rester classique, mais il y a plusieurs possibilités (linode, agents nagios etc...)

    Configuration de base de Nagios-XI

     

    4) Complétez les informations pour joindre votre serveur web :
    (Dans la capture, je n'ai pas changé la communauté "public"... à vous de le faire et d'indiquer SeCuReMeDiA ou celle que vous aviez choisie)

    Configuration de base de Nagios-XI

    Je vous laisse le soin de continuer la configuration... de régler vos seuils d'alerte et critique... vous allez trouver facilement !

     


    votre commentaire
  • Sous CentOS 9, la configuration réseau ne se fait plus dans /etc/sysconfig/network-scripts/ifcfg-....

    Il faut utiliser leur API : nmtui

    Donc, passez en root :

    su -

    Repérez le nom de l'interface présente sur votre serveur

    ip a

    (sur Hyper-V, c'est eth0 logiquement)

    Lancez l'API :

    nmtui


    Si votre interface eth0 existe, editez-là.. sinon, créez-la.
    Vous allez sûrement vous y reprendre à 2 fois.. Ne tappez pas ENTRER n'importe où !!
    On se déplace avec les flèches entre les différents champs.


    votre commentaire


    Suivre le flux RSS des articles de cette rubrique
    Suivre le flux RSS des commentaires de cette rubrique