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.

Tärkeimpiä ominaisuuksia ovat:

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

Tässä oppaassa asennamme LibreNMS-valvontatyökalun Debian 11/10:een.

Vaihe 1: Asenna Nginx, MariaDB ja PHP

Aloita päivittämällä arkistot ja asentamalla edellytyspaketit seuraavasti:

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

Seuraava askel 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, muista ottaa Nginx-, php-fpm-, MariaDB- ja SNMP-palvelut käyttöön 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 parametriin date.timezone 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 '[email protected]'; 
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 alaisuudessa 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

  • Vaihtoehto -d asettaa librenms-käyttäjän kotihakemistoksi /opt/librenms-hakemiston.
  • Vaihtoehto -r määrittää librenms-käyttäjän järjestelmän käyttäjäksi.
  • Vaihtoehto -M ohittaa kotihakemiston luomisen käyttäjälle, koska se on jo määritetty -d-vaihtoehdolla.
  • Vaihtoehto -s määrittää komentotulkin tyypin, tässä tapauksessa bash.

Vaihe 5: Kloonaa LibreNMS Git -varasto

Vaihteita vaihdettaessa aiomme nyt kloonata LibreNMS-git-arkiston 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. Tätä varten sinun on kirjauduttava sisään librenmsuser-käyttäjänä.

$ 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ämän saavuttamiseksi. Kopioi www.conf-tiedosto, joka on oletusvarannon mää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 kuuntelumääritettä /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 valvontatyökalut, kuten Cacti, hyödyntävät SNMP-palvelua tietojen keräämiseen etäisänniltä. Ja niin myös LibreNMS.

Jos haluat määrittää SNMP-palvelun, siirry eteenpäin ja kopioi snmpd.conf.example-tiedosto /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 RANDOMSTRINGGOESHERE-merkkijono.

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 mentävä ylimääräiseen vaiheeseen ja määritettävä se LibreNMS:n palvelimelle.

Ensin luomme Nginx-palvelinlohkon kuvan mukaisesti.

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

Liitä seuraavat koodirivit. Anna palvelimen_nimi-attribuutille palvelimesi rekisteröity verkkotunnus 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 selaimesta 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 käyttäjätiedot.

Kun tietokannan tiedot on vahvistettu, napsauta 'Build Database'.

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

Viimeistele asennus napsauttamalla viimeistä painiketta.

Törmäät tähän virheeseen, joka 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 sinun tapauksessasi.

Joten, käytä tiedostoa.

$ sudo nano /opt/librenms/.env

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

Siirry 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 kojelaudan. 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:een.