GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Mengatur Alat Pemantauan LibreNMS dengan Nginx di Ubuntu 16.04 LTS

LibreNMS adalah alat pemantauan sumber terbuka berdasarkan PHP/MYSQL/SNMP. Ini adalah sistem pemantauan jaringan unggulan yang menyediakan dukungan untuk berbagai perangkat keras jaringan dan sistem operasi termasuk, FreeBSD, Cisco, Linux, HP, dll.

Dalam tutorial ini, saya akan menunjukkan cara menginstal dan mengonfigurasi alat pemantauan sumber terbuka 'LibreNMS' menggunakan Nginx sebagai server web, MariaDB sebagai database, dan server Ubuntu 16.04 sebagai server utama kami. Kami akan memandu Anda langkah demi langkah tentang cara menginstal dan mengkonfigurasi 'LibreNMS' di server Ubuntu 16.04 Xenial Xerus.

Apa yang akan kami lakukan

  1. Instal Paket
  2. Instal Server Web Nginx
  3. Instal dan Konfigurasi PHP-FPM
  4. Instal dan Konfigurasi MariaDB
  5. Unduh dan Konfigurasikan LibreNMS
  6. Pemasang Web LibreNMS
  7. Konfigurasi akhir

Prasyarat

  • Server Ubuntu 16.04
  • Keistimewaan Root

Langkah 1 - Instal Paket

Langkah pertama yang harus kita lakukan untuk menginstal LibreNMS Monitoring Tools adalah menginstal beberapa paket yang diperlukan di server. Hubungkan ke server Anda dan perbarui repositori.

ssh [email protected]
sudo apt update

Instal semua paket yang diperlukan untuk LibreNMS dari repositori Ubuntu menggunakan perintah berikut.

apt install fping imagemagick whois mtr-tiny nmap python-mysqldb snmpd  rrdtool git snmp graphviz

Setelah penginstalan selesai, lanjutkan ke langkah berikutnya.

Langkah 2 - Instal Nginx Webserver

Dalam tutorial ini, kita akan menjalankan LibreNMS di bawah server web Nginx. Nginx adalah server web yang kuat yang tersedia di repositori Ubuntu.

Instal nginx menggunakan perintah apt dari repositori dengan cara berikut.

apt install nginx

Setelah selesai, mulai layanan dan aktifkan untuk berjalan secara otomatis setiap kali sistem boot.

systemctl start nginx
systemctl enable nginx

Server web Nginx berjalan di bawah port default 80. Kita dapat memeriksa port menggunakan perintah netstat, dan memeriksa Nginx menggunakan perintah curl untuk mendapatkan kode status HTTP, seperti yang ditunjukkan di bawah ini.

netstat -plntu | grep 80
curl -I localhost

Instalasi Nginx telah selesai.

Langkah 3 - Instal dan Konfigurasi PHP-FPM

LibreNMS adalah alat pemantauan aplikasi web berbasis PHP. Ini menawarkan dukungan untuk PHP versi 7.0 baru, dan kami akan menggunakannya untuk panduan ini.

Instal PHP, PHP-FPM, dan semua ekstensi/modul yang diperlukan untuk instalasi LibreNMS menggunakan perintah apt di bawah ini.

apt install php7.0-cli php7.0-mysql php7.0-gd php7.0-snmp php-pear php7.0-curl php7.0-fpm php7.0-mcrypt php7.0-json php-net-ipv4 php-net-ipv6

Selanjutnya, kita perlu menambahkan beberapa konfigurasi ke file php.ini. Kita perlu menentukan zona waktu default di file php.ini dan memastikan zona waktu cocok dengan zona waktu saat ini yang digunakan oleh sistem.

Periksa zona waktu saat ini yang digunakan oleh sistem dengan perintah berikut.

timedatectl

Anda akan mendapatkan hasil yang mirip dengan berikut ini.

Anda dapat melihat server menggunakan 'Europe/Paris ' zona waktu.

Sekarang buka direktori konfigurasi PHP dan edit file php.ini untuk konfigurasi cli dan fpm.

cd /etc/php/7.0/
vim fpm/php.ini
vim cli/php.ini

Batalkan komentar pada 'tanggal.waktu ' baris dan ubah nilainya dengan zona waktu sistem kami 'Eropa/Paris '.

date.time = Europe/Paris

Uncomment konfigurasi cgi di bawah, ubah nilainya menjadi 0.

cgi.fix_pathinfo = 0

Simpan dan keluar.

Semua konfigurasi selesai. Sekarang mulai layanan dan aktifkan untuk diluncurkan setiap kali sistem boot menggunakan perintah systemctl berikut.

systemctl start php7.0-fpm
systemctl enable php7.0-fpm

PHP-FPM sekarang berjalan di server ubuntu - itu berjalan di bawah file kaus kaki. Periksa dengan perintah netstat.

netstat -pl | grep php

Langkah 4 - Instal dan Konfigurasi MariaDB

Pada langkah ini, kita akan menginstal server mariadb untuk database LibreNMS. Kami akan menginstal, mengkonfigurasi dan membuat database baru dan pengguna baru untuk instalasi LibreNMS.

