GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Menginstal Alat Pemantauan LibreNMS dengan Nginx di CentOS 7

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

Dalam tutorial ini, kami akan menunjukkan cara menginstal dan mengkonfigurasi LibreNMS menggunakan Nginx sebagai server web dan MariaDB sebagai database. Kami akan menggunakan server CentOS 7 sebagai server utama kami.

Apa yang akan kami lakukan

  1. Instal paket yang diperlukan
  2. Instal server Web Nginx
  3. Instal dan konfigurasikan PHP-FPM
  4. Instal dan konfigurasikan MariaDB
  5. Unduh dan konfigurasikan LibreNMS
  6. Instalasi berbasis web LibreNMS
  7. Konfigurasi akhir

Prasyarat

  • Server CentOS 7
  • Hak istimewa root

Langkah 1 - Instal paket yang diperlukan

Sebelum menginstal LibreNMS di server, kita perlu menginstal beberapa paket, termasuk ImageMagick , rrdtool , SNMP , git , dan banyak lagi. Perintah berikut harus melakukan yang diperlukan:

yum -y install net-snmp ImageMagick jwhois nmap mtr rrdtool MySQL-python net-snmp-utils cronie fping git

Jika semuanya berjalan dengan baik, lanjutkan ke langkah berikutnya.

Langkah 2 - Instal server Web Nginx

Pada langkah ini, kita akan menginstal epel-repository untuk instalasi server web nginx. Repositori EPEL (Extra Packages for Enterprise Linux) adalah repositori tambahan untuk OS berbasis rpm termasuk CentOS 7.

Instal repositori EPEL menggunakan yum perintah di bawah ini.

yum -y install epel-release

Sekarang instal nginx.

yum -y install nginx

Setelah instalasi nginx, mulai layanan dan aktifkan untuk berjalan secara otomatis saat boot menggunakan systemctl berikut perintah.

systemctl start nginx
systemctl enable nginx

Jadi server web Nginx telah diinstal pada sistem dari repositori EPEL.

Langkah 3 - Instal dan konfigurasikan PHP-FPM

Sebelum kita melanjutkan, berikut adalah beberapa informasi yang layak dibagikan:

Kami akan menggunakan PHP-FPM versi 7 untuk instalasi LibreNMS. Semua paket PHP 7 untuk CentOS 7 tersedia di repositori pihak ketiga, dan kami akan menggunakan versi PHP 7 dari repositori 'webtatic'.

Jadi mari kita mulai.

Tambahkan repositori webtatic PHP 7 ke sistem menggunakan perintah rpm berikut.

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Instal PHP 7 dan semua ekstensi yang diperlukan dari repositori basah menggunakan yum.

yum -y install php70w php70w-cli php70w-gd php70w-mysql php70w-snmp php70w-pear php70w-curl php70w-common php70w-fpm php70w-mcrypt

Sekarang perbarui repositori PEAR dan instal beberapa ekstensi PEAR (PHP Extension and Application Repository) menggunakan pear perintah.

pear channel-update pear.php.net
pear install Net_IPv4-1.3.4
pear install Net_IPv6-1.2.2b2

Jadi dengan cara ini Anda dapat menginstal semua paket PHP yang diperlukan.

Selanjutnya, konfigurasikan PHP-FPM untuk instalasi LibreNMS. Kita perlu menentukan zona waktu default di file php.ini dan memastikan zona waktu sesuai dengan zona waktu saat ini yang digunakan oleh sistem. Anda dapat memeriksa zona waktu saat ini yang digunakan oleh sistem Anda melalui perintah berikut.

timedatectl

Tangkapan layar berikut menunjukkan perintah di atas beraksi:

Jadi kami menggunakan 'Eropa/Paris ' zona waktu.

Sekarang, edit file '/etc/php.ini' menggunakan vim.

vim /etc/php.ini

Selanjutnya, batalkan komentar pada baris 'date.timezone' dan beri nilai dengan zona waktu server 'Europe/Paris'.

data.timezone = Europe/Paris

Demikian pula, batalkan komentar pada baris cgi dan ubah nilainya menjadi '0 '.

cgi.fix_pathinfo=0

Itu dia. Sekarang simpan perubahan dan keluar dari editor.

Selanjutnya, kita perlu mendefinisikan bagaimana PHP-FPM berjalan pada sistem. Dalam kasus kami, PHP-FPM akan berjalan di bawah file 'sock' alih-alih port server.

Edit file 'www.conf' dengan vim untuk mengkonfigurasi PHP-FPM.

vim /etc/php-fpm.d/www.conf

Ubah baris port 'listen' menjadi sock file seperti di bawah ini.

listen = /var/run/php-fpm/php7.0-fpm.sock

Batalkan komentar pada baris 'dengarkan' untuk pemilik, grup, dan izin file kaus kaki sebagai konfigurasi di bawah ini.

listen.owner = nginx
listen.group = nginx
listen.mode = 0660

Itu dia. Sekarang simpan perubahan dan keluar dari editor.

