Cách cài đặt phần mềm giám sát Icinga 2 trên Ubuntu 22.04

Tác giả Security+, T.Hai 06, 2024, 09:41:43 SÁNG

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Cách cài đặt phần mềm giám sát Icinga 2 trên Ubuntu 22.04


Icinga2 là một chương trình giám sát mạng nguồn mở được viết bằng PHP và C++. Đây là một trong những công cụ phổ biến nhất dành cho quản trị viên hệ thống để giám sát tài nguyên mạng, báo cáo sự cố ngừng hoạt động và tạo dữ liệu hiệu suất cho các báo cáo. Với Icinga2, bạn có thể giám sát nhiều giao thức và tài nguyên khác nhau như SMTP, POP3, HTTP, NNTP, ping, tải CPU, mức sử dụng đĩa, bộ chuyển mạch, bộ định tuyến, v.v. Nó bao gồm hai ngăn xếp: Icinga2 và Icinga Web 2. Icinga2 được sử dụng làm máy chủ giám sát, trong khi Icinga Web 2 là giao diện web để theo dõi thêm.

Bài viết này sẽ hướng dẫn bạn cách cài đặt máy chủ giám sát Icinga2 trên Ubuntu 22.04.

1. Điều kiện tiên quyết

  • Một máy chủ chạy Ubuntu 22.04.
  • Mật khẩu root được thiết lập trên máy chủ.

2. Cài đặt Apache, MariaDB và PHP

Trước tiên, bạn cần cài đặt máy chủ web Apache, MariaDB, PHP và các tiện ích mở rộng cần thiết khác trên máy chủ của mình. Bạn có thể cài đặt tất cả chúng bằng lệnh sau:

Mã nguồn [Chọn]
apt-get install apache2 mariadb-server
Tại thời điểm viết hướng dẫn này, Icinga2 hỗ trợ PHP 7.4, vì vậy bạn sẽ cần cài đặt PHP và các tiện ích mở rộng khác trên máy chủ của mình. Đầu tiên, cài đặt tất cả các phụ thuộc cần thiết bằng lệnh sau:

Mã nguồn [Chọn]
apt install software-properties-common ca-certificates lsb-release apt-transport-https
Tiếp theo, thêm kho lưu trữ PHP bằng lệnh sau:

Mã nguồn [Chọn]
add-apt-repository ppa:ondrej/php
Tiếp theo, cài đặt PHP và các tiện ích mở rộng khác bằng lệnh sau:

Mã nguồn [Chọn]
apt install php7.4 libapache2-mod-php7.4 php7.4-curl php7.4-gd php7.4-mbstring php7.4-xml php7.4-xmlrpc php7.4-soap php7.4-intl php7.4-zip php7.4-cli php7.4-mysql php7.4-common php7.4-opcache php7.4-pgsql php7.4-gmp php7.4-imagick -y
Sau khi tất cả các gói đã được cài đặt, hãy chỉnh sửa tệp php.ini và thay đổi một số cài đặt:

Mã nguồn [Chọn]
nano /etc/php/7.4/apache2/php.ini
Thay đổi các dòng sau:

Mã nguồn [Chọn]
memory_limit = 256M
post_max_size = 64M
upload_max_filesize = 100M
max_execution_time = 300
default_charset = "UTF-8"
date.timezone = "UTC"
cgi.fix_pathinfo=0

Lưu và đóng tệp và khởi động lại dịch vụ Apache để áp dụng các thay đổi:

Mã nguồn [Chọn]
systemctl restart apache2
3. Cài đặt MariaDB an toàn

Tiếp theo, bạn cần đặt mật khẩu gốc MariaDB và bảo mật quá trình cài đặt. Bạn có thể thực hiện việc này bằng cách chạy đoạn script sau:

Mã nguồn [Chọn]
mysql_secure_installation
Trả lời tất cả các câu hỏi như hình dưới đây:

Mã nguồn [Chọn]
Enter current password for root (enter for none):
OK, successfully used password, moving on...
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

4. Cài đặt Icinga2

Theo mặc định, gói Icinga2 được bao gồm trong kho lưu trữ mặc định của Ubuntu 22.04. Bạn có thể cài đặt nó bằng lệnh sau:

Mã nguồn [Chọn]
apt-get install icinga2 monitoring-plugins -y
Sau khi tất cả các gói đã được cài đặt, hãy khởi động Icinga2 và đảm bảo nó khởi động khi hệ thống khởi động lại:

