Ubuntu 16.04 पर LibreNMS का उपयोग करके अपने उपकरणों की निगरानी करें

लिब्रेएनएमएस एक फुल-फीचर्ड ओपन सोर्स नेटवर्क मॉनिटरिंग सिस्टम है। यह SNMP विभिन्न उपकरणों से डेटा प्राप्त करने के लिए उपयोग करता है। लिब्रेएनएमएस में विभिन्न प्रकार के उपकरणों का समर्थन किया जाता है जैसे कि सिस्को, लिनक्स, फ्रीबीएसडी, जुनिपर, ब्रोकेड, फाउंड्री, एचपी और कई और अधिक। यह कई प्रमाणीकरण तंत्रों का समर्थन करता है और दो-कारक प्रमाणीकरण का समर्थन करता है। इसमें एक अनुकूलन चेतावनी प्रणाली है जो नेटवर्क व्यवस्थापक को ईमेल, आईआरसी या स्लैक के माध्यम से सचेत कर सकती है।

आवश्यक शर्तें

  • एक Vultr Ubuntu 16.04 सर्वर उदाहरण।
  • एक sudo यूजर

इस ट्यूटोरियल के लिए, हम nms.example.com Vultr उदाहरण की ओर इंगित डोमेन नाम के रूप में उपयोग करेंगे। कृपया उदाहरण डोमेन नाम की सभी घटनाओं को वास्तविक के साथ बदलना सुनिश्चित करें।

गाइड का उपयोग करके अपने बेस सिस्टम को अपडेट करें Ubuntu 16.04 कैसे अपडेट करें । एक बार आपका सिस्टम अपडेट हो जाने के बाद, निर्भरताएँ स्थापित करने के लिए आगे बढ़ें।

Nginx और PHP स्थापित करें

लिबरएनएमएस का अगला छोर PHP में लिखा गया है, इस प्रकार हमें एक वेब सर्वर और पीएचपी स्थापित करने की आवश्यकता होगी। इस ट्यूटोरियल में, हम अधिकतम सुरक्षा और प्रदर्शन प्राप्त करने के लिए PHP 7.2 के साथ Nginx स्थापित करेंगे।

Nginx स्थापित करें।

sudo apt -y install nginx

Nginx प्रारंभ करें और इसे बूट पर स्वचालित रूप से प्रारंभ करने के लिए सक्षम करें।

sudo systemctl start nginx
sudo systemctl enable nginx

रेमी रिपॉजिटरी को जोड़ें और सक्षम करें, क्योंकि डिफ़ॉल्ट उपयुक्त रिपॉजिटरी में PHP का पुराना संस्करण है।

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

लिबरएनएमएस द्वारा आवश्यक मॉड्यूल के साथ PHP संस्करण 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

PHP-FPM को पुनरारंभ करें।

sudo systemctl restart php7.2-fpm

MariaDB स्थापित करें

MariaDB MySQL का एक ओपन सोर्स फोर्क है। अपने सिस्टम में MariaDB रिपॉजिटरी जोड़ें, क्योंकि डिफ़ॉल्ट Ubuntu रिपॉजिटरी में MariaDB का पुराना संस्करण है।

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

MariaDB स्थापित करें। स्थापना के दौरान, इंस्टॉलर MySQL rootउपयोगकर्ता के पासवर्ड के लिए पूछेगा । एक मजबूत पासवर्ड प्रदान करें।

sudo apt -y install mariadb-server

इससे पहले कि हम MariaDB का उपयोग करना शुरू करें, हमें कॉन्फ़िगरेशन को थोड़ा छोटा करना होगा। कॉन्फ़िगरेशन फ़ाइल खोलें।

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

फ़ाइल के अंत में निम्नलिखित कोड जोड़ें।

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

MariaDB को पुनरारंभ करें और इसे बूट समय पर स्वचालित रूप से प्रारंभ करने के लिए सक्षम करें।

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

डेटाबेस को कॉन्फ़���गर करने से पहले, आपको MariaDB उदाहरण को सुरक्षित करने की आवश्यकता होगी।

sudo mysql_secure_installation

