Pantau Perangkat Anda Menggunakan LibreNMS di Ubuntu 16.04

LibreNMS adalah sistem pemantauan jaringan sumber terbuka berfitur lengkap. Ini digunakan SNMP untuk mendapatkan data dari perangkat yang berbeda. Berbagai perangkat didukung dalam LibreNMS seperti Cisco, Linux, FreeBSD, Juniper, Brocade, Foundry, HP dan banyak lagi. Ini mendukung beberapa mekanisme otentikasi dan mendukung otentikasi dua faktor. Ini memiliki sistem peringatan yang dapat disesuaikan yang dapat mengingatkan admin jaringan melalui email, IRC atau kendur.

Prasyarat

Untuk tutorial ini, kita akan menggunakan nms.example.com nama domain yang menunjuk ke instance Vultr. Pastikan untuk mengganti semua kemunculan nama domain contoh dengan yang sebenarnya.

Perbarui sistem basis Anda menggunakan panduan Cara Memperbarui Ubuntu 16.04 . Setelah sistem Anda diperbarui, lanjutkan untuk menginstal dependensi.

Instal Nginx dan PHP

Ujung depan LibreNMS ditulis dalam PHP, jadi kita perlu menginstal server web dan PHP. Dalam tutorial ini, kita akan menginstal Nginx bersama dengan PHP 7.2 untuk mendapatkan keamanan dan kinerja maksimum.

Instal Nginx.

sudo apt -y install nginx

Mulai Nginx dan aktifkan untuk memulai saat boot secara otomatis.

sudo systemctl start nginx
sudo systemctl enable nginx

Tambahkan dan aktifkan repositori Remi, karena repositori apt apt berisi versi PHP yang lebih lama.

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

Instal PHP versi 7.2 bersama dengan modul yang diperlukan oleh LibreNMS.

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

Buka file konfigurasi yang dimuat dalam editor.

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

Temukan baris berikut.

;cgi.fix_pathinfo=1
;date.timezone =

Batalkan komentar dan gunakan nilai-nilai ini, ganti Asia/Kolkata dengan zona waktu lokal Anda.

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

Anda juga perlu mengubah zona waktu sistem dengan menjalankan perintah berikut.

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

Mulai ulang PHP-FPM.

sudo systemctl restart php7.2-fpm

Instal MariaDB

MariaDB adalah garpu sumber terbuka MySQL. Tambahkan repositori MariaDB ke dalam sistem Anda, karena repositori Ubuntu default berisi versi yang lebih lama dari 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

Instal MariaDB. Selama instalasi, penginstal akan meminta kata sandi rootpengguna MySQL . Berikan kata sandi yang kuat.

sudo apt -y install mariadb-server

Sebelum kita mulai menggunakan MariaDB, kita perlu mengubah sedikit konfigurasi. Buka file konfigurasi.

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

Tambahkan kode berikut ke akhir file.

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

Mulai ulang MariaDB dan aktifkan untuk mulai secara otomatis saat boot.

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

Sebelum mengkonfigurasi database, Anda harus mengamankan instance MariaDB.

sudo mysql_secure_installation

Anda akan dimintai kata sandi root MariaDB saat ini, dan kemudian diminta untuk mengubah rootkata sandi. Karena kami telah menetapkan kata sandi yang kuat untuk rootpengguna selama instalasi, lewati dengan menjawab " N". Untuk semua pertanyaan lain, jawab " Y". Pertanyaan yang diajukan cukup jelas.

Masuk ke shell MySQL sebagai root.

mysql -u root -p

Berikan kata sandi untuk pengguna root MariaDB untuk login. Jalankan pertanyaan berikut untuk membuat database dan pengguna database untuk instalasi 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;

Anda dapat mengganti nama database librenms dan nama pengguna librenms sesuai pilihan Anda. Pastikan untuk mengubah StrongPassword kata sandi yang sangat kuat.

Instal LibreNMS

Terlepas dari dependensi di atas, LibreNMS membutuhkan beberapa dependensi lagi.

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

Tambahkan pengguna unprivileged baru untuk aplikasi LibreNMS.

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

LibreNMS dapat diinstal langsung dengan mengkloning repositori Github-nya.

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

Ubah kepemilikan.

sudo chown librenms:librenms -R /opt/librenms

Instal dependensi PHP.

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

LibreNMS mengandalkan SNMP untuk banyak tugas. Karena kita telah menginstal SNMP, salin file konfigurasi contoh ke lokasinya.

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

Buka file konfigurasi di editor.

sudo nano /etc/snmp/snmpd.conf

Temukan baris ini.

com2sec readonly  default         RANDOMSTRINGGOESHERE

Edit teks RANDOMSTRINGGOESHERE dan ganti string komunitas dengan string apa pun yang Anda pilih. Sebagai contoh.

com2sec readonly  default         my-org

Ingat string karena akan diperlukan nanti ketika kita menambahkan perangkat SNMP pertama.

SNMP juga memerlukan informasi tentang versi distribusi. Unduh dan pasang skrip untuk menemukan versi distribusi.

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

Mulai layanan daemon SNMP dan aktifkan untuk memulai secara otomatis saat boot.

sudo systemctl enable snmpd
sudo systemctl restart snmpd

Sekarang Anda perlu menambahkan beberapa entri crontab untuk menjalankan tugas yang dijadwalkan. Buat file pekerjaan cron baru.

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

