Zabbix là giải pháp giám sát mã nguồn mở và miễn phí cho cơ sở hạ tầng CNTT như mạng, máy chủ, máy ảo và dịch vụ đám mây. Lõi của nó được viết bằng C và Java với giao diện người dùng được viết bằng PHP. Giao diện người dùng cung cấp giao diện dựa trên web để theo dõi và giám sát các số liệu như mức sử dụng mạng, tải CPU, dung lượng đĩa, v.v. và gửi thông báo dựa trên các kích hoạt tùy chỉnh.
Zabbix hoạt động theo mô hình Máy khách/Máy chủ. Các máy khách hoặc tác nhân có sẵn cho nhiều hệ điều hành khác nhau sẽ liên hệ với máy chủ để gửi dữ liệu. Đối với các hệ thống không có tác nhân, Zabbix cung cấp tùy chọn sử dụng các giao thức giám sát chung như Simple Network Management Protocol (SNMP) hoặc Intelligent Platform Management Interface (IPMI).
Trong hướng dẫn này, bạn sẽ tìm hiểu cách cài đặt Zabbix Server và client trên máy chủ Rocky Linux 9.
[*]
Một số gói thiết yếu là bắt buộc để hướng dẫn và Zabbix Server chạy. Một số trong số này sẽ có sẵn trên máy chủ của bạn.
Tường lửa hoạt động với nhiều vùng khác nhau và vùng công cộng là vùng mặc định mà chúng ta sẽ sử dụng. Liệt kê tất cả các dịch vụ và cổng đang hoạt động trên tường lửa.
Nó sẽ hiển thị đầu ra sau.
Máy chủ Zabbix yêu cầu mở các cổng 10050 và 10051 để kết nối với đại lý.
Cho phép các cổng HTTP và HTTPS.
Kiểm tra lại trạng thái của tường lửa.
Bạn sẽ thấy đầu ra tương tự.
Tải lại tường lửa để bật thay đổi.
Kiểm tra SELinux trạng thái.
Tạo và mở tệp
Dán mã sau vào nó.
Sau khi hoàn tất, hãy lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.
Bật kho lưu trữ chính của Nginx.
Tiếp theo, chúng ta cần cấu hình kho lưu trữ PHP.
Bước đầu tiên là lấy Epel kho lưu trữ.
Tiếp theo, cài đặt kho lưu trữ Remi.
Kiểm tra PHP có sẵn streams.
Phiên bản mặc định là 8.1. Tại thời điểm viết hướng dẫn này, Zabbix tương thích với PHP 8.2. Do đó, hãy bật kho lưu trữ PHP 8.2 của Remi. Phiên bản tiếp theo của Zabbix sẽ hỗ trợ PHP 8.3 nên bạn có thể bật tính năng này nếu phiên bản Zabbix của bạn là 6.0.26 trở lên.
Bây giờ, chúng ta có thể tiến hành cài đặt Zabbix.
Lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.
Phiên bản mới nhất của Zabbix là 6.4.x nhưng chúng tôi sẽ sử dụng bản phát hành LTS (Hỗ trợ dài hạn) ổn định hơn nhiều cho môi trường sản xuất.
Cài đặt Zabbix kho lưu trữ.
Xóa toàn bộ bộ đệm RPM.
Cài đặt máy chủ, giao diện người dùng và tác nhân Zabbix. Chúng tôi sẽ sử dụng máy chủ PostgreSQL cho mục đích này và do đó chúng tôi cần gói
Cài đặt tệp RPM của kho lưu trữ PostgreSQL.
Vô hiệu hóa mô-đun PostgreSQL tích hợp sẵn.
Bây giờ, bạn có thể cài đặt PostgreSQL bằng lệnh bên dưới.
Khởi tạo cơ sở dữ liệu.
Kích hoạt PostgreSQL dịch vụ.
Khởi động dịch vụ PostgreSQL.
Kiểm tra trạng thái của PostgreSQL dịch vụ.
Tạo người dùng cơ sở dữ liệu Zabbix.
Bạn sẽ được nhắc nhập mật khẩu.
Tạo Zabbix cơ sở dữ liệu.
Nhập lược đồ ban đầu và dữ liệu cơ sở dữ liệu. Bạn sẽ lại được nhắc nhập mật khẩu.
Quá trình này có thể mất vài phút để hoàn tất.
Mở tệp
Tìm biến
Lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.
Khởi động và bật dịch vụ máy chủ và tác nhân Zabbix.
Đầu tiên, chúng ta cần mở
Thay đổi các giá trị của
Điều này là do chúng tôi đang sử dụng Nginx từ kho lưu trữ chính thức của nó, nên nó chạy dưới
Bạn cũng có thể chỉnh sửa bất kỳ giá trị nào khác liên quan đến PHP hoặc thêm bất kỳ định nghĩa tùy chỉnh nào tại đây. Sau khi hoàn tất, hãy lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.
Khởi động và bật dịch vụ PHP-FPM.
Cài đặt Snapd.
Bật và khởi động dịch vụ Snap.
Cài đặt gói lõi Snap và đảm bảo rằng phiên bản Snapd của bạn là ngày.
Tạo các liên kết cần thiết để Snapd hoạt động.
Cài đặt Certbot.
Sử dụng lệnh sau để đảm bảo lệnh Certbot có thể chạy được bằng cách tạo liên kết tượng trưng đến
Kiểm tra xem Certbot có hoạt động bình thường không.
Chạy lệnh sau để tạo SSL Chứng chỉ.
Lệnh trên sẽ tải chứng chỉ xuống thư mục
Tạo nhóm Diffie-Hellman chứng chỉ.
Kiểm tra dịch vụ lập lịch gia hạn Certbot.
Bạn sẽ tìm thấy
Thực hiện chạy thử quy trình để kiểm tra xem quá trình gia hạn SSL có hoạt động tốt không.
Nếu không thấy lỗi nào, bạn đã hoàn tất. Chứng chỉ của bạn sẽ tự động gia hạn.
Mở tệp
Chỉnh sửa mã để tệp trông như sau.
Sau khi hoàn tất, hãy lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.
Mở tệp
Thêm dòng sau vào trước dòng
Lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.
Xác minh Nginx của bạn cấu hình.
Khởi động và kích hoạt dịch vụ Nginx.
Mở URL
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22527%22%3E%3C/svg%3E
Nhấp vào nút Bước tiếp theo để hoàn tất cài đặt Zabbix. Trang tiếp theo sẽ kiểm tra các yêu cầu hệ thống và xem tất cả đã được đáp ứng chưa.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22531%22%3E%3C/svg%3E
Nếu không có vấn đề gì, hãy nhấp vào nút Bước tiếp theo để tiếp tục. Tiếp theo, bạn sẽ được yêu cầu nhập thông tin xác thực cơ sở dữ liệu của mình. Bỏ chọn tùy chọn Mã hóa TLS cơ sở dữ liệu vì chúng tôi chưa định cấu hình tùy chọn này.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22533%22%3E%3C/svg%3E
Nhấn nút Bước tiếp theo để tiếp tục. Nhập tên máy chủ Zabbix của bạn. Tuy nhiên, đây là tùy chọn, nhưng nếu được cấu hình, nó sẽ được hiển thị trên thanh menu và tiêu đề trang.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22544%22%3E%3C/svg%3E
Nhấn nút Bước tiếp theo để tiếp tục. Bạn sẽ được yêu cầu xác nhận tất cả các cài đặt.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22542%22%3E%3C/svg%3E
Nếu mọi thứ đều ổn, hãy nhấn nút Bước tiếp theo để tiếp tục. Bạn sẽ thấy thông báo cho biết quá trình cài đặt đã thành công.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22544%22%3E%3C/svg%3E
Nhấp vào nút Hoàn tất để hoàn tất quá trình. Bạn sẽ được đưa đến trang đăng nhập.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22413%22%20height=%22507%22%3E%3C/svg%3E
Tên người dùng mặc định là Admin và mật khẩu là zabbix. Nhập thông tin đăng nhập và nhấp vào nút Đăng nhập để truy cập bảng điều khiển Zabbix.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22411%22%3E%3C/svg%3E
Cho phép Zabbix kết nối với tất cả các cổng TCP.
Kích hoạt
Tạo gói chính sách SELinux tùy chỉnh bằng cách sử dụng kiểm tra nhật ký.
Cài đặt gói chính sách SELinux tùy chỉnh đã tạo.
Chạy lệnh để kiểm tra cơ sở dữ liệu lỗi.
Nó sẽ gợi ý cho bạn rất nhiều quy tắc để áp dụng.
Chạy các lệnh sau.
Áp dụng chính sách để cho phép Nginx cấp quyền truy cập vào PostgreSQL.
Áp dụng chính sách để cho phép kết nối được thực hiện với các máy chủ bên ngoài.
Đặt SELinux thành thực thi chế độ.
Tiếp theo, cài đặt kho lưu trữ Zabbix và dọn sạch bộ đệm RPM.
Cài đặt tác nhân Zabbix.
Tạo tệp PSK.
Hiển thị khóa để sao chép.
Sao chép khóa này vì chúng ta sẽ cần nó sau.
Tác nhân Zabbix lưu trữ cấu hình của nó trong Tệp
Bỏ chú thích các biến sau và cập nhật giá trị của chúng như hiển thị bên dưới.
Đặt địa chỉ IP của máy chủ Zabbix của bạn làm giá trị cho
Bạn có thể tìm ra tên máy chủ bằng lệnh sau.
Tiếp theo, hãy tìm phần cấu hình kết nối an toàn giữa máy chủ và tác nhân. Tìm biến
Tiếp theo, xác định vị trí
Tiếp theo, tìm phần
Đây là ID PSK mà bạn sẽ sử dụng để thêm máy chủ thông qua giao diện web Zabbix.
Cuối cùng, hãy xác định vị trí
Sau khi hoàn tất, hãy lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22171%22%20height=%22339%22%3E%3C/svg%3E
Thêm tên nhóm vào hộp và nhấp vào nút Áp dụng để tạo nhóm.
Để tạo máy chủ mới, hãy nhấp vào tùy chọn Máy chủ trong menu Cấu hình và nhấp vào nút Tạo máy chủ ở trên cùng bên phải.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22508%22%20height=%22398%22%3E%3C/svg%3E
Thêm tên máy chủ của nút Zabbix.
Nhập Linux by Zabbix agent vào phần Mẫu và chọn mẫu từ danh sách thả xuống.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22298%22%20height=%2272%22%3E%3C/svg%3E
Tương tự, nhập Linux Servers trong phần Groups và chọn phần đó.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22201%22%20height=%2270%22%3E%3C/svg%3E
Nhấp vào nút Add bên dưới Phần Giao diện và chọn Tác nhân.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22219%22%20height=%22173%22%3E%3C/svg%3E
Sau đó thêm địa chỉ IP của nút máy khách Zabbix. Sau khi hoàn tất, cửa sổ bật lên Máy chủ mới hoàn chỉnh sẽ trông như sau.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22444%22%3E%3C/svg%3E
Tiếp theo, chuyển sang tab Mã hóa. Chọn PSK cho cả hai tùy chọn Kết nối tới máy chủ và Kết nối từ máy chủ. Đặt PSK Identity thành
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22242%22%3E%3C/svg%3E
Sau khi hoàn tất, hãy nhấp vào nút Thêm để hoàn tất việc thêm máy chủ.
Bạn sẽ thấy máy chủ mới trong danh sách có nhãn màu xanh lá cây cho biết tác nhân đã được kết nối với máy chủ và đang hoạt động như mong đợi.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22310%22%3E%3C/svg%3E
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22543%22%20height=%22448%22%3E%3C/svg%3E
Nhấp vào tùy chọn Email (HTML) và bạn sẽ nhận được trang sau.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22730%22%3E%3C/svg%3E
Nhập thông tin chi tiết về máy chủ SMTP của bạn. Đối với hướng dẫn của chúng tôi, chúng tôi đang sử dụng dịch vụ Amazon SES. Nhấp vào nút Cập nhật sau khi hoàn tất để lưu thông tin chi tiết. Bạn sẽ được đưa trở lại trang Kiểu phương tiện. Nhấp vào nút Kiểm tra trên trang để kiểm tra cài đặt email. Nó sẽ tạo một cửa sổ bật lên. Nhập địa chỉ email của bạn và nhấp vào nút Kiểm tra để gửi email thử nghiệm.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22642%22%20height=%22364%22%3E%3C/svg%3E
Bạn sẽ thấy một thông báo thành công trên cửa sổ bật lên thông báo rằng mọi thứ đã hoạt động tốt và bạn sẽ nhận được email sau trong hộp thư đến của mình. Đóng cửa sổ bật lên bằng cách nhấp vào nút Hủy.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22331%22%20height=%22160%22%3E%3C/svg%3E
Truy cập Quản trị >> Phần Người dùng của menu và nhấp vào nút Tạo người dùng ở trên cùng bên phải để mở trang sau.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22557%22%3E%3C/svg%3E
Điền thông tin người dùng. Chọn Quản trị viên Zabbix làm nhóm người dùng. Sau khi hoàn tất, nhấp vào tab Phương tiện. Nhấp vào nút Thêm và chọn Email (HTML) làm loại.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22675%22%3E%3C/svg%3E
Nhập địa chỉ email của bạn vào trường Gửi đến và nhấp vào nút Thêm để thêm tùy chọn email. Tiếp theo, chuyển sang tab Quyền và nhấp vào nút Chọn để thêm vai trò Quản trị viên cấp cao.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22610%22%20height=%22750%22%3E%3C/svg%3E
Nhấp vào nút Thêm để hoàn tất việc thêm người dùng. Tiếp theo, bạn cần đăng xuất khỏi giao diện, đăng nhập lại với tư cách là người dùng mới và quay lại trang của người dùng. Nhấp vào người dùng Quản trị viên, chọn nhóm Đã tắt và cập nhật người dùng. Thao tác này sẽ vô hiệu hóa người dùng mặc định khỏi việc sử dụng.
Bước đầu tiên là bật trình kích hoạt thông báo cho phép Zabbix gửi thông báo đến tất cả các quản trị viên. Zabbix đã cấu hình trình kích hoạt mặc định. Chúng ta cần bật trình kích hoạt để nó hoạt động. Truy cập Cấu hình >> Hành động >> Kích hoạt hành động và nhấp vào trạng thái Đã tắt để thay đổi thành Đã bật như được hiển thị.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22272%22%3E%3C/svg%3E
Tiếp theo, hãy đăng nhập vào nút Zabbix và tạo một tệp tạm thời đủ lớn để kích hoạt cảnh báo sử dụng đĩa.
Đầu tiên, hãy xác định dung lượng trống trên máy chủ.
Điều này cho thấy chúng ta có khoảng 78 GB dung lượng trống. Tiếp theo, sử dụng lệnh
Kiểm tra lại mức sử dụng đĩa.
Zabbix sẽ kích hoạt cảnh báo về dung lượng đĩa và gửi cảnh báo qua email liên quan đến vấn đề này. Email sẽ trông như sau.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22670%22%20height=%22353%22%3E%3C/svg%3E
Bạn cũng có thể kiểm tra bảng điều khiển để biết cảnh báo sẽ xuất hiện trong vòng vài giây.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22425%22%3E%3C/svg%3E
Xóa tệp tạm thời khi bạn xong.
Bạn sẽ nhận được một email khác thông báo rằng sự cố đã được giải quyết.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22249%22%3E%3C/svg%3E
Truy cập Hành động >> Hành động đăng ký tự động và nhấp vào nút Tạo hành động ở trên cùng bên phải.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22661%22%20height=%22532%22%3E%3C/svg%3E
Khi ở trên màn hình mới, hãy đặt tên (Đăng ký tự động máy chủ Linux) cho hành động.
Nhấp vào nút Thêm bên dưới Điều kiện để thêm điều kiện và chọn Siêu dữ liệu máy chủ làm loại, chứa làm toán tử và Linux làm giá trị.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22469%22%20height=%22193%22%3E%3C/svg%3E
Nhấp vào Thêm để tiếp tục và trang tạo hành động sẽ trông như sau.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22706%22%20height=%22331%22%3E%3C/svg%3E
Nhấp vào tab Hoạt động, chọn Thêm vào nhóm máy chủ làm Hoạt động và chọn Máy chủ Linux làm Nhóm máy chủ. Nhấp vào nút Thêm để hoàn tất.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22464%22%20height=%22174%22%3E%3C/svg%3E
Nếu bạn muốn sử dụng mã hóa PSK, bạn cũng có thể cấu hình mã hóa đó. Truy cập menu Quản trị >> Chung >> Tự động đăng ký và bật cả hai tùy chọn mã hóa. Nhập ID PSK và khóa PSK được tạo trên máy chủ Zabbix. Bạn có thể sử dụng ID và khóa PSK này trên mọi nút và chúng sẽ được mã hóa bằng các giá trị này.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22423%22%3E%3C/svg%3E
Từ đây trở đi, mỗi khi bạn cài đặt và cấu hình tác nhân Zabbix trên máy chủ Linux, nó sẽ tự động được thêm vào giao diện người dùng Zabbix.
Zabbix hoạt động theo mô hình Máy khách/Máy chủ. Các máy khách hoặc tác nhân có sẵn cho nhiều hệ điều hành khác nhau sẽ liên hệ với máy chủ để gửi dữ liệu. Đối với các hệ thống không có tác nhân, Zabbix cung cấp tùy chọn sử dụng các giao thức giám sát chung như Simple Network Management Protocol (SNMP) hoặc Intelligent Platform Management Interface (IPMI).
Trong hướng dẫn này, bạn sẽ tìm hiểu cách cài đặt Zabbix Server và client trên máy chủ Rocky Linux 9.
Điều kiện tiên quyết
-
Hai máy chủ chạy Rocky Linux 9. Một máy chủ sẽ hoạt động như máy chủ và máy khách còn lại sẽ là máy khách mà chúng ta sẽ giám sát bằng máy chủ.
-
Người dùng không phải root có quyền sudo.
-
Tên miền đủ điều kiện (FQDN) nhưzabbix.example.com
trỏ đến máy chủ của bạn.
-
Một tài khoản SMTP có dịch vụ email như Amazon SES hoặc Mailgun.
-
Mọi thứ đều được cập nhật.
Mã:
$ sudo dnf update
Một số gói thiết yếu là bắt buộc để hướng dẫn và Zabbix Server chạy. Một số trong số này sẽ có sẵn trên máy chủ của bạn.
Mã:
$ sudo dnf install wget curl nano unzip yum-utils policycoreutils-python-utils -y
Bước 1 - Cấu hình Tường lửa
Bước đầu tiên là cấu hình tường lửa. Rocky Linux sử dụng Tường lửa Firewalld. Kiểm tra trạng thái của tường lửa.
Mã:
$ sudo firewall-cmd --state
running
Mã:
$ sudo firewall-cmd --permanent --list-services
Mã:
cockpit dhcpv6-client ssh
Mã:
$ sudo firewall-cmd --add-port={10051/tcp,10050/tcp} --permanent
Mã:
$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --permanent --add-service=https
Mã:
$ sudo firewall-cmd --permanent --list-all
Mã:
public target: default icmp-block-inversion: no interfaces: sources: services: cockpit dhcpv6-client http https ssh ports: 10051/tcp 10050/tcp protocols: forward: yes masquerade: no forward-ports: source-ports: icmp-blocks: rich rules:
Mã:
$ sudo firewall-cmd --reload
Bước 2 - Đặt SELinux ở chế độ cho phép
Cấu hình SELinux để hoạt động ở chế độ cho phép. Ở chế độ này, SELinux sẽ không chặn bất kỳ quy trình nào nhưng sẽ ghi lại mọi thứ vào tệp nhật ký kiểm tra. Chúng ta sẽ sử dụng điều này sau để thiết lập các quy tắc SELinux.
Mã:
$ sudo setenforce 0 && sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config
Mã:
$ sestatus
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: permissive
Mode from config file: permissive
Policy MLS status: enabled
Policy deny_unknown status: allowed
Memory protection checking: actual (secure)
Max kernel policy version: 33
Bước 3 - Cấu hình kho lưu trữ Nginx và PHP
Gói Zabbix sẽ tự động cài đặt PHP và Nginx. Nhưng nó sẽ lấy các phiên bản cũ hơn của chúng. Do đó, chúng ta cần đảm bảo quy trình cài đặt phiên bản mới nhất hiện có.Tạo và mở tệp
/etc/yum.repos.d/nginx.repo
để chỉnh sửa.
Mã:
$ sudo nano /etc/yum.repos.d/nginx.repo
Mã:
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
Bật kho lưu trữ chính của Nginx.
Mã:
$ sudo dnf config-manager --enable nginx-mainline
Bước đầu tiên là lấy Epel kho lưu trữ.
Mã:
$ sudo dnf install epel-release -y
Mã:
$ sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm
Mã:
$ dnf module list php -y
Name Stream Profiles Summary
php 8.1 common [d], devel, minimal PHP scripting language
Remi's Modular repository for Enterprise Linux 9 - x86_64
Name Stream Profiles Summary
php remi-7.4 common [d], devel, minimal PHP scripting language
php remi-8.0 common [d], devel, minimal PHP scripting language
php remi-8.1 common [d], devel, minimal PHP scripting language
php remi-8.2 common [d], devel, minimal PHP scripting language
php remi-8.3 common [d], devel, minimal PHP scripting language
Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
Mã:
$ sudo dnf module reset php -y
$ sudo dnf module enable php:remi-8.2
Bước 4 - Cài đặt Zabbix Server
Các gói Zabbix được cung cấp theo mặc định trong kho lưu trữ EPEL. Trước khi tiến hành cài đặt, chúng ta cần tắt chúng. Mở/etc/yum.repos.d/epel.repo
để chỉnh sửa và thêm dòng sau vào bên dưới [epel]
section.
Mã:
[epel]
...
excludepkgs=zabbix*
Phiên bản mới nhất của Zabbix là 6.4.x nhưng chúng tôi sẽ sử dụng bản phát hành LTS (Hỗ trợ dài hạn) ổn định hơn nhiều cho môi trường sản xuất.
Cài đặt Zabbix kho lưu trữ.
Mã:
$ sudo rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/9/x86_64/zabbix-release-6.0-4.el9.noarch.rpm
Mã:
$ sudo dnf clean all
zabbix-web-pgsql
. Nếu bạn đang sử dụng máy chủ MySQL/MariaDB/Percona thì bạn sẽ cần cài đặt gói zabbix-web-mysql
.
Mã:
$ sudo dnf install zabbix-server-pgsql zabbix-web-pgsql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent
Bước 5 - Cài đặt và cấu hình PostgreSQL
Zabbi hoạt động với PostgreSQL 13 trở lên. Rocky Linux 9 mặc định đi kèm với PostgreSQL 13. Tuy nhiên, chúng tôi sẽ sử dụng PostgreSQL 16 cho hướng dẫn của mình.Cài đặt tệp RPM của kho lưu trữ PostgreSQL.
Mã:
$ sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm
Mã:
$ sudo dnf -qy module disable postgresql
Mã:
$ sudo dnf install -y postgresql16-server postgresql16-contrib
Mã:
$ sudo /usr/pgsql-16/bin/postgresql-16-setup initdb
Mã:
$ sudo systemctl enable postgresql-16
Mã:
$ sudo systemctl start postgresql-16
Mã:
$ sudo systemctl status postgresql-16
? postgresql-16.service - PostgreSQL 16 database server Loaded: loaded (/usr/lib/systemd/system/postgresql-16.service; enabled; preset: disabled) Active: active (running) since Thu 2024-01-18 14:54:46 UTC; 10s ago Docs: https://www.postgresql.org/docs/16/static/ Process: 3407 ExecStartPre=/usr/pgsql-16/bin/postgresql-16-check-db-dir ${PGDATA} (code=exited, status=0/SUCCESS) Main PID: 3412 (postgres) Tasks: 7 (limit: 24694) Memory: 17.4M CPU: 117ms CGroup: /system.slice/postgresql-16.service ??3412 /usr/pgsql-16/bin/postgres -D /var/lib/pgsql/16/data/ ??3413 "postgres: logger " ??3414 "postgres: checkpointer " ??3415 "postgres: background writer " ??3417 "postgres: walwriter " ??3418 "postgres: autovacuum launcher " ??3419 "postgres: logical replication launcher "
Mã:
$ sudo -u postgres createuser --pwprompt zabbix
Mã:
Enter password for new role:
Enter it again:
Mã:
$ sudo -u postgres createdb -O zabbix zabbix
Mã:
$ zcat /usr/share/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix
Mở tệp
/etc/zabbix/zabbix_server.conf
để chỉnh sửa.
Mã:
$ sudo nano /etc/zabbix/zabbix_server.conf
DBPassword
, bỏ chú thích bằng cách xóa dấu thăng (#) ở phía trước và đặt giá trị của biến thành mật khẩu đã chọn ở lần trước bước.
Mã:
DBPassword=psqlpassword
Khởi động và bật dịch vụ máy chủ và tác nhân Zabbix.
Mã:
$ sudo systemctl enable zabbix-server zabbix-agent --now
Bước 6 - Cấu hình PHP
Zabbix cài đặt các tệp cấu hình PHP và Nginx mà chúng ta sẽ sử dụng. Tuy nhiên, chúng ta cần thực hiện một vài chỉnh sửa trước khi có thể sử dụng chúng.Đầu tiên, chúng ta cần mở
/etc/php-fpm.d/zabbix.conf
để chỉnh sửa.
Mã:
$ sudo nano /etc/php-fpm.d/zabbix.conf
user = apache
, và group = apache
thành nginx
như minh họa bên dưới.
Mã:
user = nginx
group = nginx
nginx
người dùng chứ không phải apache
là hệ điều hành mà bản phân phối Nginx chạy.Bạn cũng có thể chỉnh sửa bất kỳ giá trị nào khác liên quan đến PHP hoặc thêm bất kỳ định nghĩa tùy chỉnh nào tại đây. Sau khi hoàn tất, hãy lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.
Khởi động và bật dịch vụ PHP-FPM.
Mã:
$ sudo systemctl enable php-fpm --now
Bước 7 - Cài đặt SSL
Chúng ta cần cài đặt Certbot để tạo chứng chỉ SSL. Chúng ta sẽ sử dụng trình cài đặt gói Snapd cho mục đích đó. Vì Rocky Linux không đi kèm với nó, hãy cài đặt trình cài đặt Snapd. Nó yêu cầu kho lưu trữ EPEL (Gói bổ sung cho Enterprise Linux) để hoạt động. Nhưng vì chúng ta đã cài đặt nó ở bước 3, nên chúng ta có thể trực tiếp tiến hành.Cài đặt Snapd.
Mã:
$ sudo dnf install -y snapd
Mã:
$ sudo systemctl enable snapd --now
Mã:
$ sudo snap install core && sudo snap refresh core
Mã:
$ sudo ln -s /var/lib/snapd/snap /snap
$ echo 'export PATH=$PATH:/var/lib/snapd/snap/bin' | sudo tee -a /etc/profile.d/snapd.sh
Mã:
$ sudo snap install --classic certbot
/usr/bin
thư mục.
Mã:
$ sudo ln -s /snap/bin/certbot /usr/bin/certbot
Mã:
$ certbot --version
certbot 2.8.0
Mã:
$ sudo certbot certonly --nginx --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m [emailprotected] -d zabbix.example.com
/etc/letsencrypt/live/zabbix.example.com
trên máy chủ của bạn.Tạo nhóm Diffie-Hellman chứng chỉ.
Mã:
$ sudo openssl dhparam -dsaparam -out /etc/ssl/certs/dhparam.pem 4096
Mã:
$ sudo systemctl list-timers
snap.certbot.renew.service
là một trong những dịch vụ được lên lịch chạy.
Mã:
NEXT LEFT LAST PASSED UNIT ACTIVATES -------------------------------------------------------------------------------------------------------------------------------------
Sat 2024-01-20 10:04:02 UTC 1min 32s left Sat 2024-01-20 08:52:11 UTC 1h 10min ago dnf-makecache.timer dnf-makecache.service
Sun 2024-01-21 00:00:00 UTC 13h left Sat 2024-01-20 00:00:10 UTC 10h ago logrotate.timer logrotate.service
Sat 2024-01-20 21:13:00 UTC 11h left Sat 2024-01-20 08:19:11 UTC 1h 43min ago snap.certbot.renew.timer snap.certbot.renew.service
Mã:
$ sudo certbot renew --dry-run
Bước 8 - Cấu hình Nginx
Zabbix cài đặt tệp cấu hình Nginx mặc định. Chúng ta cần chỉnh sửa để thêm mã để kích hoạt chứng chỉ SSL. Chúng ta cũng cần thay đổi cổnglisten
và thêm mã để chuyển hướng liên kết HTTP sang HTTPS.Mở tệp
/etc/nginx/conf.d/zabbix.conf
để chỉnh sửa.
Mã:
$ sudo nano /etc/nginx/conf.d/zabbix.conf
Mã:
server { listen 443 ssl; listen [::]:443 ssl; http2 on; root /usr/share/zabbix; index index.php; access_log /var/log/nginx/zabbix.access.log; error_log /var/log/nginx/zabbix.error.log; ssl_certificate /etc/letsencrypt/live/zabbix.example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/zabbix.example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/zabbix.example.com/chain.pem; ssl_session_timeout 5m; ssl_session_cache shared:MozSSL:10m; ssl_session_tickets off; ssl_protocols TLSv1.2 TLSv1.3; ssl_prefer_server_ciphers on; ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384; ssl_ecdh_curve X25519:prime256v1:secp384r1:secp521r1; ssl_stapling on; ssl_stapling_verify on; ssl_dhparam /etc/ssl/certs/dhparam.pem; location = /favicon.ico { log_not_found off; } location / { try_files $uri $uri/ =404; } location /assets { access_log off; expires 10d; } location ~ /\.ht { deny all; } location ~ /(api\/|conf[^\.]|include|locale) { deny all; return 404; } location /vendor { deny all; return 404; } location ~ [^/]\.php(/|$) { fastcgi_pass unix:/run/php-fpm/zabbix.sock; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_index index.php; fastcgi_param DOCUMENT_ROOT /usr/share/zabbix; fastcgi_param SCRIPT_FILENAME /usr/share/zabbix$fastcgi_script_name; fastcgi_param PATH_TRANSLATED /usr/share/zabbix$fastcgi_script_name; include fastcgi_params; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_intercept_errors on; fastcgi_ignore_client_abort off; fastcgi_connect_timeout 60; fastcgi_send_timeout 180; fastcgi_read_timeout 180; fastcgi_buffer_size 128k; fastcgi_buffers 4 256k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; }
}
# enforce HTTPS
server { listen 80; listen [::]:80; server_name zabbix.example.com; return 301 https://$host$request_uri;
}
Mở tệp
/etc/nginx/nginx.conf
để chỉnh sửa.
Mã:
$ sudo nano /etc/nginx/nginx.conf
include /etc/nginx/conf.d/*.conf;
.
Mã:
server_names_hash_bucket_size 64;
Xác minh Nginx của bạn cấu hình.
Mã:
$ sudo nginx -t
Mã:
$ sudo systemctl enable nginx --now
Bước 9 - Truy cập Zabbix Frontend
Trước khi cài đặt Zabbix frontend, hãy đặt quyền cho/etc/zabbix/web
thư mục để Nginx có thể truy cập vào đó.
Mã:
$ sudo chown -R nginx:nginx /etc/zabbix/web
https://zabbix.example.com
trong trình duyệt của bạn và bạn sẽ nhận được màn hình sau.data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22527%22%3E%3C/svg%3E
Nhấp vào nút Bước tiếp theo để hoàn tất cài đặt Zabbix. Trang tiếp theo sẽ kiểm tra các yêu cầu hệ thống và xem tất cả đã được đáp ứng chưa.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22531%22%3E%3C/svg%3E
Nếu không có vấn đề gì, hãy nhấp vào nút Bước tiếp theo để tiếp tục. Tiếp theo, bạn sẽ được yêu cầu nhập thông tin xác thực cơ sở dữ liệu của mình. Bỏ chọn tùy chọn Mã hóa TLS cơ sở dữ liệu vì chúng tôi chưa định cấu hình tùy chọn này.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22533%22%3E%3C/svg%3E
Nhấn nút Bước tiếp theo để tiếp tục. Nhập tên máy chủ Zabbix của bạn. Tuy nhiên, đây là tùy chọn, nhưng nếu được cấu hình, nó sẽ được hiển thị trên thanh menu và tiêu đề trang.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22544%22%3E%3C/svg%3E
Nhấn nút Bước tiếp theo để tiếp tục. Bạn sẽ được yêu cầu xác nhận tất cả các cài đặt.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22542%22%3E%3C/svg%3E
Nếu mọi thứ đều ổn, hãy nhấn nút Bước tiếp theo để tiếp tục. Bạn sẽ thấy thông báo cho biết quá trình cài đặt đã thành công.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22544%22%3E%3C/svg%3E
Nhấp vào nút Hoàn tất để hoàn tất quá trình. Bạn sẽ được đưa đến trang đăng nhập.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22413%22%20height=%22507%22%3E%3C/svg%3E
Tên người dùng mặc định là Admin và mật khẩu là zabbix. Nhập thông tin đăng nhập và nhấp vào nút Đăng nhập để truy cập bảng điều khiển Zabbix.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22411%22%3E%3C/svg%3E
Bước 10 - Cấu hình SELinux
Bật daemon HTTP để kết nối tới Zabbix.
Mã:
$ sudo setsebool -P httpd_can_connect_zabbix 1
Mã:
$ sudo setsebool -P zabbix_can_network on
daemons_enable_cluster_mode
để tránh lỗi trình quản lý HA.
Mã:
$ sudo setsebool -P daemons_enable_cluster_mode on
Mã:
$ sudo grep "denied.*zabbix" /var/log/audit/audit.log | audit2allow -M zabbix_policy
******************** IMPORTANT ***********************
To make this policy package active, execute:
semodule -i zabbix_policy.pp
Mã:
$ sudo semodule -i zabbix_policy.pp
Mã:
$ sudo sealert -a /var/log/audit/audit.log
Chạy các lệnh sau.
Mã:
$ sudo ausearch -c 'php-fpm' --raw | audit2allow -M my-phpfpm
$ sudo semodule -X 300 -i my-phpfpm.pp
$ sudo ausearch -c 'zabbix_agentd' --raw | audit2allow -M my-zabbixagentd
$ sudo semodule -X 300 -i my-zabbixagentd.pp
Mã:
$ sudo setsebool -P httpd_can_network_connect_db 1
Mã:
$ sudo setsebool -P httpd_can_network_connect 1
Mã:
$ sudo setenforce 1 && sudo sed -i 's/^SELINUX=.*/SELINUX=enforcing/g' /etc/selinux/config
Bước 11 - Cài đặt Zabbix Agent trên hệ thống từ xa
Nhiệm vụ chính của Zabbix agent là thu thập thông tin từ hệ thống và gửi đến máy chủ Zabbix trung tâm để phân tích. Chúng tôi sẽ cài đặt tác nhân trên hệ thống Rocky Linux 9 nhưng bạn có thể thực hiện trên bất kỳ bản phân phối nào.Bước 11.1 - Cấu hình Tường lửa trên Hệ thống từ xa
Mở cổng 10050 để cho phép tác nhân Zabbix kết nối với máy chủ.
Mã:
$ sudo firewall-cmd --add-port=10050/tcp --permanent --zone=public
$ sudo firewall-cmd --reload
Bước 11.2 - Cài đặt Zabbix Agent
Bạn cần lặp lại bước 4 ngoại trừ câu lệnh cài đặt cuối cùng. Điều đó có nghĩa là, chỉnh sửa tệp/etc/yum.repos.d/epel.repo
và thêm dòng sau vào [epel]
section.
Mã:
[epel]
...
excludepkgs=zabbix*
Mã:
$ sudo rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/9/x86_64/zabbix-release-6.0-4.el9.noarch.rpm
$ sudo dnf clean all
Mã:
$ sudo dnf install zabbix-agent
Bước 11.3 Cấu hình tác nhân Zabbix
Zabbix hỗ trợ mã hóa dựa trên chứng chỉ nhưng vì mục đích đơn giản của hướng dẫn này, chúng tôi sẽ sử dụng keys(PSK) để bảo mật kết nối giữa máy chủ và tác nhân.Tạo tệp PSK.
Mã:
$ sudo sh -c "openssl rand -hex 32 > /etc/zabbix/zabbix_agentd.psk"
Mã:
$ cat /etc/zabbix/zabbix_agentd.psk
797c84746dfe86f71b0f207785906d2bb886be27149b296d86df6b1ec9de6bbe
Tác nhân Zabbix lưu trữ cấu hình của nó trong Tệp
/etc/zabbix/zabbix-agentd.conf
. Mở nó để chỉnh sửa.
Mã:
$ sudo nano /etc/zabbix/zabbix_agentd.conf
Mã:
Server=
ServerActive=
HostMetadata=ZabbixLinuxClient
Hostname=zabbixclient.example.com
Server
và ServerActive
biến. Biến HostMetadata
có thể là bất kỳ thứ gì bạn có thể sử dụng để xác định hệ thống. Nó cũng được sử dụng trong quá trình đăng ký tự động trên giao diện Zabbix mà chúng ta sẽ nói đến sau. Mục Hostname
đề cập đến tên máy chủ hệ thống của nút tác nhân Zabbix.Bạn có thể tìm ra tên máy chủ bằng lệnh sau.
Mã:
$ cat /etc/hostname
TLSConnect
và thay đổi giá trị của nó từ unencrypted
thành psk
như hiển thị bên dưới.
Mã:
...
### Option: TLSConnect
# How the agent should connect to server or proxy. Used for active checks.
# Only one value can be specified:
# unencrypted - connect without encryption
# psk - connect using TLS and a pre-shared key
# cert - connect using TLS and a certificate
#
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
# Default:
# TLSConnect=psk
...
TLSAccept
phần và thay đổi giá trị của nó thành psk
như minh họa bên dưới.
Mã:
...
### Option: TLSAccept
# What incoming connections to accept.
# Multiple values can be specified, separated by comma:
# unencrypted - accept connections without encryption
# psk - accept connections secured with TLS and a pre-shared key
# cert - accept connections secured with TLS and a certificate
#
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
# Default:
# TLSAccept=psk
...
TLSPSKIdentity
và thay đổi giá trị của nó thành PSK 001
như được hiển thị.
Mã:
...
### Option: TLSPSKIdentity
# Unique, case sensitive string used to identify the pre-shared key.
#
# Mandatory: no
# Default:
# TLSPSKIdentity=PSK 001
...
Cuối cùng, hãy xác định vị trí
TLSPSKFile
và thay đổi giá trị của nó thành vị trí của tệp PSK như được hiển thị.
Mã:
...
### Option: TLSPSKFile
# Full pathname of a file containing the pre-shared key.
#
# Mandatory: no
# Default:
# TLSPSKFile=/etc/zabbix/zabbix_agentd.psk
...
Bước 11.4 - Khởi động Zabbix Agent
Khởi động và kích hoạt dịch vụ Zabbix agent.
Mã:
$ sudo systemctl enable zabbix-agent --now
Bước 12 - Thêm Zabbix Client vào giao diện Zabbix để giám sát
Chúng ta có thể thêm một máy chủ mới vào các nhóm máy chủ đã xác định hiện có hoặc tạo một nhóm máy chủ mới. Các nhóm máy chủ cho phép bạn phân loại các loại nút mà bạn đang giám sát. Để tạo một nhóm máy chủ mới, hãy mở tùy chọn Nhóm máy chủ trong menu Cấu hình.data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22171%22%20height=%22339%22%3E%3C/svg%3E
Thêm tên nhóm vào hộp và nhấp vào nút Áp dụng để tạo nhóm.
Để tạo máy chủ mới, hãy nhấp vào tùy chọn Máy chủ trong menu Cấu hình và nhấp vào nút Tạo máy chủ ở trên cùng bên phải.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22508%22%20height=%22398%22%3E%3C/svg%3E
Thêm tên máy chủ của nút Zabbix.
Nhập Linux by Zabbix agent vào phần Mẫu và chọn mẫu từ danh sách thả xuống.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22298%22%20height=%2272%22%3E%3C/svg%3E
Tương tự, nhập Linux Servers trong phần Groups và chọn phần đó.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22201%22%20height=%2270%22%3E%3C/svg%3E
Nhấp vào nút Add bên dưới Phần Giao diện và chọn Tác nhân.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22219%22%20height=%22173%22%3E%3C/svg%3E
Sau đó thêm địa chỉ IP của nút máy khách Zabbix. Sau khi hoàn tất, cửa sổ bật lên Máy chủ mới hoàn chỉnh sẽ trông như sau.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22444%22%3E%3C/svg%3E
Tiếp theo, chuyển sang tab Mã hóa. Chọn PSK cho cả hai tùy chọn Kết nối tới máy chủ và Kết nối từ máy chủ. Đặt PSK Identity thành
PSK 001
là giá trị chúng ta đặt ở bước 11.3 cho biến TLSPSKIdentity
trước đó. Sau đó, đặt giá trị PSK làm khóa mà bạn đã tạo trên máy tác nhân trước đó.data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22242%22%3E%3C/svg%3E
Sau khi hoàn tất, hãy nhấp vào nút Thêm để hoàn tất việc thêm máy chủ.
Bạn sẽ thấy máy chủ mới trong danh sách có nhãn màu xanh lá cây cho biết tác nhân đã được kết nối với máy chủ và đang hoạt động như mong đợi.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22310%22%3E%3C/svg%3E
Bước 13 - Cấu hình Thông báo qua Email
Zabbix hỗ trợ nhiều loại thông báo như email, Slack, Telegram, SMS, v.v. Trong hướng dẫn này, chúng tôi sẽ cấu hình thông báo qua email. Truy cập giao diện Zabbix, nhấp vào Administration, sau đó nhấp vào Media types trong menu bên trái. Bạn sẽ thấy hai loại email, một loại dành cho email dạng văn bản thuần túy và loại còn lại dành cho email dạng HTML.data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22543%22%20height=%22448%22%3E%3C/svg%3E
Nhấp vào tùy chọn Email (HTML) và bạn sẽ nhận được trang sau.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22730%22%3E%3C/svg%3E
Nhập thông tin chi tiết về máy chủ SMTP của bạn. Đối với hướng dẫn của chúng tôi, chúng tôi đang sử dụng dịch vụ Amazon SES. Nhấp vào nút Cập nhật sau khi hoàn tất để lưu thông tin chi tiết. Bạn sẽ được đưa trở lại trang Kiểu phương tiện. Nhấp vào nút Kiểm tra trên trang để kiểm tra cài đặt email. Nó sẽ tạo một cửa sổ bật lên. Nhập địa chỉ email của bạn và nhấp vào nút Kiểm tra để gửi email thử nghiệm.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22642%22%20height=%22364%22%3E%3C/svg%3E
Bạn sẽ thấy một thông báo thành công trên cửa sổ bật lên thông báo rằng mọi thứ đã hoạt động tốt và bạn sẽ nhận được email sau trong hộp thư đến của mình. Đóng cửa sổ bật lên bằng cách nhấp vào nút Hủy.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22331%22%20height=%22160%22%3E%3C/svg%3E
Bước 14 - Tạo người dùng mới
Người dùng Zabbix mặc định không được cấu hình để nhận bất kỳ loại thông báo nào. Mặc dù chúng ta có thể làm như vậy, nhưng người dùng mặc định cũng không an toàn để sử dụng. Tùy chọn tốt nhất là tạo người dùng mới rồi vô hiệu hóa người dùng mặc định.Truy cập Quản trị >> Phần Người dùng của menu và nhấp vào nút Tạo người dùng ở trên cùng bên phải để mở trang sau.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22557%22%3E%3C/svg%3E
Điền thông tin người dùng. Chọn Quản trị viên Zabbix làm nhóm người dùng. Sau khi hoàn tất, nhấp vào tab Phương tiện. Nhấp vào nút Thêm và chọn Email (HTML) làm loại.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22675%22%3E%3C/svg%3E
Nhập địa chỉ email của bạn vào trường Gửi đến và nhấp vào nút Thêm để thêm tùy chọn email. Tiếp theo, chuyển sang tab Quyền và nhấp vào nút Chọn để thêm vai trò Quản trị viên cấp cao.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22610%22%20height=%22750%22%3E%3C/svg%3E
Nhấp vào nút Thêm để hoàn tất việc thêm người dùng. Tiếp theo, bạn cần đăng xuất khỏi giao diện, đăng nhập lại với tư cách là người dùng mới và quay lại trang của người dùng. Nhấp vào người dùng Quản trị viên, chọn nhóm Đã tắt và cập nhật người dùng. Thao tác này sẽ vô hiệu hóa người dùng mặc định khỏi việc sử dụng.
Bước 15 - Gửi cảnh báo kiểm tra
Theo mặc định, Zabbix theo dõi lượng không gian trống trên máy chủ. Nó phát hiện tất cả các lần gắn đĩa và thực hiện kiểm tra thường xuyên.Bước đầu tiên là bật trình kích hoạt thông báo cho phép Zabbix gửi thông báo đến tất cả các quản trị viên. Zabbix đã cấu hình trình kích hoạt mặc định. Chúng ta cần bật trình kích hoạt để nó hoạt động. Truy cập Cấu hình >> Hành động >> Kích hoạt hành động và nhấp vào trạng thái Đã tắt để thay đổi thành Đã bật như được hiển thị.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22272%22%3E%3C/svg%3E
Tiếp theo, hãy đăng nhập vào nút Zabbix và tạo một tệp tạm thời đủ lớn để kích hoạt cảnh báo sử dụng đĩa.
Đầu tiên, hãy xác định dung lượng trống trên máy chủ.
Mã:
$ df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 780M 51M 730M 7% /run
/dev/vda2 94G 12G 78G 13% /
/dev/vda1 260M 7.0M 253M 3% /boot/efi
tmpfs 390M 4.0K 390M 1% /run/user/1001
fallocate
để phân bổ trước hơn 80% dung lượng đĩa. Nó đủ lớn để kích hoạt cảnh báo.
Mã:
$ fallocate -l 74G /tmp/temp.img
Mã:
$ df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 780M 54M 726M 7% /run
/dev/vda2 94G 86G 3.9G 96% /
/dev/vda1 260M 7.0M 253M 3% /boot/efi
tmpfs 390M 4.0K 390M 1% /run/user/1001
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22670%22%20height=%22353%22%3E%3C/svg%3E
Bạn cũng có thể kiểm tra bảng điều khiển để biết cảnh báo sẽ xuất hiện trong vòng vài giây.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22425%22%3E%3C/svg%3E
Xóa tệp tạm thời khi bạn xong.
Mã:
$ rm -f /tmp/temp.img
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22249%22%3E%3C/svg%3E
Bước 16 - Cấu hình Đăng ký tự động cho các nút Linux
Khi bạn phải thêm nhiều nút vào máy chủ Zabbix, quá trình này có thể trở nên hơi tẻ nhạt. May mắn thay, giao diện Zabbix cho phép bạn tự động hóa quá trình bằng cách sử dụng Đăng ký tự động.Truy cập Hành động >> Hành động đăng ký tự động và nhấp vào nút Tạo hành động ở trên cùng bên phải.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22661%22%20height=%22532%22%3E%3C/svg%3E
Khi ở trên màn hình mới, hãy đặt tên (Đăng ký tự động máy chủ Linux) cho hành động.
Nhấp vào nút Thêm bên dưới Điều kiện để thêm điều kiện và chọn Siêu dữ liệu máy chủ làm loại, chứa làm toán tử và Linux làm giá trị.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22469%22%20height=%22193%22%3E%3C/svg%3E
Nhấp vào Thêm để tiếp tục và trang tạo hành động sẽ trông như sau.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22706%22%20height=%22331%22%3E%3C/svg%3E
Nhấp vào tab Hoạt động, chọn Thêm vào nhóm máy chủ làm Hoạt động và chọn Máy chủ Linux làm Nhóm máy chủ. Nhấp vào nút Thêm để hoàn tất.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22464%22%20height=%22174%22%3E%3C/svg%3E
Nếu bạn muốn sử dụng mã hóa PSK, bạn cũng có thể cấu hình mã hóa đó. Truy cập menu Quản trị >> Chung >> Tự động đăng ký và bật cả hai tùy chọn mã hóa. Nhập ID PSK và khóa PSK được tạo trên máy chủ Zabbix. Bạn có thể sử dụng ID và khóa PSK này trên mọi nút và chúng sẽ được mã hóa bằng các giá trị này.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22423%22%3E%3C/svg%3E
Từ đây trở đi, mỗi khi bạn cài đặt và cấu hình tác nhân Zabbix trên máy chủ Linux, nó sẽ tự động được thêm vào giao diện người dùng Zabbix.