- 1. Instalarea pachetelor Linux necesare
- 2. Cum se instalează serverul Nginx
- 3. Cum se instalează și se configurează PHP-FPM
- 4. Cum se instalează și se configurează MariaDB
- 5. Cum se configurează MySQL
- 6. Cum se descarcă și se configurează LibreNMS
- 7. Cum se configurează gazda virtuală LibreNMS
- 8. Cum se configurează firewall-ul în CentOS 7
Știm foarte bine că atunci când folosim distribuții Linux avem posibilitatea de a implementa sute, sau poate mii, de aplicații și programe open source care, în afară de a fi gratuite, vor crește drastic capacitățile echipelor noastre.
Există aplicații dezvoltate pentru fiecare domeniu al unei organizații și de aceea astăzi Solvetic va analiza în detaliu modul de instalare a instrumentului LibreNMS și astfel ne permite ca administratori să avem la îndemână un instrument puternic de analiză și monitorizare, permițându-ne astfel să fim conștienți de toate schimbările care afectează distribuția la care lucrăm.
Ce este LibreNMSLibreNMS este un instrument de monitorizare open source bazat pe PHP, MYSQL și SNMP. LibreNMS este un sistem complet de monitorizare a rețelei pentru o gamă largă de hardware de rețea și sisteme de operare, inclusiv FreeBSD, Cisco, Linux, HP și multe altele.
Când utilizați LibreNMS, vom avea următoarele caracteristici:
- Descoperire automată, deoarece permite descoperirea automată a întregii rețele folosind CDP, FDP, LLDP, OSPF, BGP, SNMP și ARP
- Alerte configurabile, permițându-ne să primim alerte prin e-mail, IRC, slack și multe altele
- Accesați prin API pentru a gestiona, grafica și prelua date din instalare
- Are un sistem de colectare prin care putem genera facturi de lățime de bandă pentru porturile de rețea în funcție de utilizare sau transfer
- Are actualizări automate
- Niveluri ridicate de scalabilitate
- Are aplicații pentru Android și iOS
- Suport larg pentru dispozitiv
- Interfață de utilizator web prietenoasă pentru mobil
- Agent Unix
- Poate fi integrat cu NfSen, collectd, SmokePing, RANCID și oxidat
- Suportă metode de autentificare MySQL, HTTP, LDAP, Radius și Active Directory
Cerințe anterioarePentru a instala și utiliza LibreNMS veți avea nevoie de următoarele:
- CentOS 7 Minimal
- Utilizator cu privilegii de root
1. Instalarea pachetelor Linux necesare
Înainte de a instala LibreNMS pe CentOS 7, va fi necesar să instalați unele pachete, inclusiv ImageMagick, rrdtool, SNMP, git și multe altele. Aceste pachete pot fi instalate cu următoarea comandă:
yum -y install net-snmp ImageMagick jwhois nmap mtr rrdtool MySQL-python net-snmp-utils cronie fping git
MARI
Odată ce instalarea este finalizată, vom vedea următoarele:
MARI
2. Cum se instalează serverul Nginx
Nginx [motor x] este un server HTTP și proxy invers, un server proxy de mail și un server proxy TCP / UDP generic, scris inițial de Igor Sysoev. De mult timp, rulează pe multe site-uri rusești încărcate puternic, inclusiv Yandex, Mail.Ru, VK și Rambler și este utilizat în prezent ca server HTTP la nivel global.
Pasul 1
Înainte de a instala Nginx, trebuie să instalăm depozitele epel pentru instalarea serverului web Nginx. Depozitul EPEL (pachete suplimentare pentru Enterprise Linux) este un depozit suplimentar pentru sistemul de operare bazat pe RPM, inclusiv CentOS 7. Vom executa următoarele:
Da, instalează epel-release
MARI
Pasul 2
Acum continuăm cu instalarea serverului Nginx cu următoarea comandă:
da -instalează nginx
MARI
Pasul 3
Odată ce Nginx este instalat pe CentOS 7 vom vedea următoarele:
MARI
Pasul 4
După instalarea Nginx pe CentOS 7, vom porni serviciul și îl vom permite să ruleze automat la pornire folosind următoarele comenzi systemctl:
systemctl start nginx systemctl enable nginx
MARI
Pasul 5
Prin urmare, serverul web Nginx a fost instalat pe sistem din depozitul EPEL și îl putem verifica executând următoarea linie:
netstat -plntu
MARI
Acolo vom vedea porturile prin care ne vom conecta cu Nginx.
3. Cum se instalează și se configurează PHP-FPM
Pasul 1
Pentru acest caz, vom utiliza versiunea 7 a PHP-FPM pentru instalarea LibreNMS. Toate pachetele PHP 7 pentru CentOS 7 sunt disponibile din depozitul terț și vom folosi versiunea PHP 7 a depozitului „webtatic”.
Pentru a face acest lucru, în primul rând vom adăuga depozitul webtatic PHP 7 la sistem folosind următoarea comandă rpm:
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
MARI
Pasul 2
Apoi, vom instala PHP 7 și toate extensiile necesare din depozitul umed folosind yum:
da -instalează php70w php70w-cli php70w-gd php70w-mysql php70w-snmp php70w-pear php70w-curl php70w-common php70w-fpm php70w-mcrypt
MARI
Pasul 3
Odată descărcat și instalat, vom actualiza depozitul PEAR și vom instala câteva extensii PEAR (Extensie PHP și Depozit de aplicații) folosind comanda pear:
pear channel-update pear.php.net pear install Net_IPv4-1.3.4 pear install Net_IPv6-1.2.2b2
MARI
Apoi, vom configura PHP-FPM pentru instalarea LibreNMS.
Pasul 4
În primul rând, va fi necesar să definiți fusul orar implicit în fișierul php.ini și să vă asigurați că fusul orar se potrivește cu fusul orar actual utilizat de sistem. Putem verifica fusul orar actual utilizat de sistemul dvs. prin următoarea comandă:
timedatectl
MARI
Pasul 5
Odată ce definim fusul orar, continuăm să edităm fișierul php.ini în următoarea cale: /etc/php.ini, putem face acest lucru cu orice editor, cum ar fi nano sau vim:
nano /etc/php.iniÎn fișierul care va fi afișat vom face următoarele modificări:
Vom decomenta linia date.timezone și vom adăuga zona afișată de comanda timedatectl
MARI
Vom decomenta linia cgi.fix_pathinfo și îi vom atribui valoarea la zero (0)
MARI
Salvăm modificările folosind combinația de taste Ctrl + O și ieșim din editor folosind Ctrl + X.
Pasul 6
Următorul pas este de a defini modul în care PHP-FPM rulează pe sistem. În acest caz, PHP-FPM va rula sub fișierul „soc” în locul portului serverului. Editați fișierul „www.conf” cu nano pentru a configura PHP-FPM:
nano /etc/php-fpm.d/www.confAcolo vom schimba linia de ascultare, care are valoarea implicită 127.0.0.1:9000, la următoarea:
asculta = /var/run/php-fpm/php7.0-fpm.sock
MARI
Pasul 7
În același fișier vom descomenta următoarele rânduri. Salvăm modificările pe server.
listen.owner = nginx listen.group = nginx listen.mode = 0660PHP-FPM este acum complet, putem începe serviciul și îl putem permite să ruleze automat la pornire folosind următoarele comenzi:
systemctl pornește php-fpm systemctl activează php-fpmVom verifica dacă PHP-FPM rulează sub fișierul șosete, acest lucru poate fi verificat cu comanda netstat:
netstat -pl | grep php
MARI
4. Cum se instalează și se configurează MariaDB
Pasul 1
LibreNMS folosește baza de date MySQL pentru a stoca toate datele. În acest caz, vom folosi versiunea bazei de date MariaDB care este disponibilă în depozit și va fi necesar să instalați și să adăugați o anumită configurație pentru instalarea LibreNMS, inclusiv adăugarea bazei de date și a utilizatorului pentru LibreNMS.
Vom instala MariaDB executând următoarele:
Da, instalează mariadb mariadb-server
MARI
Pasul 2
Odată instalat, vom porni serviciul MariaDB și îl vom activa să pornească automat la pornire:
systemctl start mariadb systemctl enable mariadb
MARI
Pasul 3
Putem verifica serviciul cu portul respectiv executând următoarele:
netstat -plintu
MARI
Pasul 4
Acum trebuie să configurăm parola de root MariaDB folosind comanda „mysql_secure_installation”: În întrebările afișate vom răspunde la următoarele:
Setați parola de root? [Da / Nu] Da Eliminați utilizatorii anonimi? [Y / n] Y Nu permiteți conectarea root la distanță? [Da / Nu] Da Eliminați baza de date de testare și accesați-o? [Y / n] Y Reîncărcați tabelele de privilegii acum? [Y / n] Y
MARI
În acest fel a fost instalat MariaDB.
Pasul 5
Următorul pas este crearea unei noi baze de date și a unui nou utilizator pentru LibreNMS. Conectați-vă la linia de comandă shell MySQL folosind clientul MySQL și cu noua parolă atribuită:
mysql -u root -pCreați o nouă bază de date numită „librenms”, un nou utilizator „librenms” cu parola „password123”
CREAȚI BAZA DE BAZE librenms SET CARACTERE utf8 COLLATE utf8_unicode_ci; CREAȚI UTILIZATORUL 'librenms' @ 'localhost' IDENTIFICAT DE 'password123'; ACORDAȚI TOATE PRIVILEGIILE PE librenms. * LA „librenms” @ „localhost”; PRIVILEGII DE ÎNVĂȚARE;Ieșim din MariaDB executând comanda exit.
MARI
5. Cum se configurează MySQL
Acum trebuie să edităm fișierul my.cnf pentru a adăuga o nouă configurație mysql. Vom edita fișierul /etc/my.cnf folosind nano:
nano /etc/my.cnfÎn fișierul afișat vom lipi următoarele în secțiunea [mysqld]:
innodb_file_per_table = 1 sql-mode = "" lower_case_table_table_names = 0
MARI
Salvăm modificările. Acum vom reporni serviciul MariaDB executând următoarele:
systemctl restart mariadb
6. Cum se descarcă și se configurează LibreNMS
Cu toate cele de mai sus configurate, următorul pas este pregătirea sistemului pentru LibreNMS și pentru aceasta vom face următoarele.
Pasul 1
În acest moment vom crea un nou utilizator de sistem numit „librenms”, apoi vom defini directorul de start pentru utilizator în directorul / opt / librenms și în cele din urmă vom adăuga utilizatorul librenms la grupul nginx:
useradd librenms -d / opt / librenms -M -rusermod -a -G librenms nginxOdată ce utilizatorul este creat și adăugat la grupul respectiv, vom merge la directorul / opt / și vom descărca codul sursă LibreNMS folosind comanda git clone după cum urmează:
useradd librenms -d / opt / librenms -M -r usermod -a -G librenms nginx
MARI
Pasul 2
Vom crea un nou director pentru jurnalele LibreNMS și fișierele rrd:
mkdir -p / opt / librenms / logs / mkdir -p / opt / librenms / rrd / chmod 775 / opt / librenms / rrd /
MARI
Acum vom schimba proprietatea tuturor fișierelor și directoarelor din directorul / opt / librenms la utilizatorul și grupul librenms executând următoarele:
chown -R librenms: librenms / opt / librenms /
7. Cum se configurează gazda virtuală LibreNMS
LibreNMS este o aplicație bazată pe web și până în acest moment folosim un server web Nginx pentru a-l găzdui.
Vom crea un nou fișier gazdă librenms.conf în directorul nginx conf.d executând următoarele:
nano /etc/nginx/conf.d/librenms.confÎn acest nou fișier vom lipi următoarele:
server {# Adăugați propriul nume de domeniu ascultați 80; server_name librenms.irsyadf.me; # LibreNMS Webroot director root / opt / librenms / html; index index.php; # LibreNMS logs access_log / opt / librenms / logs / access_log; error_log / opt / librenms / logs / error_log; # Activarea compresiei Gzip pe setul de caractere Nginx 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; locație / {try_files $ uri $ uri / /index.php?$query_string; } location / api / v0 {try_files $ uri $ uri / /api_v0.php?$query_string; } # PHP-FPM gestionează toate fișierele .php solicită locația ~ \ .php {include fastcgi.conf; fastcgi_split_path_info (. + \. php) (/.+) $; fastcgi_pass unix: /var/run/php-fpm/php7.0-fpm.sock; } location ~ /\.ht {deny all; }}
MARI
Putem salva modificările folosind tastele Ctrl + O și ieșim din editor folosind Ctrl + X. Acum putem testa configurația Nginx executând următoarele:
nginx -t
MARI
Vom reporni serviciul Nginx executând:
systemctl reporniți nginx
8. Cum se configurează firewall-ul în CentOS 7
Trebuie să validăm că pachetele firewalld sunt instalate pe sistemul dvs., dacă nu, putem instala firewalld cu următoarea comandă yum:
yum -instalează firewalldOdată instalat, vom porni firewalld și îl vom permite să ruleze la boot cu următoarele comenzi systemctl:
systemctl start firewalld systemctl activate firewalldOdată activat, vom adăuga următoarele linii pentru a activa serviciile respective:
firewall-cmd --add-service = http --permanent firewall-cmd --add-service = https --permanent firewall-cmd --add-port = 161 / udp -permanentAplicăm modificările reîncărcând firewalld cu următoarea comandă:
firewall-cmd -reloadPutem enumera regulile pentru a confirma că serviciile au fost adăugate corect:
firewall-cmd --list-all
MARI
Vom accesa din orice browser introducând adresa IP a serverului, vom introduce acreditările și acesta va fi mediul LibreNMS:
MARI
De acolo putem efectua toată gestionarea dispozitivelor asociate.