Mã nguồn [Chọn]
systemctl start icinga2

systemctl enable icinga2

Để kiểm tra trạng thái của Icinga2, hãy chạy lệnh sau:

Mã nguồn [Chọn]
systemctl status icinga2
Đầu ra mẫu:

Mã nguồn [Chọn]
? icinga2.service - Icinga host/service/network monitoring system
     Loaded: loaded (/lib/systemd/system/icinga2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2022-09-18 08:25:17 UTC; 12s ago
       Docs: https://icinga.com/docs/icinga2/latest/
    Process: 86519 ExecStartPre=/usr/lib/icinga2/prepare-dirs /usr/lib/icinga2/icinga2 (code=exited, status=0/SUCCESS)
   Main PID: 86526 (icinga2)
     Status: "Startup finished."
      Tasks: 17 (limit: 4579)
     Memory: 12.6M
        CPU: 205ms
     CGroup: /system.slice/icinga2.service
             ??86526 /usr/lib/x86_64-linux-gnu/icinga2/sbin/icinga2 --no-stack-rlimit daemon --close-stdio -e ""
             ??86546 /usr/lib/x86_64-linux-gnu/icinga2/sbin/icinga2 --no-stack-rlimit daemon --close-stdio -e ""
             ??86551 /usr/lib/x86_64-linux-gnu/icinga2/sbin/icinga2 --no-stack-rlimit daemon --close-stdio -e ""

Sep 18 08:25:17 Ubuntu2204 icinga2[86546]: [2022-09-18 08:25:17 +0000] information/ConfigItem: Instantiated 1 NotificationComponent.
Sep 18 08:25:17 Ubuntu2204 icinga2[86546]: [2022-09-18 08:25:17 +0000] information/ConfigItem: Instantiated 1 UserGroup.
Sep 18 08:25:17 Ubuntu2204 icinga2[86546]: [2022-09-18 08:25:17 +0000] information/ConfigItem: Instantiated 1 User.
Sep 18 08:25:17 Ubuntu2204 icinga2[86546]: [2022-09-18 08:25:17 +0000] information/ConfigItem: Instantiated 3 TimePeriods.
Sep 18 08:25:17 Ubuntu2204 icinga2[86546]: [2022-09-18 08:25:17 +0000] information/ConfigItem: Instantiated 3 ServiceGroups.
Sep 18 08:25:17 Ubuntu2204 icinga2[86546]: [2022-09-18 08:25:17 +0000] information/ConfigItem: Instantiated 1 ScheduledDowntime.
Sep 18 08:25:17 Ubuntu2204 icinga2[86546]: [2022-09-18 08:25:17 +0000] information/ConfigItem: Instantiated 12 Services.
Sep 18 08:25:17 Ubuntu2204 icinga2[86546]: [2022-09-18 08:25:17 +0000] information/ScriptGlobal: Dumping variables to file '/var/cac>
Sep 18 08:25:17 Ubuntu2204 icinga2[86526]: [2022-09-18 08:25:17 +0000] information/cli: Closing console log.
Sep 18 08:25:17 Ubuntu2204 systemd[1]: Started Icinga host/service/network monitoring system.

Tiếp theo, bạn cần cài đặt plugin MySQL cho Icinga2. Bạn có thể cài đặt nó bằng lệnh sau:

Mã nguồn [Chọn]
apt-get install icinga2-ido-mysql -y
Trong quá trình cài đặt, bạn sẽ được hỏi có muốn bật tính năng ido-mysql của Icinga 2 hay không:


Chọn Có và nhấn Enter. Bạn sẽ được hỏi có muốn tạo cơ sở dữ liệu cho Icinga2 hay không.


Chọn Có và nhấn Enter. Bạn sẽ được nhắc đặt mật khẩu cho ứng dụng Icinga2:


Nhập mật khẩu của bạn và nhấn Enter để hoàn tất cài đặt.

Điều này sẽ tạo cơ sở dữ liệu và người dùng có tên icinga2 và đặt mật khẩu.

Lưu ý: Vui lòng ghi nhớ cơ sở dữ liệu, người dùng và mật khẩu icinga2. Bạn sẽ cần chúng trong quá trình cài đặt dựa trên web.

Tiếp theo, kích hoạt mô-đun ido-mysql bằng lệnh sau:

Mã nguồn [Chọn]
icinga2 feature enable ido-mysql
Cuối cùng, khởi động lại dịch vụ Icinga2 để áp dụng các thay đổi:

Mã nguồn [Chọn]
systemctl restart icinga2
5. Cài đặt và cấu hình Icinga Web 2

Icinga Web 2 cung cấp giao diện web để giám sát Icinga2. Bạn có thể cài đặt nó bằng lệnh sau:

Mã nguồn [Chọn]
apt-get install icingaweb2 icingacli -y
Sau khi quá trình cài đặt hoàn tất, bạn sẽ cần tạo cơ sở dữ liệu và người dùng cho Icinga Web 2.

Đầu tiên, đăng nhập vào MariaDB bằng lệnh sau:

Mã nguồn [Chọn]
mysql -u root -p
Khi bạn đã đăng nhập, hãy tạo cơ sở dữ liệu và người dùng bằng lệnh sau:

Mã nguồn [Chọn]
MariaDB [(none)]> CREATE DATABASE icingaweb2;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON icingaweb2.* TO 'icingaweb2'@'localhost' IDENTIFIED BY 'password';

Tiếp theo, xóa quyền và thoát MariaDB bằng lệnh sau:

Mã nguồn [Chọn]
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Tiếp theo, tạo mã thông báo bí mật bằng lệnh sau:

Mã nguồn [Chọn]
icingacli setup token create
Bạn sẽ nhận được kết quả đầu ra sau:

Mã nguồn [Chọn]
The newly generated setup token is: 979eddaaa6ab6b89
6. Truy cập vào giao diện web Icinga2

Bây giờ hãy mở trình duyệt web của bạn và gọi trình hướng dẫn cài đặt web Icinga2 tại URL http://your-server-ip/icingaweb2/setup. Bạn sẽ thấy trang sau:


Nhập mã thông báo bí mật của bạn và nhấp vào nút Tiếp theo. Bạn sẽ thấy trang sau:


Chọn Giám sát và nhấp vào nút Tiếp theo. Bạn sẽ thấy trang sau:


Đảm bảo tất cả các tiện ích mở rộng PHP đã được cài đặt, sau đó nhấp vào nút Tiếp theo. Bạn sẽ thấy trang sau:


Chọn loại xác thực của bạn và nhấp vào nút Tiếp theo. Bạn sẽ thấy trang sau:


Nhập thông tin đăng nhập của bạn cho cơ sở dữ liệu web Icinga2 và nhấp vào nút Tiếp theo. Bạn sẽ thấy trang sau:


Chọn tên phụ trợ của bạn và nhấp vào nút Tiếp theo. Bạn sẽ thấy trang sau:


Nhập người dùng quản trị của bạn và nhấp vào nút " Tiếp theo". Bạn sẽ thấy trang sau:


Bấm vào nút Tiếp theo. Bạn sẽ thấy trang sau:


Kiểm tra tất cả các cài đặt và nhấp vào nút Tiếp theo. Bạn sẽ được chuyển hướng đến trang sau:


Bấm vào nút Tiếp theo. Bạn sẽ thấy trang sau:


Nhập thông tin đăng nhập của bạn cho cơ sở dữ liệu Icinga IDO và nhấp vào nút Tiếp theo. Bạn sẽ thấy trang sau:


Chọn các tùy chọn ưa thích của bạn và nhấp vào nút Tiếp theo. Bạn sẽ thấy trang sau:


Chọn bảo mật giám sát của bạn và nhấp vào nút Tiếp theo. Bạn sẽ thấy trang sau:


Xem lại cấu hình của bạn và nhấp vào nút Kết thúc. Bạn sẽ thấy trang sau:


Nhấp vào nút Đăng nhập vào Icinga Web 2. Bạn sẽ thấy trang sau:


Nhập tên người dùng và mật khẩu quản trị viên của bạn và nhấp vào nút Đăng nhập. Bạn sẽ thấy trang sau:


Chúc mừng! Bạn đã cài đặt và định cấu hình thành công Máy chủ giám sát Icinga2 trên Ubuntu 22.04. Bạn có thể triển khai Icinga2 trong cơ sở hạ tầng của mình, thêm tất cả các máy chủ giám sát và giám sát chúng thông qua bảng điều khiển Icinga Web 2.