Så här installerar du LibreNMS -övervakningsverktyg med Nginx på centOS 7

Vi vet mycket väl att när vi använder Linux -distros har vi möjlighet att implementera hundratals, eller kanske tusentals, applikationer och program med öppen källkod som, förutom att vara gratis, drastiskt kommer att öka kapaciteten hos våra team.

Det finns applikationer som utvecklats för varje område av en organisation och det är därför Solvetic idag kommer att analysera i detalj hur man installerar LibreNMS -verktyget och därmed låta oss som administratörer ha ett kraftfullt analys- och övervakningsverktyg till hands, så att vi kan vara medveten om alla förändringar som påverkar distro som vi arbetar med.

Vad är LibreNMSLibreNMS är ett open source -övervakningsverktyg baserat på PHP, MYSQL och SNMP. LibreNMS är ett komplett nätverksövervakningssystem för ett brett utbud av nätverkshårdvara och operativsystem, inklusive FreeBSD, Cisco, Linux, HP och mer.

När vi använder LibreNMS kommer vi att ha följande egenskaper:

  • Automatisk upptäckt, eftersom det gör det möjligt att automatiskt upptäcka hela nätverket med CDP, FDP, LLDP, OSPF, BGP, SNMP och ARP
  • Konfigurerbara varningar, så att vi kan ta emot varningar via e -post, irc, slack och mer
  • Åtkomst via API för att hantera, rita och hämta data från din installation
  • Den har ett insamlingssystem genom vilket vi kan generera bandbreddsfakturor för nätverksportar efter användning eller överföring
  • Den har automatiska uppdateringar
  • Hög skalbarhet
  • Den har applikationer för Android och iOS
  • Brett enhetsstöd
  • Mobilvänligt webbanvändargränssnitt
  • Unix Agent
  • Kan integreras med NfSen, collectd, SmokePing, RANCID och oxiderad
  • Stöder MySQL-, HTTP-, LDAP-, Radius- och Active Directory -autentiseringsmetoder

Tidigare kravFör att installera och använda LibreNMS behöver du följande:

  • CentOS 7 Minimal
  • Användare med roträttigheter

1. Installera nödvändiga Linux -paket


Innan du installerar LibreNMS på CentOS 7 kommer det att vara nödvändigt att installera några paket, inklusive ImageMagick, rrdtool, SNMP, git och mer. Dessa paket kan installeras med följande kommando:
 yum -y install net-snmp ImageMagick jwhois nmap mtr rrdtool MySQL-python net-snmp-utils cronie fping git

FÖRSTORA

När installationen är klar ser vi följande:

FÖRSTORA

2. Hur man installerar Nginx -server


Nginx [engine x] är en HTTP -server och omvänd proxy, en postproxyserver och en generisk TCP / UDP -proxyserver, ursprungligen skriven av Igor Sysoev. Under lång tid har det körts på många tungt laddade ryska webbplatser inklusive Yandex, Mail.Ru, VK och Rambler och används för närvarande som en HTTP -server globalt.

Steg 1
Innan vi installerar Nginx måste vi installera epel -förvaren för Nginx webbserverinstallation. EPEL-förvaret (extra paket för Enterprise Linux) är ett ytterligare förvar för RPM-baserat operativsystem, inklusive CentOS 7. Vi kommer att utföra följande:

 yum -y installera epel -release

FÖRSTORA

Steg 2
Nu fortsätter vi med installationen av Nginx -servern med följande kommando:

 yum -y installera nginx

FÖRSTORA

Steg 3
När Nginx är installerat på CentOS 7 ser vi följande:

FÖRSTORA

Steg 4
Efter att ha installerat Nginx på CentOS 7 startar vi tjänsten och gör att den kan köras automatiskt vid start med hjälp av följande systemctl -kommandon:

 systemctl start nginx systemctl aktivera nginx

FÖRSTORA

Steg 5
Därför har Nginx webbserver installerats på systemet från EPEL -förvaret och vi kan kontrollera det genom att köra följande rad:

 netstat -plntu

FÖRSTORA

Där kommer vi att se portarna genom vilka vi kommer att ansluta till Nginx.

3. Hur man installerar och konfigurerar PHP-FPM

Steg 1
I det här fallet kommer vi att använda version 7 av PHP-FPM för LibreNMS-installationen. Alla PHP 7 -paket för CentOS 7 är tillgängliga från tredjepartsförvaret, och vi kommer att använda PHP 7 -versionen av det 'webtatiska' förvaret.
För att göra detta kommer vi först och främst att lägga till PHP 7 webtatic -förvaret i systemet med följande rpm -kommando:

 rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

FÖRSTORA