आपको वर्तमान MariaDB रूट पासवर्ड के लिए कहा जाएगा, और फिर rootपासवर्ड बदलने के लिए कहा जाए । चूंकि हम rootस्थापना के दौरान उपयोगकर्ता के लिए पहले से ही एक मजबूत पासवर्ड सेट करते हैं , इसलिए " N" उत्तर देकर इसे छोड़ दें । अन्य सभी प्रश्नों के लिए, " Y" उत्तर दें । पूछे गए प्रश्न स्व-व्याख्यात्मक हैं।

रूट के रूप में MySQL शेल में लॉग इन करें।

mysql -u root -p

लॉग इन करने के लिए MariaDB रूट उपयोगकर्ता के लिए पासवर्ड प्रदान करें। LibreNMS स्थापना के लिए डेटाबेस और डेटाबेस उपयोगकर्ता बनाने के लिए निम्नलिखित क्वेरीज़ चलाएँ।

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 एक बहुत मजबूत पासवर्ड बदलने के लिए सुनिश्चित करें ।

LibreNMS स्थापित करें

उपरोक्त निर्भरता के अलावा, LibreNMS को कुछ और निर्भरता की आवश्यकता है।

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

LibreNMS एप्लिकेशन के लिए एक नया अनपेक्षित उपयोगकर्ता जोड़ें।

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

LibreNMS को सीधे इसके Github रिपॉजिटरी की क्लोनिंग द्वारा स्थापित किया जा सकता है।

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

स्वामित्व बदलें।

sudo chown librenms:librenms -R /opt/librenms

PHP निर्भरता स्थापित करें।

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

LibreNMS कई कार्यों के लिए SNMP पर निर्भर करता है। चूंकि हम पहले ही SNMP स्थापित कर चुके हैं, उदाहरण विन्यास फाइल को उसके स्थान पर कॉपी करें।

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

स्ट्रिंग को याद रखें क्योंकि बाद में जब हमें पहला SNMP डिवाइस जोड़ना होगा, तो इसकी आवश्यकता होगी।

एसएनएमपी को वितरण संस्करण के बारे में भी जानकारी चाहिए। वितरण संस्करण को खोजने के लिए स्क्रिप्ट डाउनलोड और इंस्टॉल करें।

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

अब आपको निर्धारित कार्यों को चलाने के लिए कुछ crontab प्रविष्टियों को जोड़ना होगा। एक नई क्रोन जॉब फ़ाइल बनाएँ।

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

SSL और Nginx VHost कॉन्फ़िगरेशन

यदि कनेक्शन SSL से एन्क्रिप्टेड नहीं है, तो LibreNMS के वेब इंटरफेस के माध्यम से भेजे गए लॉगिन और अन्य जानकारी सुरक्षित नहीं हैं। लेट्स एनक्रिप्ट फ्री एसएसएल के साथ उत्पन्न एसएसएल का उपयोग करने के लिए हम Nginx को कॉन्फ़िगर करेंगे।

Certbot रिपॉजिटरी जोड़ें।

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

सर्टिफिकेट स्थापित करें, जो कि चलो एनक्रिप्ट एनए के लिए क्लाइंट एप्लिकेशन है।

sudo apt -y install certbot

नोट : लेट्स एनक्रिप्ट एन से सर्टिफिकेट प्राप्त करने के लिए, जिस डोमेन के लिए सर्टिफिकेट जेनरेट किया जाना है, उसे सर्वर की ओर इंगित किया जाना चाहिए। यदि नहीं, तो डोमेन के DNS रिकॉर्ड्स में आवश्यक परिवर्तन करें और फिर से प्रमाणपत्र अनुरोध करने से पहले DNS के प्रचार के लिए प्रतीक्षा करें। सर्टिफिकेट सर्टिफिकेट प्रदान करने से पहले डोमेन प्राधिकरण की जांच करता है।

एसएसएल प्रमाणपत्र उत्पन्न करें।

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

Nginx को पुनरारंभ करें।

sudo systemctl restart nginx

WebUI का उपयोग करके संस्थापन

