LibreNMS-valvontatyökalun asentaminen Debian 11/10:een


LibreNMS on avoimen lähdekoodin ja täysin varusteltu verkkoseurantatyökalu, joka tarjoaa laajan valikoiman valvontaominaisuuksia ja -ominaisuuksia verkkolaitteillesi.

Keskeisiä ominaisuuksia ovat:

  • Koko verkkosi automaattinen etsintä ARP-, SNMP-, BGP-, OSPF-, LLDP- ja FDP-protokollien avulla.
  • Hälytysjärjestelmä, joka on erittäin muokattavissa ja jota voidaan muokata lähettämään hälytyksiä sähköpostitse, Slackin ja muiden kanavien kautta.
  • Yksinkertainen ja helposti muokattavissa oleva kojelauta.
  • Täysin kattava API valvontapalvelimesi tietojen hallintaan ja kuvaamiseen.
  • Laaja laitetuki – Tukee laajaa valikoimaa laitevalmistajia, kuten Cisco, Juniper, HP ja monia muita.
  • Automaattiset päivitykset ja virheenkorjaukset.
  • Monivaiheinen todennus.
  • Alkuperäinen tuki Android- ja iOS-sovelluksille.
  • ja paljon muuta.

Tässä oppaassa asennamme LibreNMS-valvontatyökalun Debian 11/10 -käyttöjärjestelmään.

Vaihe 1: Asenna Nginx, MariaDB ja PHP

Aloita päivittämällä arkistot ja asentamalla tarvittavat paketit seuraavasti:

sudo apt update
sudo apt install software-properties-common wget apt-transport-https

Seuraava vaihe on asentaa Nginx ja lisäpaketit, kuten curl-, git-, SNMP- ja python-paketit, joita LibreNMS-valvontatyökalu vaatii.

Joten suorita komento:

sudo apt install nginx-full curl acl fping graphviz composer git imagemagick mtr-tiny nmap python3-pip python3-memcache python3-mysqldb python3-dotenv python3-pymysql rrdtool snmp snmpd whois python3-redis python3-systemd python3-setuptools python3-systemd

Asenna seuraavaksi MariaDB-tietokantapalvelin, PHP ja muut PHP-laajennukset, joita LibreNMS-valvontatyökalu tarvitsee.

sudo apt install mariadb-server php php-fpm php-cli php-xml php-common php-gd php-json php-snmp php-pdo php-mysql php-zip php-curl php-mbstring php-pear php-bcmath

Kun olet asentanut, ota käyttöön Nginx-, php-fpm-, MariaDB- ja SNMP-palvelut kuvan mukaisesti.

sudo systemctl enable --now nginx
sudo systemctl enable --now php7.4-fpm
sudo systemctl enable --now mariadb
sudo systemctl enable --now snmpd.service

Vaihe 2: Määritä aikavyöhyke PHP:lle

Seuraava vaihe edellyttää, että määritämme tai asetamme PHP-aikavyöhykkeen. Tämä tehdään php.ini-tiedostossa, joka on oletusarvoinen PHP-määritystiedosto.

Käytä php.ini-määritystiedostoja seuraavilla poluilla suosikkieditorillasi.

sudo nano /etc/php/7.4/fpm/php.ini
sudo nano /etc/php/7.4/cli/php.ini

Siirry date.timezone-parametriin ja aseta se aikavyöhykkeellesi. Saat kattavan luettelon kaikista tuetuista aikavyöhykkeistä siirtymällä viralliselle PHP-sivustolle.

Tässä esimerkissä asetamme aikavyöhykkeeksi UTC.

date.timezone = UTC

Tallenna sitten muutokset ja poistu tiedostoista.

Vaihe 3: Luo tietokanta LibreNMS:lle

Tässä vaiheessa luomme tietokannan LibreNMS-asennusta varten. Mutta ensin suojataan tietokanta suorittamalla seuraava komentosarja:

sudo mysql_secure_installation

Seuraa yksityiskohtaisia ohjeita, jotka opastavat sinua luomaan MariaDB-pääkäyttäjän salasana, poistamaan anonyymejä käyttäjiä ja testaamaan tietokantaa ja lopulta kieltämään etäpääkäyttäjän kirjautumisen.

Kirjaudu seuraavaksi MariaDB:hen:

sudo mysql -u root -p

Luo sitten tietokanta ja tietokannan käyttäjä suorittamalla seuraavat komennot ja määritä kaikki oikeudet tietokannan käyttäjälle.

CREATE DATABASE librenms_db CHARACTER SET utf8 COLLATE utf8_unicode_ci;
CREATE USER 'librenms_user'@'localhost' IDENTIFIED BY 'P@ssword321'; 
GRANT ALL PRIVILEGES ON librenms_db.* TO 'librenms_user'@'localhost';

Tallenna sitten muutokset ja poistu MariaDB-kehotteesta.

FLUSH PRIVILEGES;
EXIT;

