Kiến Thức Linux Tutorial

Cài đặt Nền tảng Giám sát Mạng Observium trên Debian 9

Trong hướng dẫn này, chúng tôi sẽ hướng dẫn bạn cách cài đặt và cấu hình phiên bản mới nhất của phần mềm giám sát mạng Observium (phiên bản Community) trên hệ điều hành Debian 9, nhằm giám sát các thiết bị mạng tại đơn vị của bạn.

Observium là phần mềm giám sát mạng mã nguồn mở, miễn phí và mạnh mẽ, có khả năng tự động phát hiện thiết bị, được viết chủ yếu bằng ngôn ngữ PHP, triển khai trên hệ thống Linux sử dụng máy chủ web Apache/Nginx, PHP và hệ quản trị cơ sở dữ liệu MySQL/MariaDB (gọi là LAMP hoặc LEMP stack). Observium sử dụng giao thức SNMP để truy vấn trạng thái của máy chủ, bộ định tuyến, switch và các thiết bị mạng khác, hỗ trợ đa dạng phần cứng và hệ điều hành như Linux, Windows, Cisco, HP, FreeBSD, Juniper, Brocade, Dell và nhiều nhà cung cấp thiết bị mạng khác. Việc quản lý ứng dụng rất đơn giản qua giao diện web trực quan.


Yêu cầu hệ thống

  • Debian 9 cài đặt tối thiểu trên máy chủ vật lý hoặc VPS
  • Quyền sudo hoặc quyền root
  • IP tĩnh đã cấu hình cho một trong các card mạng
  • Một tên miền riêng hoặc công cộng có bản ghi DNS hợp lệ
  • Một máy chủ email hoạt động nếu muốn dùng chức năng gửi thông báo qua email

Cài đặt Apache, PHP và MySQL

  1. Cập nhật hệ thống:
apt update
apt upgrade
  1. Cài đặt tiện ích:
apt install wget bash-completion curl
  1. Đặt tên máy chủ:
hostnamectl set-hostname www.mynet.com
  1. Khởi động lại máy chủ:
systemctl reboot
  1. Cài Apache, PHP và các module:
apt install apache2 libapache2-mod-php7.0 php7.0 php7.0-gd php7.0-opcache php7.0-json php7.0-mbstring php7.0-mcrypt php-pear php7.0-cli php7.0-snmp
  1. Cài đặt tiện ích hỗ trợ giám sát:
apt install fping rrdtool graphviz ipmitool snmp whois mtr-tiny imagemagick python-mysqldb
  1. Mở cổng HTTP/HTTPS trên firewall (UFW hoặc iptables):
ufw allow WWW
ufw allow 443/tcp

Cấu hình Apache và PHP

  • Kích hoạt các mô-đun cần thiết:
a2enmod rewrite
systemctl restart apache2
  • Cấu hình hỗ trợ HTTPS:
a2enmod ssl
a2ensite default-ssl.conf
  • Thêm cấu hình rewrite vào default và default-ssl.conf:
<Directory /var/www/html>
  Options +FollowSymlinks
  AllowOverride All
  Require all granted
</Directory>
  • Chỉnh sửa php.ini:
cp /etc/php/7.0/apache2/php.ini{,.backup}
nano /etc/php/7.0/apache2/php.ini
  • Sửa các dòng:
file_uploads = On
default_charset = UTF-8
error_reporting = E_ALL & ~E_NOTICE
date.timezone = Asia/Ho_Chi_Minh
  • Thêm cấu hình OPCache:
[opcache]
opcache.enable=1
opcache.enable_cli=1
...
  • Khởi động lại Apache:
systemctl restart apache2

Cài đặt và cấu hình MariaDB

  1. Cài đặt:
apt install mariadb-server php7.0-mysql mariadb-client
  1. Bảo mật MariaDB:
mysql_secure_installation
  1. Tạo cơ sở dữ liệu và người dùng cho Observium:
CREATE DATABASE observium_db;
GRANT ALL PRIVILEGES ON observium_db.* TO 'observium_user'@'localhost' IDENTIFIED BY 'password1234';
FLUSH PRIVILEGES;
  1. Khởi động lại dịch vụ:
systemctl restart mysql apache2

Cài đặt Observium

  1. Tải và giải nén:
wget http://www.observium.org/observium-community-latest.tar.gz
tar xfz observium-community-latest.tar.gz
  1. Sao chép tập tin đến thư mục web:
cp -rf observium/* /var/www/
cp observium/.scrutinizer.yml /var/www/
mkdir /var/www/logs /var/www/rrd
  1. Phân quyền thư mục:
chown -R www-data:www-data /var/www/
  1. Tạo file cấu hình từ mẫu:
cd /var/www/
cp config.php.default config.php
  1. Chỉnh sửa thông tin DB trong config.php:
$config['db_user'] = 'observium_user';
$config['db_pass'] = 'password1234';
$config['db_name'] = 'observium_db';

Khởi tạo cơ sở dữ liệu và tạo tài khoản admin:

 

/var/www/discovery.php -u
/var/www/adduser.php observium_admin strongpass123 10

 

Truy cập Observium qua HTTPS:

 

https://yourdomain.tld

Cấu hình thêm

  • Chuyển hướng tất cả truy cập HTTP sang HTTPS bằng .htaccess:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R,L]
Options -Indexes

Tùy chỉnh PHP trong .htaccess:

php_value session.use_trans_sid 0
php_value register_globals 1

Tự động phát hiện và cập nhật thiết bị

Thêm cronjob để cập nhật định kỳ:

crontab -u www-data -e

Nội dung:

33 */6 * * * /var/www/discovery.php -h all >> /dev/null 2>&1
*/5 * * * * /var/www/discovery.php -h new >> /dev/null 2>&1
*/5 * * * * /var/www/poller-wrapper.py 4 >> /dev/null 2>&1

Hoàn tất

Bạn đã cài đặt thành công Observium trên Debian 9. Lưu ý: vì bạn đang dùng chứng chỉ tự ký của Apache nên trình duyệt sẽ cảnh báo bảo mật khi truy cập trang web. Để tránh cảnh báo này, bạn nên mua chứng chỉ từ tổ chức cấp chứng chỉ uy tín hoặc dùng chứng chỉ miễn phí từ Let’s Encrypt.

Add Comment

Click here to post a comment