स्थापना को पूरा करने के लिए, https://nms.example.com अपने पसंदीदा ब्राउज़र पर खोलें । आप देखेंगे कि आवश्यकताएं पूरी हो गई हैं। अपना डेटाबेस विवरण प्रदान करें और एक नया प्रशासनिक खाता बनाएं। इंस्टॉल हो जाने के बाद, आपको इंस्टॉलेशन को मान्य करने के लिए एक संदेश मिलेगा। लिंक पर क्लिक करें और व्यवस्थापक खाते का उपयोग करके लॉग इन करें। आपको यह देखना चाहिए कि " Poller" को छोड़कर सब कुछ एक " Ok" स्थिति है।

Ubuntu 16.04 पर LibreNMS का उपयोग करके अपने उपकरणों की निगरानी करें

अब, डिवाइस जोड़ने के लिए लिंक पर क्लिक करें। " Add Device" इंटरफ़ेस पर, होस्टनाम को लोकलहोस्ट के रूप में प्रदान करें और जैसा भी हो सब कुछ छोड़ दें। सामुदायिक क्षेत्र में अपने समुदाय स्ट्रिंग प्रदान करें। यह सटीक वही स्ट्रिंग होना चाहिए जो आपने snmpd.confएसएनएमपी के कॉन्फ़िगरेशन के दौरान प्रदान किया है ।

Ubuntu 16.04 पर LibreNMS का उपयोग करके अपने उपकरणों की निगरानी करें

एक बार डिवाइस जुड़ जाने के बाद, आप Devicesटैब पर जाकर विवरण देख सकते हैं । इसी तरह, आप "घड़ी के आसपास" निगरानी के लिए लिब्रेएनएमएस एप्लिकेशन में अधिक डिवाइस जोड़ सकते हैं।



Leave a Comment

Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें

Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें

LiteCart PHP, jQuery और HTML में लिखा गया एक स्वतंत्र और ओपन सोर्स शॉपिंग कार्ट प्लेटफॉर्म है। यह ई-कॉमर्स सॉफ्टवेअर का उपयोग करने के लिए एक सरल, हल���का और आसान है

डेबियन पर सेटअप NFS शेयर

डेबियन पर सेटअप NFS शेयर

एनएफएस एक नेटवर्क-आधारित फाइल सिस्टम है जो कंप्यूटरों को कंप्यूटर नेटवर्क पर फाइलों तक पहुंचने की अनुमति देता है। यह मार्गदर्शिका बताती है कि आप एनएफ पर फ़ोल्डर्स को कैसे उजागर कर सकते हैं

मोटोमो एनालिटिक्स को फेडोरा 28 पर कैसे स्थापित करें

मोटोमो एनालिटिक्स को फेडोरा 28 पर कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? माटोमो (पूर्व में पिविक) एक ओपन सोर्स एनालिटिक्स प्लेटफॉर्म है, जो गूगल एनालिटिक्स का एक खुला विकल्प है। Matomo स्रोत को होस्ट किया गया है

Linux पर एक TeamTalk Server सेटअप करें

Linux पर एक TeamTalk Server सेटअप करें

टीमटॉक एक कॉन्फ्रेंसिंग प्रणाली है जो उपयोगकर्ताओं को उच्च-गुणवत्ता वाले ऑडियो / वीडियो वार्तालाप, टेक्स्ट चैट, स्थानांतरण फ़ाइलें और स्क्रीन साझा करने की अनुमति देती है। यह मैं

विंडोज सर्वर पर Garrys मॉड कैसे स्थापित करें

विंडोज सर्वर पर Garrys मॉड कैसे स्थापित करें

परिचय यह आलेख बताएगा कि विंडोज सर्वर 2012 पर गारस मोड सर्वर को कैसे डाउनलोड और इंस्टॉल किया जाए। यह गाइड गहराई में होने के लिए बनाया गया है।

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed ​​का उपयोग करता है। क्या थी?

CentOS पर FFmpeg कैसे स्थापित करें

CentOS पर FFmpeg कैसे स्थापित करें

FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा

अपने Vultr VPS को कैसे एक्सेस करें

अपने Vultr VPS को कैसे एक्सेस करें

Vultr अपने VPS को कॉन्फ़िगर करने, स्थापित करने और उपयोग करने के लिए कई अलग-अलग तरीके प्रदान करता है। क्रेडेंशियल एक्सेस करें आपके VPS के लिए डिफ़ॉल्ट एक्सेस क्रेडेंशियल ar

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