Tietokannan hienosäätöä tarvitaan. Avaa siis esitetty MariaDB-määritystiedosto:

sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf

Liitä sitten seuraavat koodirivit mysqld-osioon.

innodb_file_per_table=1
lower_case_table_names=0

Tallenna muutokset ja poistu tiedostosta. Ota muutokset käyttöön käynnistämällä tietokantapalvelin uudelleen.

sudo systemctl restart mariadb

Vaihe 4: Lisää LibreNMS-käyttäjä

Sinun on myös luotava uusi LibreNMS-käyttäjä. Tämä on käyttäjä, jonka alla LibreNMS ajetaan. Tässä esimerkissä luomme käyttäjän librenms, jolla on seuraavat attribuutit.

sudo useradd librenms -d /opt/librenms -M -r -s /bin/bash
sudo usermod -aG librenms www-data
  • -d-vaihtoehto asettaa librenms-käyttäjän kotihakemistoksi /opt/librenms-hakemiston.
  • Valinta -r määrittää librenms-käyttäjän järjestelmän käyttäjäksi.
  • Valinta -M ohittaa kotihakemiston luomisen käyttäjälle, koska se on jo määritetty -d-vaihtoehdolla.
  • Valinta -s määrittää komentotulkin tyypin, tässä tapauksessa bash.

Vaihe 5: Kloonaa LibreNMS Git -varasto

Vaihdettaessa aiomme nyt kloonata LibreNMS-git-tietovaraston aloittaaksemme sen asennuksen.

Suorita seuraavat komennot Git-arkiston kloonaamiseksi

cd /opt
sudo git clone https://github.com/librenms/librenms.git

Vaihda sitten takaisin kotihakemistoon.

cd  ~

Seuraavaksi meidän on määritettävä hakemiston omistajuus ja käyttöoikeudet Librenmsin-kotihakemistoon. Voit saavuttaa tämän suorittamalla seuraavat komennot:

sudo chown -R librenms:librenms /opt/librenms
sudo chmod 771 /opt/librenms

Lisäksi muokkaa Librenmsin kotihakemiston käyttöoikeusluetteloita setfacl-komennolla. Tämä antaa Librenms-ryhmälle oikeuden lukea ja kirjoittaa kotihakemiston alihakemistoja.

sudo setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
sudo setfacl -R -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/

Vaihe 6: Asenna PHP-riippuvuudet

PHP vaatii joitain riippuvuuksia LibreNMS-valvontatyökalun asennuksen aikana. Sinun on kirjauduttava sisään käyttäjänä librenmsuser.

sudo su - librenms

Asenna seuraavaksi kaikki PHP-riippuvuudet seuraavasti.

./scripts/composer_wrapper.php install --no-dev

Kun riippuvuuksien asennus on valmis, poistu librenms-käyttäjästä.

exit

Vaihe 7: Määritä PHP-FPM LibreNMS-asennusta varten

Jatkossa meidän on tehtävä muutamia muutoksia PHP-FPM:ään, jotta voimme tukea LibreNMS:tä.

Tämän saavuttamiseksi. Kopioi www.conf-tiedosto, joka on poolin oletusmääritystiedosto, librenms.conf-tiedostoon seuraavasti.

sudo cp /etc/php/7.4/fpm/pool.d/www.conf /etc/php/7.4/fpm/pool.d/librenms.conf

Muokkaa seuraavaksi librenms.conf-tiedostoa.

sudo nano /etc/php/7.4/fpm/pool.d/librenms.conf

Muuta käyttäjä- ja ryhmäparametreiksi librenms kuvan mukaisesti

user = librenms
group = librenms

Muokkaa seuraavaksi listen-attribuuttia muotoon /run/php-fpm-librenms.sock seuraavasti.

listen = /run/php-fpm-librenms.sock

Tallenna muutokset ja poistu määrityksestä. Muista käynnistää PHP-FPM-palvelu uudelleen, jotta muutokset otetaan käyttöön.

sudo systemctl restart php7.4-fpm

Vaihe 8: Määritä SNMP-Daemon

SNMP-protokolla on TCP/IP-protokolla, joka kerää ja järjestää mittareita tai tietoja hallituilta laitteilta verkon yli.

Useimmat seurantatyökalut, kuten Cacti, hyödyntävät SNMP-palvelua tietojen keräämiseen etäisänniltä. Ja niin myös LibreNMS.

Voit määrittää SNMP-palvelun kopioimalla snmpd.conf.example-tiedoston /etc/snmp/snmpd.conf-tiedostoon.

sudo cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf

Muokkaa seuraavaksi snmpd.conf-tiedostoa.

sudo vim /etc/snmp/snmpd.conf

Etsi merkkijono RANDOMSTRINGGOESHERE.

com2sec readonly  default         RANDOMSTRINGGOESHERE

Vaihda se librenmsiksi.

com2sec readonly  default		  librenms

Tallenna muutokset ja poistu.