Jadi konfigurasi PHP-FPM sudah selesai. Mulai layanan dan aktifkan untuk berjalan secara otomatis pada saat boot menggunakan perintah berikut.

systemctl start php-fpm
systemctl enable php-fpm

Sekarang PHP-FPM berjalan di bawah file kaus kaki. Anda dapat memeriksanya dengan perintah netstat.

netstat -pl | grep php

Pastikan Anda memiliki hasil dari file '/var/run/php-fpm/php7.0-fpm.sock'.

Langkah 4 - Instal dan konfigurasikan MariaDB

LibreNMS menggunakan database MySQL untuk menyimpan semua data. Untuk panduan ini, kami akan menggunakan versi database MariaDB. Ini tersedia di repositori, dan kita perlu menginstal dan menambahkan beberapa konfigurasi untuk instalasi LibreNMS, termasuk menambahkan database dan pengguna untuk LibreNMS.

Instal MariaDB menggunakan perintah yum di bawah ini.

yum -y install mariadb mariadb-server

Mulai layanan MariaDB dan aktifkan untuk memulai secara otomatis saat boot.

systemctl start mariadb
systemctl enable mariadb

Sekarang konfigurasikan sandi root MariaDB menggunakan perintah 'mysql_secure_installation' di bawah.

mysql_secure_installation

Anda akan ditanya tentang kata sandi root baru untuk database MariaDB bersama dengan beberapa pertanyaan lainnya.

Ketik 'Y' dan tekan Enter untuk mengonfirmasi.

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

Jadi MariaDB telah diinstal. Sekarang kita perlu membuat database baru dan pengguna baru untuk LibreNMS. Masuk ke baris perintah shell mysql menggunakan klien mysql dan dengan kata sandi baru Anda.

mysql -u root -p

Buat database baru bernama 'librenms ', pengguna baru 'librenms ' dengan sandi 'hakase-labs123 '.

Buat semuanya menggunakan kueri MySQL di bawah ini.

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;

Pengguna dan database baru untuk instalasi LibreNMS telah dibuat.

Sekarang Anda perlu mengedit file my.cnf untuk menambahkan konfigurasi mysql baru. Edit file '/etc/my.cnf' menggunakan vim.

vim /etc/my.cnf

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

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

Simpan dan keluar dari vim, lalu mulai ulang server mariadb.

systemctl restart mariadb

Langkah 5 - Unduh dan konfigurasikan LibreNMS

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

- Tambahkan pengguna dan unduh kode sumber LibreNMS

Buat pengguna sistem baru bernama 'librenms', lalu tentukan direktori home untuk pengguna di direktori '/opt/librenms', dan terakhir tambahkan pengguna 'librenms' ke grup 'nginx'.

useradd librenms -d /opt/librenms -M -r
usermod -a -G librenms nginx

Buka direktori '/opt/' dan unduh kode sumber LibreNMS menggunakan git clone perintah seperti di bawah ini.

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

Buat direktori baru untuk log LibreNMS dan file rrd.

mkdir -p /opt/librenms/logs/
mkdir -p /opt/librenms/rrd/
chmod 775 /opt/librenms/rrd/

Sekarang ubah kepemilikan semua file dan direktori di bawah direktori '/opt/librenms' menjadi pengguna dan grup 'librenms'.

chown -R librenms:librenms /opt/librenms/


- Konfigurasikan host virtual LibreNMS

LibreNMS adalah aplikasi berbasis Web dan kami menggunakan server web Nginx untuk menghostingnya.

Buat file host virtual baru 'librenms.conf' di bawah direktori nginx 'conf.d'.

vim /etc/nginx/conf.d/librenms.conf

Tempelkan konfigurasi di bawah.

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:/var/run/php-fpm/php7.0-fpm.sock;
    }
 
    location ~ /\.ht {
        deny all;
    }
}

Itu dia. Sekarang simpan dan keluar dari Vim.

Uji konfigurasi nginx dan pastikan tidak ada kesalahan. Kemudian restart server web.

nginx -t
systemctl restart nginx

- Konfigurasi Firewalld

Pastikan firewalld paket diinstal pada sistem Anda. Jika tidak, Anda dapat menginstal firewalld menggunakan perintah yum berikut.

yum -y install firewalld

Mulai firewall dan aktifkan untuk dijalankan saat boot menggunakan perintah systemctl berikut.

systemctl start firewalld
systemctl enable firewalld

Buka HTTP baru, HTTPS, dan port SNMP 161/udp menggunakan perintah firewall-cmd seperti yang ditunjukkan di bawah ini.

firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent
firewall-cmd --add-port=161/udp --permanent

Terapkan konfigurasi dengan memuat ulang firewalld, dan periksa semua layanan.

firewall-cmd --reload
firewall-cmd --list-all

Pastikan layanan HTTP dan HTTPS ada dalam daftar.

Langkah 6 - instalasi berbasis web LibreNMS

Buka browser web Anda dan ketik URL LibreNMS di bilah alamat.

http://librenms.hakase-labs.me/

Anda akan diarahkan ke halaman instalasi 'install.php'.

