Yadda ake Sanya Kayan aikin Kulawa na LibreNMS akan Debian 11/10


LibreNMS buɗaɗɗen tushe ne kuma cikakken kayan aikin sa ido na hanyar sadarwa wanda ke ba da fa'idodin sa ido da dama don na'urorin sadarwar ku.

Babban fasali sun haɗa da:

  • Ganowa ta atomatik ga duk hanyar sadarwar ku ta amfani da ka'idojin ARP, SNMP, BGP, OSPF, LLDP, da FDP.
  • Tsarin faɗakarwa wanda ake iya daidaita shi sosai kuma ana iya canza shi don aika faɗakarwa ta imel, Slack, da sauran tashoshi.
  • Dashboard mai sauƙi, kuma mai sauƙin daidaitawa.
  • Cikin cikakken API don sarrafawa da zayyana bayanai daga sabar sa ido.
  • Tallafin na'ura mai fa'ida - Yana goyan bayan nau'ikan masu siyar da kayan masarufi kamar Cisco, Juniper, HP, da ƙari da yawa.
  • Sabuntawa ta atomatik da gyaran kwaro.
  • Tabbatar da abubuwa da yawa.
  • Tallafin asali na Android da iOS Apps.
  • da sauransu.

A cikin wannan jagorar, za mu shigar da kayan aikin sa ido na LibreNMS akan Debian 11/10.

Mataki 1: Shigar Nginx, MariaDB da PHP

Don farawa, sake sabunta ma'ajin kuma shigar da fakitin da ake buƙata kamar haka:

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

Mataki na gaba shine shigar da Nginx da ƙarin fakiti kamar curl, git, SNMP, da fakitin python waɗanda kayan aikin sa ido na LibreNMS zasu buƙaci.

Don haka, gudanar da umarni:

$ 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

Na gaba, shigar da uwar garken bayanan MariaDB, PHP, da ƙarin kari na PHP waɗanda kayan aikin sa ido na LibreNMS ke buƙata.

$ 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

Da zarar an shigar, tabbatar da kunna Nginx, php-fpm, MariaDB, da ayyukan SNMP kamar yadda aka nuna.

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

Mataki 2: Sanya TimeZone don PHP

Mataki na gaba yana buƙatar mu saita ko saita yankin lokaci na PHP. Ana yin wannan a cikin fayil ɗin php.ini wanda shine tsohuwar fayil ɗin daidaitawar PHP.

Samun dama ga fayilolin sanyi na php.ini a cikin hanyoyi masu zuwa ta amfani da editan da kuka fi so.

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

Kewaya zuwa sigogin date.timezone kuma saita shi zuwa yankin lokacinku. Don samun cikakken jerin duk yankin Timezone mai goyan bayan, je zuwa rukunin yanar gizon PHP na hukuma.

A cikin wannan misalin, muna saita yankin lokaci zuwa UTC.

date.timezone = UTC

Sa'an nan ajiye canje-canje kuma fita fayiloli.

Mataki 3: Ƙirƙiri Database don LibreNMS

A cikin wannan matakin, za mu ƙirƙiri bayanan bayanai don shigarwa na LibreNMS. Amma da farko, bari mu kiyaye bayanan bayanan ta hanyar gudanar da rubutun mai zuwa:

$ sudo mysql_secure_installation

Bi cikakkun bayanan da za su jagorance ku kan yadda ake ƙirƙirar kalmar sirri ta MariaDB, cire masu amfani da ba a san su ba kuma gwada bayanan kuma a ƙarshe hana tushen shiga nesa.

Na gaba, shiga cikin MariaDB:

$ sudo mysql -u root -p

Sannan gudanar da umarni masu zuwa don ƙirƙirar rumbun adana bayanai da mai amfani da bayanai da kuma sanya duk wani gata ga mai amfani da bayanan.

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

Sa'an nan ajiye canje-canje kuma fita da sauri MariaDB.

FLUSH PRIVILEGES;
EXIT;

Ana buƙatar wasu daidaita bayanan bayanai. Don haka buɗe fayil ɗin sanyi na MariaDB da aka nuna:

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

Sannan liƙa waɗannan layukan lambar a cikin sashin 'mysqld'.

innodb_file_per_table=1
lower_case_table_names=0

Ajiye canje-canje kuma fita fayil. Don amfani da canje-canje, sake kunna uwar garken bayanai.

$ sudo systemctl restart mariadb

Mataki 4: Ƙara Mai amfanin LibreNMS

Hakanan kuna buƙatar ƙirƙirar sabon mai amfani da LibreNMS. Wannan shine mai amfani da LibreNMS zai gudana a ƙarƙashinsa. A cikin wannan misalin, muna ƙirƙirar mai amfani da ake kira librenms tare da halaye masu zuwa.

$ sudo useradd librenms -d /opt/librenms -M -r -s /bin/bash
$ sudo usermod -aG librenms www-data

  • Zaɓin -d yana saita kundin adireshin gida don mai amfani da librenms zuwa ga /opt/librenms directory.
  • Zaɓin -r yana saita mai amfani da librenms azaman mai amfani da tsarin.
  • Zaɓin -M ya tsallake ƙirƙirar kundin adireshin gida don mai amfani tunda an riga an ayyana shi ta amfani da zaɓin -d.
  • Zaɓin -s yana ƙayyade nau'in harsashi, a wannan yanayin, bash.

Mataki 5: Ma'ajiyar Wuta ta Clone LibreNMS

Canjin motsi, yanzu za mu rufe ma'ajiyar LibreNMS git don fara saita shi.

Gudanar da waɗannan umarni don rufe ma'ajin Git

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

Sa'an nan kuma komawa zuwa kundin adireshin gida.

$ cd  ~

Na gaba, muna buƙatar sanya ikon mallakar kundin adireshi da izini ga kundin adireshin gida na Librenms. Don cimma wannan, gudanar da umarni masu zuwa:

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

Bugu da ƙari, canza lissafin ikon samun dama ga littafin gidan Librenms ta amfani da umarnin saiti. Wannan yana ba ƙungiyar Librenms izini don karantawa da rubutawa akan kundin adireshi a cikin kundin gida.

$ 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/

Mataki 6: Shigar da Dogara na PHP

PHP yana buƙatar wasu abubuwan dogaro yayin saitin kayan aikin sa ido na LibreNMS. Don yin wannan, kuna buƙatar shigar da ku azaman libremsuser.

$ sudo su - librenms

Na gaba, shigar da duk abin dogara na PHP kamar haka.

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

Da zarar an gama shigarwa na abubuwan dogaro, fita daga mai amfani da librenms.

$ exit

Mataki 7: Sanya PHP-FPM don Shigar da LibreNMS

Ci gaba, muna buƙatar yin ƴan canje-canje zuwa PHP-FPM don tallafawa LibreNMS.

Don cimma wannan. Kwafi fayil ɗin 'www.conf'wanda shine tsoho fayil ɗin saitin tafkin zuwa fayil ɗin 'librenms.conf' kamar haka.

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

Na gaba, shirya fayil ɗin 'librenms.conf'.

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

Canja ma'ajin mai amfani da rukuni zuwa librenms kamar yadda aka nuna

user = librenms
group = librenms

Na gaba, gyara sifa ta saurare zuwa /run/php-fpm-librenms.sock kamar haka.

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

Ajiye canje-canje kuma fita daga tsarin. Tabbatar sake kunna sabis na PHP-FPM don amfani da canje-canje.

$ sudo systemctl restart php7.4-fpm

Mataki 8: Sanya SNMP Daemon

Ka'idar SNMP yarjejeniya ce ta TCP/IP wacce ke tattarawa da tsara awo ko bayanai daga na'urorin da aka sarrafa a cikin hanyar sadarwa.

Yawancin kayan aikin sa ido kamar Cacti suna ba da damar sabis na SNMP don tattara bayanai daga runduna masu nisa. Haka kuma LibreNMS.

Don saita sabis na SNMP, ci gaba da kwafi fayil ɗin snmpd.conf.example zuwa fayil ɗin /etc/snmp/snmpd.conf.

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

Na gaba, shirya fayil ɗin snmpd.conf.

$ sudo vim /etc/snmp/snmpd.conf

Nemo kirtani RANDOMSTRINGGOESHERE.

com2sec readonly  default         RANDOMSTRINGGOESHERE

Canza shi zuwa librenms.

com2sec readonly  default		  librenms

Ajiye canje-canje kuma fita.

Na gaba, zazzage fayil ɗin distro, wanda shine fayil ɗin da ke gano OS na nodes ɗin da aka sarrafa ta atomatik kuma ya bambanta rarrabawa.

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

Sanya shi mai aiwatarwa kuma sake kunna sabis na SNMP.

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

Mataki 9: Sanya Nginx don LibreNMS

Tare da Nginx a matsayin sabar gidan yanar gizo da muka fi so, muna buƙatar zuwa ƙarin mataki kuma mu tsara shi don sabar LibreNMS.

Da farko, za mu ƙirƙiri toshe uwar garken Nginx kamar yadda aka nuna.

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

Manna waɗannan layukan lambobin. Don sifa ta uwar garken_name, samar da sunan yanki mai rijista ko adireshin IP na sabar ku.

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;
  }
 }

Ajiye canje-canje kuma fita fayil ɗin sanyi. Na gaba, kunna toshe uwar garken Nginx ta hanyar ƙirƙirar hanyar haɗin gwiwa kamar yadda aka nuna.

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

Sa'an nan kuma sake kunna Nginx don amfani da canje-canjen da aka yi a tsarin.

$ sudo systemctl restart nginx

Bugu da ƙari, zaku iya tabbatar da cewa duk saitunan Nginx ba su da kyau ta hanyar aiwatar da umarnin:

$ sudo nginx -t

Mataki 10: Kwafi Logrotate da Tsarin Cron

Ta hanyar tsohuwa, LibreNMS yana adana rajistan ayyukansa a cikin /opt/librenms/directory logs. A tsawon lokaci, wannan na iya cikawa cikin sauƙi da gabatar da matsalolin sararin samaniya. Don hana wannan, ana ba da shawarar juyawa tsoffin fayilolin log ɗin.

Don haka kwafi fayil ɗin logrotate a cikin littafin LibreNMS zuwa /etc/logrotate.d/ directory.

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

Hakanan mahimmanci, kwafi fayil ɗin aikin cron kamar haka don ba da damar jefa ƙuri'a ta atomatik & gano sabbin na'urori

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

Mataki 11: Kammala Saitin LibreNMS daga Mai lilo

Don kammala saitin daga mai bincike, je zuwa URL mai zuwa:

http://server-ip

Wannan yana kai ku zuwa jerin abubuwan da aka riga aka shigar. Idan duk yayi kyau, danna gunkin 'database' a dama.

Tabbatar cika duk bayanan bayanan kuma danna 'Duba Takaddun shaida'.

Da zarar bayanan bayanan sun inganta, danna kan 'Gina Database'.

Lokacin da kuka wuce wannan matakin, danna gunkin gaba don ƙirƙirar mai amfani da Admin. Samar da sunan mai amfani, kalmar sirri, da imel na mai amfani da Admin kuma danna 'Ƙara mai amfani'.

A ƙarshe, danna maɓallin ƙarshe don gama shigarwa.

Za ku ci karo da wannan kuskuren yana sanar da ku cewa mai sakawa ya kasa rubuta fayil: /opt/librenms/.env'.

Amma kada ku damu. Kawai sabunta fayil ɗin /opt/librenms/.env da hannu tare da bayanan bayanan da aka bayar. Waɗannan cikakkun bayanai zasu bambanta a yanayin ku.

Don haka, shiga cikin fayil ɗin.

$ sudo nano /opt/librenms/.env

Share duk abubuwan da ke cikin fayil ɗin kuma liƙa bayanan da aka bayar a sama cikin fayil ɗin kuma adana canje-canje.

Na gaba kai baya kuma danna maɓallin 'Sake gwadawa'. Wannan yana kai ku zuwa shafin shiga LibreNMS. Samar da takardun shaidar shiga kuma danna 'Login'.

Da zarar ka shiga zaka sami irin wannan dashboard. Daga nan, za ku iya fara ƙara masu masaukin ku da saka idanu ma'auni daban-daban.

Kuma shi ke nan. A cikin wannan jagorar, mun bi ku ta hanyar shigar da kayan aikin sa ido na LibreNMS akan Debian 11/10.