Instal mariadb-server dari repositori ubuntu menggunakan perintah apt di bawah ini.

apt install mariadb-server mariadb-client mariadb

Setelah selesai, mulai layanan, dan aktifkan untuk berjalan secara otomatis saat boot sistem, sesuatu yang dapat Anda lakukan menggunakan perintah systemctl berikut.

systemctl start mysql
systemctl enable mysql

Server database mariadb sekarang sedang berjalan. Selanjutnya kita perlu mengkonfigurasi kata sandi root untuk mariadb. Kita dapat menggunakan perintah 'mysql_secure_installation' di bawah ini untuk mengkonfigurasi kata sandi root.

mysql_secure_installation

Anda akan ditanya tentang kata sandi root baru - ketik kata sandi Anda dan tekan 'Enter' untuk melanjutkan.

Set root password? [Y/n] Y
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Kata sandi root untuk mariadb telah dikonfigurasi.

Selanjutnya, kita harus membuat database dan pengguna baru untuk LibreNMS. Kami akan membuat database baru bernama 'librenms', pengguna baru bernama 'librenms' dengan kata sandi 'hakase-labs123'.

Masuk ke shell mariadb menggunakan perintah berikut.

mysql -u root -p
Type the ROOT Password:

Jalankan kueri mariadb di bawah ini untuk membuat database dan pengguna baru, dan berikan semua hak istimewa pada database kepada pengguna baru.

CREATE DATABASE librenms CHARACTER SET utf8 COLLATE utf8_unicode_ci;
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'hakase-labs123';
GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost';
FLUSH PRIVILEGES;

Database dan pengguna baru untuk LibreNMS telah dibuat.

Untuk instalasi LibreNMS, kita perlu menambahkan beberapa konfigurasi ke file konfigurasi. Buka direktori '/etc/mysql/' dan edit file konfigurasi mariadb.

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

Tempelkan konfigurasi di bawah di bawah '[mysqld] bagian '.

innodb_file_per_table=1
sql-mode=""
lower_case_table_names=0

Simpan dan keluar.

Sekarang terapkan konfigurasi baru dengan memulai ulang layanan.

systemctl restart mysql

Konfigurasi database mariadb telah selesai.

Langkah 5 - Unduh dan Konfigurasikan LibreNMS

Pada langkah ini, kita akan mengkonfigurasi sistem untuk instalasi LibreNMS.

- Tambahkan Pengguna Baru dan Unduh LibreNMS

Buat pengguna sistem baru bernama 'librenms', tentukan '/opt/librenms' sebagai direktori home default untuk pengguna, dan tetapkan pengguna 'librenms' baru ke grup www-data.

Jalankan perintah berikut untuk melakukan semuanya.

useradd librenms -d /opt/librenms -M -r
usermod -a -G librenms www-data

Sekarang buka direktori '/opt/' dan unduh kode sumber LibreNMS menggunakan perintah git.

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

Selanjutnya, buat direktori baru untuk file log libreNMS dan file rrd.

mkdir -p /opt/librenms/{logs,rrd}

Ubah izin kepemilikan untuk direktori 'rrd' menjadi '775', dan ubah pemilik direktori 'librenms' menjadi pengguna dan grup 'librenms'.

chmod -R 775 /opt/librenms/rrd/
chown -R librenms:librenms /opt/librenms/

'librenms' baru telah dibuat, dan kode sumber LibreNMS telah diunduh.

- Konfigurasikan Virtualhost LibreNMS

Buka direktori konfigurasi 'nginx' dan buat file host virtual baru 'librenms' dengan vim

cd /etc/nginx/
vim sites-available/librenms

Rekatkan konfigurasi Host Virtual LibreNMS berikut di sana.

server {

    # Add your own domain name
    listen      80;
    server_name librenms.irsyadf.me;

    # LibreNMS Webroot directory
    root        /opt/librenms/html;
    index       index.php;

    # LibreNMS logs
    access_log  /opt/librenms/logs/access_log;
    error_log   /opt/librenms/logs/error_log;
   
    # Enabling Gzip compression on Nginx
    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;
    }

    # PHP-FPM handle all .php files requests
    location ~ \.php {
        include fastcgi.conf;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
    }
 
    location ~ /\.ht {
        deny all;
    }
}

Simpan dan keluar. Sekarang, aktifkan virtualhost.

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

Uji konfigurasi nginx dan pastikan tidak ada kesalahan. Kemudian restart layanan.

nginx -t
systemctl restart nginx

- Konfigurasikan Firewall UFW

Tambahkan port baru ke firewall. Tambahkan ssh, http, https, dan port baru yang digunakan oleh jenis snmpd 161 udp ke firewall ufw.

Jalankan perintah ufw berikut.

ufw allow ssh
ufw allow http
ufw allow https
ufw allow 161/udp

Jalankan firewall ufw dengan perintah ufw enable seperti yang ditunjukkan di bawah ini.

ufw enable