Steg 2
Därefter kommer vi att installera PHP 7 och alla nödvändiga tillägg från våtförvaret med yum:

 yum -y installera php70w php70w-cli php70w-gd php70w-mysql php70w-snmp php70w-pear php70w-curl php70w-common php70w-fpm php70w-mcrypt

FÖRSTORA

Steg 3
När vi har laddat ner och installerat uppdaterar vi PEAR -förvaret och installerar några PEAR -tillägg (PHP -tillägg och applikationslager) med hjälp av päronkommandot:

 pear channel-update pear.php.net pear install Net_IPv4-1.3.4 pear install Net_IPv6-1.2.2b2

FÖRSTORA

Därefter kommer vi att konfigurera PHP-FPM för LibreNMS-installationen.

Steg 4
Först kommer det att vara nödvändigt att definiera standardtidszonen i php.ini -filen och se till att tidszonen matchar den aktuella tidszonen som används av systemet. Vi kan verifiera den aktuella tidszon som används av ditt system genom följande kommando:

 timedatectl

FÖRSTORA

Steg 5
När vi har definierat tidszonen fortsätter vi att redigera php.ini -filen i följande sökväg: /etc/php.ini, kan vi göra detta med valfri redigerare som nano eller vim:

 nano /etc/php.ini
I filen som kommer att visas gör vi följande ändringar:

Vi kommer att kommentera raden date.timezone och lägga till zonen som visas med kommandot timedatectl

FÖRSTORA

Vi kommer att kommentera raden cgi.fix_pathinfo och tilldela dess värde till noll (0)

FÖRSTORA

Vi sparar ändringarna med tangentkombinationen Ctrl + O och lämnar redigeraren med Ctrl + X.

Steg 6
Nästa steg är att definiera hur PHP-FPM körs på systemet. I det här fallet körs PHP-FPM under "sock" -filen istället för serverporten. Redigera filen 'www.conf' med nano för att konfigurera PHP-FPM:

 nano /etc/php-fpm.d/www.conf
Där kommer vi att ändra lyssningsraden, som har standardvärdet 127.0.0.1:9000, till följande:
 lyssna = /var/run/php-fpm/php7.0-fpm.sock

FÖRSTORA

Steg 7
I samma fil kommer vi att kommentera följande rader. Vi sparar ändringarna på servern.

 listen.owner = nginx listen.group = nginx listen.mode = 0660
PHP-FPM är nu komplett, vi kan starta tjänsten och aktivera den att köras automatiskt vid start med följande kommandon:
 systemctl start php-fpm systemctl aktivera php-fpm
Vi kommer att kontrollera att PHP-FPM körs under sockfilen, detta kan verifieras med kommandot netstat:
 netstat -pl | grep php

FÖRSTORA

4. Så här installerar och konfigurerar du MariaDB

Steg 1
LibreNMS använder MySQL -databasen för att lagra all data. I det här fallet kommer vi att använda versionen av MariaDB -databasen som är tillgänglig i förvaret, och det kommer att vara nödvändigt att installera och lägga till en del konfiguration för LibreNMS -installationen, inklusive tillägg av databasen och användaren för LibreNMS.

Vi installerar MariaDB genom att köra följande:

 yum -y installera mariadb mariadb -server

FÖRSTORA

Steg 2
Efter installationen startar vi MariaDB -tjänsten och gör att den kan startas automatiskt vid start:

 systemctl start mariadb systemctl aktivera mariadb 

FÖRSTORA

Steg 3
Vi kan kontrollera tjänsten med respektive port genom att köra följande:

 netstat -plintu

FÖRSTORA

Steg 4
Nu måste vi konfigurera MariaDB -rotlösenordet med kommandot 'mysql_secure_installation': I frågorna som visas svarar vi på följande:

 Ange rotlösenord? [Y / n] Y Ta bort anonyma användare? [Y / n] Y Vill du inte tillåta root -inloggning på distans? [Y / n] Y Ta bort testdatabasen och få åtkomst till den? [Y / n] Y Ladda om privilegietabeller nu? [J / n] Y

FÖRSTORA

På detta sätt har MariaDB installerats.

Steg 5
Nästa steg är att skapa en ny databas och en ny användare för LibreNMS. Logga in på mysql shell -kommandoraden med mysql -klienten och med det nya lösenordet tilldelat:

 mysql -u root -p
Skapa en ny databas som heter 'librenms', en ny användare 'librenms' med lösenord 'password123'
 SKAPA DATABASE librenms Teckenuppsättning utf8 COLLATE utf8_unicode_ci; SKAPA ANVÄNDAREN 'librenms' @ 'localhost' IDENTIFIERAD MED 'password123'; GE ALLA PRIVILEGER OM librenms. * TILL 'librenms' @ 'localhost'; FLUSH -PRIVILEGER;