- Periksa dukungan Modul PHP

Pastikan semua modul dan ekstensi php yang diperlukan telah terinstal di sistem.

Kemudian klik 'Tahap Berikutnya' untuk melanjutkan.

- Konfigurasi Basis Data

Ketik detail database di bawah ini:

  1. Pengguna DB:'librenms '
  2. Nama DB:'librenms '
  3. Kartu DB:'hakase-labs123 '

Dan klik 'Tahap Berikutnya' untuk melanjutkan.

- Impor Database MySQL

Jangan tutup halaman instalasi karena akan menampilkan impor database. Pastikan tidak ada kesalahan.

Setelah proses selesai, klik 'Goto Add User' untuk menambahkan pengguna admin baru.

- Tambahkan Pengguna Admin

Ketikkan pengguna admin, email, dan kata sandi Anda.

Klik 'Tambah Pengguna' untuk melanjutkan penginstalan.

- Buat file konfigurasi

Klik tombol 'Generate Config', dan Anda akan melihat halaman seperti berikut.

Salin kode php yang ada di dalam kotak, dan buat file 'config.php' baru di direktori '/opt/librenms/'.

cd /opt/librenms/
vim config.php

Rekatkan di file baru kode yang baru saja Anda salin, lalu simpan dan dan keluar dari editor. Sekarang ubah izin kepemilikan file config.php menjadi pengguna dan grup 'librenms'.

chown librenms:librenms config.php

Kembali ke browser Anda dan klik tombol 'Finish Install' yang ada di bagian bawah halaman. Anda akan melihat pesan selamat datang yang mirip dengan berikut ini.

Pada tahap ini, kita selesai dengan instalasi berbasis web. Kembali ke terminal/shell dan tambahkan konfigurasi lainnya.

Langkah 7 - Konfigurasi akhir

Pada langkah ini, kami akan menambahkan beberapa konfigurasi untuk instalasi LibreNMS kami.

- Tentukan Perintah fping

Tentukan perintah 'fping' dengan mengedit file konfigurasi LibreNMS. Buka direktori '/opt/librenms/' dan edit file config.php menggunakan editor vim.

cd /opt/librenms/
vim config.php

Tambahkan baris berikut ke bagian bawah file.

$config['fping'] = "/usr/sbin/fping";

Simpan dan keluar dari editor.

- Konfigurasi SNMP

Cadangkan file snmp.conf default pada direktori '/etc/snmp/' dan salin yang baru dari direktori librenms.

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

Edit konfigurasi baru.

vim /etc/snmp/snmpd.conf

Ubah teks 'RANDOMSTRINGGOESHERE' dengan nama komunitas Anda sendiri seperti di bawah ini.

com2sec readonly  default         hakaselabs

Itu dia. Simpan dan keluar dari Vim.

Selanjutnya, unduh librenms-agent skrip untuk mendeteksi sistem operasi mana yang telah Anda tambahkan. Jika Anda menambahkan OS Linux, skrip juga akan mendeteksi distribusi Linux tertentu.

Unduh skrip menggunakan curl dan buat agar dapat dieksekusi.

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

Sekarang restart layanan SNMP menggunakan perintah systemctl berikut.

systemctl restart snmpd

- Konfigurasi Logrotate untuk LibreNMS

LibreNMS menyediakan konfigurasi untuk konfigurasi logrotate, dan itu ada di direktori '/opt/librenms/misc'.

Salin contoh konfigurasi ke direktori '/etc/logrotate.d'.

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

- Konfigurasi cronjob LibreNMS

Buka direktori 'opt/librenms' dan salin file skrip crontab 'librenms.nonroot.cron' ke direktori 'cron.d'.

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

Tunggu beberapa menit hingga skrip berjalan secara otomatis.

- Validasi Konfigurasi LibreNMS

Untuk memverifikasi instalasi, gunakan validate.php naskah. Buka direktori '/opt/librenms/' dan jalankan skripnya.

cd /opt/librenms/
./validate.php

Dengan asumsi Anda tidak menemukan kesalahan, Anda akan melihat output yang mirip dengan berikut:

Jadi ini menyelesaikan Instalasi LibreNMS dengan server web Nginx di CentOS 7.


Cent OS
  1. Cara Menginstal WordPress dengan Nginx di CentOS 7

  2. Cara Instal phpMyAdmin dengan Nginx di CentOS 7 / RHEL 7

  3. Cara Memasang Sitemagic CMS di CentOS 7 – Dengan Nginx

  1. Cara Instal phpMyAdmin dengan Nginx di CentOS 7

  2. Cara Memasang Alat Pemantau Kaktus di CentOS 8 / RHEL 8

  3. Cara Menginstal Alat Pemantauan Zabbix di CentOS 8

  1. Cara Menginstal SuiteCRM dengan Nginx di CentOS 7

  2. Cara Menginstal MediaWiki dengan Nginx di CentOS 7

  3. Cara Mengatur Alat Pemantauan LibreNMS dengan Nginx di Ubuntu 16.04 LTS