Ketik 'y' dan tekan 'Enter' untuk konfirmasi. Mulai dan aktifkan untuk diluncurkan setiap kali sistem boot.

Jika Anda ingin melihat status firewall, jalankan perintah 'ufw status'.

ufw status

Anda akan mendapatkan status firewall - aktif atau tidak aktif - dan daftar port dan layanan yang ditambahkan ke firewall.

Langkah 6 - Penginstal Web LibreNMS

Setelah semua langkah di atas selesai, kita perlu menginstal LibreNMS melalui browser web. Buka browser web Anda, ketik nama domain LibreNMS 'librenms.hakase-labs.co' di bilah alamat dan tekan Enter.

- Memeriksa Modul PHP

Anda akan diarahkan ke halaman install.php yang menunjukkan hasil pemeriksaan dukungan modul PHP. Pastikan semua status berwarna hijau seperti gambar di bawah ini.

Klik 'Tahap Berikutnya ' untuk melanjutkan.

- Konfigurasi Basis Data

Isi semua info database dengan db Anda sendiri.

  • Pengguna DB:librenms
  • Pass DB:hakase-labs123
  • Nama DB:librenms

Dan klik 'Tahap Berikutnya '.

- Mengimpor Database MySQL

Tunggu skrip penginstal untuk mengimpor sampel database ke database kami - jangan tutup tab browser selama proses ini.

Setelah semua db diimpor, klik 'Goto Add User '.

- Tambahkan Pengguna Admin

Di sini, ketik pengguna admin, email, dan kata sandi Anda.

Klik 'Tambahkan Pengguna '.

- Buat Konfigurasi LibreNMS

Klik 'Buat Konfigurasi '.

Dan Anda akan mendapatkan file konfigurasi yang mirip dengan yang ditunjukkan di bawah ini.

Salin skrip konfigurasi php, dan kembali ke sesi ssh Anda. Buka direktori '/opt/librenms' dan buat file 'config.php' secara manual menggunakan vim.

cd /etc/librenms/
vim config.php

Rekatkan konfigurasi di sana, dan ubah kepemilikan file menjadi librenms pengguna dan grup.

chown librenms:librenms config.php

Kembali ke browser web Anda dan klik 'Selesai Instal '.

Sekarang Anda membuka halaman terakhir dari penginstal web librenms - lihat di bawah.

Langkah 7 - Konfigurasi akhir

Setelah penginstalan melalui browser web selesai, kita perlu melakukan beberapa langkah lainnya.

- Konfigurasikan SNMP

Cadangkan file konfigurasi default dan salin contoh konfigurasi ke direktori '/etc/snmp/'.

mv /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.aseli
cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf

Edit konfigurasi baru dengan vim.

vim /etc/snmp/snmpd.conf

Ganti baris 'RANDOMSTRINGGOESHERE' dengan nama komunitas Anda sendiri 'hakaselabs', seperti yang ditunjukkan di bawah ini.

com2sec readonly  default         hakaselabs

Simpan dan keluar.

Selanjutnya, kita perlu mengunduh skrip deteksi distro. Unduh menggunakan curl, lalu buat skrip dapat dieksekusi, lalu terakhir, restart layanan snmp.

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

- Konfigurasi Crontab dan Logrotate

Buka direktori librenms dan salin contoh konfigurasi untuk Crontab dan Logrotate.

cd /opt/librenms/

Salin konfigurasinya.

cp librenms.nonroot.cron /etc/cron.d/librenms
cp misc/librenms.logrotate /etc/logrotate.d/librenms

Sekarang restart layanan cron dan muat ulang konfigurasi logrotate.

systemctl restart cron
logrotate -f /etc/logrotate.conf

- Validasi Konfigurasi

Tunggu beberapa saat hingga skrip cron berjalan di sistem. Setelah selesai, validasi dengan skrip 'validate.php'.

Buka direktori librenms dan jalankan skrip validasi.

cd /opt/librenms/
./validate.php

Jika instalasi Anda benar, Anda akan mendapatkan hasil seperti yang ditunjukkan di bawah ini.

Instalasi LibreNMS dengan Nginx Webserver di Ubuntu 16.04 selesai.


Ubuntu
  1. Cara Menginstal Nextcloud dengan Nginx di Ubuntu 18.04 LTS

  2. Cara Menginstal Alat Pemantauan Zabbix di Ubuntu 18.04 LTS

  3. Cara Menyebarkan Modsecurity dengan Nginx di Ubuntu 20.04 LTS

  1. Cara Menginstal Seafile dengan Nginx di Ubuntu 20.04 LTS

  2. Cara Menginstal Alat Pemantauan LibreNMS dengan Nginx di CentOS 7

  3. Cara Menginstal Seafile dengan Nginx di Ubuntu 18.04 LTS

  1. Cara Menginstal Alat Pemantauan Log Realtime Log.io di Ubuntu 16.04 LTS

  2. Cara Menginstal Alat Pemantau Grafana di Ubuntu 18.04 LTS

  3. Cara Menginstal Alat Pemantauan Netdata di Ubuntu 18.04 LTS