Lataa seuraavaksi distro-tiedosto, joka on tiedosto, joka tunnistaa automaattisesti hallittujen solmujen käyttöjärjestelmän ja erottaa sen jakelun.

sudo curl -o /usr/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro

Tee siitä suoritettava ja käynnistä SNMP-palvelu uudelleen.

sudo chmod +x /usr/bin/distro
sudo systemctl restart snmpd

Vaihe 9: Määritä Nginx LibreNMS:ää varten

Kun Nginx on ensisijaisena verkkopalvelimenamme, meidän on suoritettava ylimääräinen vaihe ja määritettävä se voidaksemme palvella LibreNMS:ää.

Ensin luomme Nginx-palvelinlohkon kuvan mukaisesti.

sudo nano /etc/nginx/sites-available/librenms

Liitä seuraavat koodirivit. Anna palvelimen_nimi-attribuutille palvelimesi rekisteröity verkkotunnuksen nimi tai IP-osoite.

server {
  listen      80;
  server_name 23.92.30.144;        
  root        /opt/librenms/html;
  index       index.php;
 charset utf-8;
  gzip on;
  gzip_types text/css application/javascript text/javascript application/x-javascript image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon; 
  location / {
   try_files $uri $uri/ /index.php?$query_string;
  }
  location /api/v0 {
   try_files $uri $uri/ /api_v0.php?$query_string;
  }
  location ~ .php {
   include fastcgi.conf;
   fastcgi_split_path_info ^(.+.php)(/.+)$;
   fastcgi_pass unix:/var/run/php/php-fpm.sock;
  }
  location ~ /.ht {
   deny all;
  }
 }

Tallenna muutokset ja poistu asetustiedostosta. Ota seuraavaksi käyttöön Nginx-palvelinlohko luomalla symbolinen linkki kuvan mukaisesti.

sudo ln -s /etc/nginx/sites-available/librenms /etc/nginx/sites-enabled/

Käynnistä sitten Nginx uudelleen ottaaksesi kokoonpanoon tehdyt muutokset käyttöön.

sudo systemctl restart nginx

Lisäksi voit varmistaa, että kaikki Nginx-asetukset ovat kunnossa suorittamalla komennon:

sudo nginx -t

Vaihe 10: Kopioi Logrotate- ja Cron-määritykset

Oletuksena LibreNMS tallentaa lokinsa /opt/librenms/logs-hakemistoon. Ajan myötä tämä voi helposti täyttyä ja aiheuttaa tilaongelmia. Tämän estämiseksi suositellaan vanhojen lokitiedostojen kiertämistä.

Siksi kopioi LibreNMS-hakemiston logrotate-tiedosto hakemistoon /etc/logrotate.d/.

sudo cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms

Yhtä tärkeää on kopioida cron-työtiedosto seuraavasti salliaksesi automaattisen pollauksen ja uusien laitteiden löytämisen

sudo cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms

Vaihe 11: Viimeistele LibreNMS-asennus selaimesta

Viimeistele asennus selaimessa siirtymällä seuraavaan URL-osoitteeseen:

http://server-ip

Tämä vie sinut näytettävään asennusta edeltävään tarkistuslistaan. Jos kaikki näyttää hyvältä, napsauta oikealla olevaa tietokanta-kuvaketta.

Muista täyttää kaikki tietokannan tiedot ja napsauta Tarkista tunnistetiedot.

Kun tietokannan tiedot on vahvistettu, napsauta Luo tietokanta.

Kun olet ohittanut tämän vaiheen, luo järjestelmänvalvoja-käyttäjä napsauttamalla seuraavaa kuvaketta. Anna järjestelmänvalvojan käyttäjänimi, salasana ja sähköpostiosoite ja napsauta "Lisää käyttäjä".

Viimeistele asennus napsauttamalla viimeistä painiketta.

Saat tämän virheilmoituksen ja ilmoittaa, että asennusohjelma "tiedoston kirjoittaminen epäonnistui: /opt/librenms/.env".

Mutta älä huoli. Päivitä /opt/librenms/.env-tiedosto manuaalisesti uudelleen annetuilla tietokannan tiedoilla. Nämä tiedot vaihtelevat tapauksessasi.

Joten, käytä tiedostoa.

sudo nano /opt/librenms/.env

Poista kaikki tiedoston sisältö ja liitä yllä annetut tiedot tiedostoon ja tallenna muutokset.

Palaa seuraavaksi takaisin ja napsauta Yritä uudelleen -painiketta. Tämä vie sinut LibreNMS-kirjautumissivulle. Anna kirjautumistiedot ja napsauta "Kirjaudu sisään".

Kun olet kirjautunut sisään, saat tällaisen hallintapaneelin. Täältä voit aloittaa isäntien lisäämisen ja seurata erilaisia mittareita.

Ja siinä se. Tässä oppaassa olemme opastaneet sinut LibreNMS-valvontatyökalun asennuksen läpi Debian 11/10 -käyttöjärjestelmään.