Vi avslutar MariaDB genom att utföra kommandot exit.

FÖRSTORA

5. Hur man konfigurerar MySQL


Nu måste vi redigera my.cnf -filen för att lägga till en ny mysql -konfiguration. Vi kommer att redigera filen /etc/my.cnf med nano:
 nano /etc/my.cnf
I den visade filen klistrar vi in ​​följande under avsnittet [mysqld]:
 innodb_file_per_table = 1 sql-mode = "" lower_case_table_names = 0

FÖRSTORA

Vi sparar ändringarna. Nu startar vi om MariaDB -tjänsten genom att köra följande:

 systemctl starta om mariadb

6. Hur man laddar ner och konfigurerar LibreNMS


Med allt ovan konfigurerat är nästa steg att förbereda systemet för LibreNMS och för detta kommer vi att göra följande.

Steg 1
Vid denna tidpunkt kommer vi att skapa en ny systemanvändare som heter 'librenms', sedan kommer vi att definiera hemkatalogen för användaren i / opt / librenms -katalogen och slutligen kommer vi att lägga till librenms -användaren till nginx -gruppen:

 useradd librenms -d / opt / librenms -M -rusermod -a -G librenms nginx
När användaren har skapats och läggs till i respektive grupp, kommer vi att gå till / opt / katalogen och ladda ner LibreNMS -källkoden med kommandot git clone enligt följande:
 useradd librenms -d / opt / librenms -M -r usermod -a -G librenms nginx

FÖRSTORA

Steg 2
Vi kommer att skapa en ny katalog för LibreNMS -loggar och rrd -filer:

 mkdir -p / opt / librenms / logs / mkdir -p / opt / librenms / rrd / chmod 775 / opt / librenms / rrd /

FÖRSTORA

Nu kommer vi att ändra äganderätten till alla filer och kataloger i katalogen / opt / librenms till librenms -användaren och gruppen genom att köra följande:

 chown -R librenms: librenms / opt / librenms /

7. Så här konfigurerar du den virtuella LibreNMS -värden


LibreNMS är ett webbaserat program och fram till denna punkt använder vi en Nginx-webbserver för att vara värd för den.
Vi kommer att skapa en ny virtuell värdfil librenms.conf i nginx conf.d -katalogen genom att köra följande:
 nano /etc/nginx/conf.d/librenms.conf
I den här nya filen klistrar vi in ​​följande:
 server {# Lägg till ditt eget domännamn lyssna 80; server_name librenms.irsyadf.me; # LibreNMS Webroot -katalogrot / opt / librenms / html; index index.php; # LibreNMS loggar access_log / opt / librenms / logs / access_log; error_log / opt / librenms / logs / error_log; # Aktivera Gzip-komprimering på Nginx charset utf-8; gzip på; 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; } # PHP-FPM hanterar alla .php-filförfrågningar plats ~ \ .php {inkluderar fastcgi.conf; fastcgi_split_path_info (. + \. php) (/.+) $; fastcgi_pass unix: /var/run/php-fpm/php7.0-fpm.sock; } plats ~ /\.ht {neka alla; }}

FÖRSTORA

Vi kan spara ändringarna med Ctrl + O -tangenterna och avsluta redigeraren med Ctrl + X. Nu kan vi testa Nginx -konfigurationen genom att köra följande:

 nginx -t

FÖRSTORA

Vi kommer att starta om Nginx -tjänsten genom att köra:

 systemctl startar om nginx

8. Så här konfigurerar du brandväggen i CentOS 7


Vi måste verifiera att firewalld -paketen är installerade på ditt system, om inte kan vi installera firewalld med följande yum -kommando:
 yum -y installera firewalld
Efter installationen startar vi firewalld och gör det möjligt att köra vid start med följande systemctl -kommandon:
 systemctl start firewalld systemctl aktivera firewalld
När det är aktiverat kommer vi att lägga till följande rader för att aktivera respektive tjänster:
 brandvägg-cmd --add-service = http --permanent brandvägg-cmd --add-service = https --permanent brandvägg-cmd --add-port = 161 / udp -permanent
Vi tillämpar ändringarna genom att ladda om firewalld med följande kommando:
 brandvägg -cmd -reload
Vi kan lista reglerna för att bekräfta att tjänsterna har lagts till korrekt:
 brandvägg-cmd --lista-allt

FÖRSTORA

Vi kommer åt från vilken webbläsare som helst genom att ange serverns IP -adress, vi anger uppgif.webpterna och detta kommer att vara LibreNMS -miljön:

FÖRSTORA

Därifrån kan vi utföra all hantering av tillhörande enheter.

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave