Пратите своје уређаје користећи ЛибреНМС на Убунту 16.04

ЛибреНМС је потпуно функционалан систем за праћење мреже отвореног кода. Користи се SNMP за добијање података са различитих уређаја. Различити уређаји су подржани у ЛибреНМС-у као што су Цисцо, Линук, ФрееБСД, Јунипер, Броцаде, Фоундри, ХП и многи други. Подржава вишеструке механизме аутентификације и подржава двофакторску аутентификацију. Има прилагодљив систем упозорења који може упозорити мрежног администратора путем е-поште, ИРЦ-а или слацк-а.

Предуслови

За овај водич користићемо nms.example.com као име домена усмерено на Вултр инстанцу. Обавезно замените сва појављивања примера имена домена стварним.

Ажурирајте свој основни систем користећи водич Како ажурирати Убунту 16.04 . Када се ваш систем ажурира, наставите са инсталирањем зависности.

Инсталирајте Нгинк и ПХП

Предњи крај ЛибреНМС-а је написан у ПХП-у, тако да ћемо морати да инсталирамо веб сервер и ПХП. У овом водичу ћемо инсталирати Нгинк заједно са ПХП 7.2 да бисмо постигли максималну сигурност и перформансе.

Инсталирајте Нгинк.

sudo apt -y install nginx

Покрените Нгинк и омогућите му да се аутоматски покреће при покретању.

sudo systemctl start nginx
sudo systemctl enable nginx

Додајте и омогућите Реми спремиште, пошто подразумевано апт спремиште садржи старију верзију ПХП-а.

sudo add-apt-repository --yes ppa:ondrej/php
sudo apt update

Инсталирајте ПХП верзију 7.2 заједно са модулима које захтева ЛибреНМС.

sudo apt -y install php7.2 php7.2-cli php7.2-common php7.2-curl php7.2-fpm php7.2-gd php7.2-mysql php7.2-snmp php7.2-mbstring php7.2-xml php7.2-zip zip unzip

Отворите учитану конфигурациону датотеку у уређивачу.

sudo nano /etc/php/7.2/fpm/php.ini

Пронађите следеће редове.

;cgi.fix_pathinfo=1
;date.timezone =

Уклоните коментаре и користите ове вредности уместо њих, замените их Asia/Kolkata локалном временском зоном .

cgi.fix_pathinfo=0
date.timezone = Asia/Kolkata

Такође ћете морати да промените временску зону система покретањем следеће команде.

sudo ln -sf /usr/share/zoneinfo/Asia/Kolkata /etc/localtime

Поново покрените ПХП-ФПМ.

sudo systemctl restart php7.2-fpm

Инсталирајте МариаДБ

МариаДБ је форк МиСКЛ отвореног кода. Додајте МариаДБ спремиште у свој систем, пошто подразумевано Убунту спремиште садржи старију верзију МариаДБ-а.

sudo apt-key adv --yes --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://mariadb.biz.net.id/repo/10.2/ubuntu xenial main'
sudo apt update

Инсталирајте МариаДБ. Током инсталације, инсталатер ће тражити лозинку МиСКЛ rootкорисника. Наведите јаку лозинку.

sudo apt -y install mariadb-server

Пре него што почнемо да користимо МариаДБ, мораћемо мало да подесимо конфигурацију. Отворите конфигурациону датотеку.

sudo nano /etc/mysql/conf.d/mariadb.cnf 

Додајте следећи код на крај датотеке.

[mysqld]
innodb_file_per_table=1
sql-mode=""
lower_case_table_names=0

Поново покрените МариаДБ и омогућите му да се аутоматски покреће при покретању.

sudo systemctl restart mariadb.service 
sudo systemctl enable mariadb.service

Пре конфигурисања базе података, мораћете да обезбедите МариаДБ инстанцу.

sudo mysql_secure_installation

Од вас ће се тражити тренутна МариаДБ роот лозинка, а затим ће се од вас тражити да промените rootлозинку. Пошто смо већ поставили јаку лозинку за rootкорисника током инсталације, прескочите је тако што ћете одговорити на „ N“. За сва остала питања одговорите на " Y". Постављена питања су сама по себи разумљива.

Пријавите се у МиСКЛ љуску као роот.

mysql -u root -p

Наведите лозинку за МариаДБ роот корисника за пријаву. Покрените следеће упите да бисте креирали базу података и корисника базе података за инсталацију ЛибреНМС-а.

CREATE DATABASE librenms CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'StrongPassword';
GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Име базе података librenms и корисничко име можете заменити librenms по свом избору. Обавезно промените StrongPassword на веома јаку лозинку.

Инсталирајте ЛибреНМС

Осим горе наведених зависности, ЛибреНМС-у је потребно још неколико зависности.

sudo apt -y install fping git imagemagick jwhois mtr graphviz nmap python-memcache python-mysqldb rrdtool snmp snmpd whois composer

Додајте новог непривилегованог корисника за ЛибреНМС апликацију.

sudo useradd librenms -d /opt/librenms -M -r
sudo usermod -aG www-data librenms

ЛибреНМС се може инсталирати директно клонирањем његовог Гитхуб репозиторија.

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

Промените власништво.

sudo chown librenms:librenms -R /opt/librenms

Инсталирајте ПХП зависности.

cd /opt/librenms
sudo su librenms -c "composer install"

ЛибреНМС се ослања на СНМП за многе задатке. Пошто смо већ инсталирали СНМП, копирајте пример конфигурационе датотеке на његову локацију.

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

Отворите конфигурациону датотеку у уређивачу.

sudo nano /etc/snmp/snmpd.conf

Пронађите ову линију.

com2sec readonly  default         RANDOMSTRINGGOESHERE

Уредите текст RANDOMSTRINGGOESHERE и замените стринг заједнице било којим низом по вашем избору. На пример.

com2sec readonly  default         my-org

Запамтите стринг јер ће бити потребан касније када додамо први СНМП уређај.

СНМП-у су такође потребне информације о верзији дистрибуције. Преузмите и инсталирајте скрипту да бисте пронашли верзију за дистрибуцију.

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

Покрените СНМП демон сервис и омогућите му да се аутоматски покреће при покретању.

sudo systemctl enable snmpd
sudo systemctl restart snmpd

Сада ћете морати да додате неке цронтаб уносе да бисте покренули заказане задатке. Креирајте нову црон датотеку посла.

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

Поново покрените црон даемон услугу.

sudo systemctl restart cron

Подесите logrotate тако да се датотеке евиденције аутоматски освежавају током времена.

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

На крају, подесите одговарајуће власништво и дозволе.

sudo chown -R librenms:www-data /opt/librenms
sudo chmod g+w -R /opt/librenms
sudo setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs
sudo setfacl -R -m g::rwx /opt/librenms/rrd /opt/librenms/logs

ССЛ и Нгинк ВХост конфигурације

Пријаве и друге информације које се шаљу преко веб интерфејса ЛибреНМС-а нису заштићене ако веза није шифрована помоћу ССЛ-а. Конфигурисаћемо Нгинк да користи ССЛ генерисан са Лет'с Енцрипт бесплатним ССЛ-ом.

Додајте Цертбот спремиште.

sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update

Инсталирајте Цертбот, који је клијентска апликација за Лет'с Енцрипт ЦА.

sudo apt -y install certbot

Напомена : Да бисте добили сертификате од Лет'с Енцрипт ЦА, домен за који ће се сертификати генерисати мора бити усмерен ка серверу. Ако није, извршите неопходне промене у ДНС записима домена и сачекајте да се ДНС пропагира пре него што поново поднесете захтев за сертификат. Цертбот проверава ауторитет домена пре пружања сертификата.

Генеришите ССЛ сертификате.

sudo certbot certonly --webroot -w /var/www/html -d nms.example.com

Генерисани сертификати ће вероватно бити ускладиштени у /etc/letsencrypt/live/nms.example.com/директоријуму. ССЛ сертификат ће бити сачуван као, fullchain.pem а приватни кључ ће бити сачуван као privkey.pem.

Лет'с Енцрипт сертификати истичу за 90 дана, стога се препоручује да подесите аутоматско обнављање за сертификате користећи црон посао.

Отворите црон датотеку посла.

sudo crontab -e

Додајте следећи ред на крај датотеке.

30 5 * * 1 /usr/bin/certbot renew --quiet

Горе наведени црон посао ће се изводити сваког понедељка у 5:30 по локалном времену. Ако сертификат истекне, аутоматски ће се обновити.

Креирајте нови виртуелни хост.

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

Попуните датотеку.

server {
    listen 80;
    server_name nms.example.com;
    return 301 https://$host$request_uri;
}
server {

    listen 443;
    server_name nms.example.com;

    ssl_certificate           /etc/letsencrypt/live/nms.example.com/fullchain.pem;
    ssl_certificate_key       /etc/letsencrypt/live/nms.example.com/privkey.pem;

    ssl on;
    ssl_session_cache  builtin:1000  shared:SSL:10m;
    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

    access_log    /opt/librenms/logs/librenms.nginx.access.log;
    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:/run/php/php7.2-fpm.sock;
    }
    location ~ /\.ht {
        deny all;
    }
 }

Замените nms.example.com својим стварним доменом у горњој конфигурацији.

Активирајте новостворену конфигурацију.

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

Поново покрените Нгинк.

sudo systemctl restart nginx

Инсталација помоћу ВебУИ

Да бисте завршили инсталацију, отворите https://nms.example.com у свом омиљеном претраживачу. Видећете да су захтеви испуњени. Наведите детаље своје базе података и креирајте нови административни налог. Након инсталације, добићете поруку да потврдите инсталацију. Кликните на везу и пријавите се користећи администраторски налог. Требало би да видите да све осим " Poller" има статус " Ok".

Пратите своје уређаје користећи ЛибреНМС на Убунту 16.04

Сада кликните на везу да додате уређај. На Add Deviceинтерфејсу " " наведите име хоста као локалног хоста и оставите све како јесте. Наведите свој низ заједнице у пољу заједнице. То мора бити потпуно исти стринг који сте унели snmpd.confтоком конфигурисања СНМП-а.

Пратите своје уређаје користећи ЛибреНМС на Убунту 16.04

Када је уређај додат, можете видети детаље тако што ћете отићи на картицу " Devices". Слично, можете додати више уређаја у ЛибреНМС апликацију за „даноноћно“ праћење.

Остави коментар

Успон машина: Примене вештачке интелигенције у стварном свету

Успон машина: Примене вештачке интелигенције у стварном свету

Вештачка интелигенција није у будућности, она је овде управо у садашњости. У овом блогу Прочитајте како су апликације вештачке интелигенције утицале на различите секторе.

ДДОС напади: кратак преглед

ДДОС напади: кратак преглед

Да ли сте и ви жртва ДДОС напада и збуњени сте методама превенције? Прочитајте овај чланак да бисте решили своја питања.

Да ли сте се икада запитали како хакери зарађују новац?

Да ли сте се икада запитали како хакери зарађују новац?

Можда сте чули да хакери зарађују много новца, али да ли сте се икада запитали како зарађују толики новац? Хајде да причамо.

Гоогле-ови револуционарни изуми који ће вам олакшати живот.

Гоогле-ови револуционарни изуми који ће вам олакшати живот.

Да ли желите да видите револуционарне изуме Гугла и како су ти изуми променили живот сваког људског бића данас? Затим читајте на блогу да бисте видели Гооглеове изуме.

Фридаи Ессентиал: Шта се десило са аутомобилима које покреће вештачка интелигенција?

Фридаи Ессентиал: Шта се десило са аутомобилима које покреће вештачка интелигенција?

Концепт самовозећих аутомобила који путују на путеве уз помоћ вештачке интелигенције је сан који већ неко време имамо. Али упркос неколико обећања, њих нема нигде. Прочитајте овај блог да сазнате више…

Технолошка сингуларност: далека будућност људске цивилизације?

Технолошка сингуларност: далека будућност људске цивилизације?

Како се наука развија великом брзином, преузимајући многе наше напоре, расте и ризик да се подвргнемо необјашњивој сингуларности. Прочитајте шта би сингуларност могла да значи за нас.

Функционалности слојева референтне архитектуре великих података

Функционалности слојева референтне архитектуре великих података

Прочитајте блог да бисте на најједноставнији начин упознали различите слојеве у архитектури великих података и њихове функционалности.

Еволуција складиштења података – Инфографика

Еволуција складиштења података – Инфографика

Методе складиштења података су се развијале можда од рођења података. Овај блог покрива еволуцију складиштења података на основу инфографике.

6 невероватних предности поседовања паметних кућних уређаја у нашим животима

6 невероватних предности поседовања паметних кућних уређаја у нашим животима

У овом дигиталном свету, паметни кућни уређаји постали су кључни део живота. Ево неколико невероватних предности паметних кућних уређаја о томе како они чине наш живот вредним живљења и једноставнијим.

Ажурирање додатка за мацОС Цаталина 10.15.4 изазива више проблема него што их решава

Ажурирање додатка за мацОС Цаталина 10.15.4 изазива више проблема него што их решава

Недавно је Аппле издао мацОС Цаталина 10.15.4 додатак за исправку проблема, али изгледа да ажурирање изазива више проблема који доводе до квара Мац машина. Прочитајте овај чланак да бисте сазнали више