Mulai ulang layanan daemon cron.

sudo systemctl restart cron

Pengaturan logrotate sehingga file log secara otomatis di-refresh dari waktu ke waktu.

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

Terakhir, atur kepemilikan dan izin yang sesuai.

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

Konfigurasi SSL dan Nginx VHost

Info masuk dan informasi lainnya yang dikirim melalui antarmuka web LibreNMS tidak diamankan jika koneksi tidak dienkripsi dengan SSL. Kami akan mengonfigurasi Nginx untuk menggunakan SSL yang dihasilkan dengan Let's Encrypt SSL gratis.

Tambahkan repositori Certbot.

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

Instal Certbot, yang merupakan aplikasi klien untuk Let's Encrypt CA.

sudo apt -y install certbot

Catatan : Untuk mendapatkan sertifikat dari Let's Encrypt CA, domain tempat sertifikat akan dibuat harus diarahkan ke server. Jika tidak, buat perubahan yang diperlukan pada catatan DNS domain dan tunggu hingga DNS menyebar sebelum membuat permintaan sertifikat lagi. Certbot memeriksa otoritas domain sebelum memberikan sertifikat.

Buat sertifikat SSL.

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

Sertifikat yang dihasilkan cenderung disimpan di /etc/letsencrypt/live/nms.example.com/direktori. Sertifikat SSL akan disimpan sebagai fullchain.pem dan kunci pribadi akan disimpan sebagai privkey.pem.

Mari Enkripsi sertifikat kedaluwarsa dalam 90 hari, oleh karena itu disarankan untuk mengatur perpanjangan otomatis untuk sertifikat menggunakan pekerjaan cron.

Buka file tugas cron.

sudo crontab -e

Tambahkan baris berikut di akhir file.

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

Pekerjaan cron di atas akan berjalan setiap hari Senin jam 5.30 pagi waktu setempat. Jika sertifikat jatuh tempo, maka secara otomatis akan diperpanjang.

Buat host virtual baru.

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

Mengisi file.

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

Ganti nms.example.com dengan domain Anda yang sebenarnya dalam konfigurasi di atas.

Aktifkan konfigurasi yang baru dibuat.

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

Mulai ulang Nginx.

sudo systemctl restart nginx

Instalasi menggunakan WebUI

Untuk menyelesaikan instalasi, buka https://nms.example.com di browser favorit Anda. Anda akan melihat persyaratan terpenuhi. Berikan detail basis data Anda dan buat akun administratif baru. Setelah diinstal, Anda akan mendapatkan pesan untuk memvalidasi instalasi. Klik tautan dan masuk menggunakan akun administrator. Anda harus melihat semuanya kecuali status " Poller" memiliki " Ok".

Pantau Perangkat Anda Menggunakan LibreNMS di Ubuntu 16.04

Sekarang, klik tautan untuk menambahkan perangkat. Di Add Deviceantarmuka " ", berikan nama host sebagai host lokal dan biarkan semuanya apa adanya. Berikan string komunitas Anda di bidang komunitas. Itu harus string yang sama persis seperti yang Anda berikan snmpd.confselama konfigurasi SNMP.

Pantau Perangkat Anda Menggunakan LibreNMS di Ubuntu 16.04

Setelah perangkat ditambahkan, Anda dapat melihat detailnya dengan membuka Devicestab " ". Demikian pula, Anda dapat menambahkan lebih banyak perangkat ke dalam aplikasi LibreNMS untuk pemantauan "sekitar jam".



Leave a Comment

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

6 Hal yang Sangat Menggila dari Nintendo Switch

6 Hal yang Sangat Menggila dari Nintendo Switch

Banyak dari Anda tahu Switch keluar pada Maret 2017 dan fitur-fitur barunya. Bagi yang belum tahu, kami sudah menyiapkan daftar fitur yang membuat 'Switch' menjadi 'gadget yang wajib dimiliki'.

Janji Teknologi Yang Masih Belum Ditepati

Janji Teknologi Yang Masih Belum Ditepati

Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Baca ini untuk mengetahui bagaimana Kecerdasan Buatan menjadi populer di antara perusahaan skala kecil dan bagaimana hal itu meningkatkan kemungkinan untuk membuat mereka tumbuh dan memberi keunggulan pada pesaing mereka.

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA telah berkembang cukup sulit bagi pengguna untuk dipecahkan dalam beberapa tahun terakhir. Apakah itu akan tetap efektif dalam deteksi spam dan bot di masa mendatang?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Saat Sains Berkembang dengan kecepatan tinggi, mengambil alih banyak upaya kita, risiko menundukkan diri kita pada Singularitas yang tidak dapat dijelaskan juga meningkat. Baca, apa arti singularitas bagi kita.

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Apa itu telemedicine, perawatan kesehatan jarak jauh dan dampaknya terhadap generasi mendatang? Apakah itu tempat yang bagus atau tidak dalam situasi pandemi? Baca blog untuk menemukan tampilan!

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.

Pembaruan Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Masalah Daripada Menyelesaikan

Pembaruan Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Masalah Daripada Menyelesaikan

Baru-baru ini Apple merilis macOS Catalina 10.15.4 pembaruan suplemen untuk memperbaiki masalah tetapi tampaknya pembaruan menyebabkan lebih banyak masalah yang mengarah ke bricking mesin mac. Baca artikel ini untuk mempelajari lebih lanjut