نحوه نصب Zabbix در CentOS 8

zabbix
zabbix

مانیتورینگ Zabbix یک ابزار نظارتی Open Source برای خدمات شبکه، سخت افزار شبکه، سرورها، برنامه‌ها و سرویس هاست که برای ردیابی و نظارت بر وضعیت سیستم و سرورها طراحی شده است. Zabbix برای ذخیره داده ها از بسیاری از سیستم های پایگاه داده از جمله MySQL ، PostgreSQL ، SQLite و IBM DB2 پشتیبانی می کند. backend زبیکس به زبان C نوشته شده است ، و frontend به زبان PHP نوشته شده است.

در این آموزش گام به گام نصب و پیکربندی Zabbix 4.0 LTS در CentOS 8 را به شما نشان خواهیم داد. این راهنما مباحثی از جمله نصب و پیکربندی LAMP Stack را برای نصب Zabbix و نحوه تغییر رمز پیش فرض برای مدیر UI وب ، پوشش می دهد.

پیش نیازها

  • سرور CentOS 8
  • دسترسی root
  • دانش پایه ای در مورد دستورات لینوکس CentOS

مرحله اول: نصب Apache

برای این راهنما، ما قصد داریم Apache / httpd را برای سرور وب خود استفاده کنیم که با استفاده از دستور dnf می توانید بسته Apache / httpd را نصب کنید.

dnf install httpd

پس از اتمام نصب، دستورات زیر را وارد کنید.

 systemctl enable httpd
 systemctl start httpd

اکنون سرویس httpd را با استفاده از دستور netstat بررسی کنید و مطمئن شوید که پورت HTTP '80' در حالت "LISTEN" قرار دارد.

netstat -plntu

در نتیجه، سرویس httpd روی پورت پیش فرض HTTP '80' روی سرور CentOS 8 کار می کند.

مرحله دوم: نصب PHP

بعد از نصب وب سرور Apache / httpd ، قصد داریم بسته های PHP و افزونه های لازم برای نصب Zabbix را نصب کنیم.
بسته های PHP را با استفاده از دستور زیر نصب کنید.

dnf install php-cli php-common php-devel php-pear php-gd php-mbstring php-mysqlnd php-xml php-bcmath

پس از اتمام نصب، پیکربندی PHP را با استفاده از ویرایش سند etc/php.ini تنظیم کنید.

vim /etc/php.ini

مقادیر پیکربندی را مطابق شکل زیر تغییر دهید.

date.timezone = Asia/Tehran
max_execution_time = 600
max_input_time = 600
memory_limit = 256M
post_max_size = 32M
upload_max_filesize = 16M

فایل را ذخیره کنید و خارج شوید.
اکنون سرویس Apache / httpd را مجدداً راه اندازی کنید.

systemctl restart httpd

نصب و پیکربندی PHP در سرور CentOS 8 به پایان رسیده است.

مرحله سوم: نصب و پیکربندی MariaDB

به طور پیش فرض، Zabbix بسیاری از پایگاههای داده از جمله MySQL ، PostgreSQL ، SQLite و Oracle را پشتیبانی می کند. برای این راهنما از MariaDB به عنوان پایگاه داده برای نصب Zabbix استفاده خواهیم کرد.
سرور mariadb را با استفاده از دستور dnf نصب کنید.

dnf install mariadb-server

پس از اتمام نصب، دستورات زیر را وارد کنید.

systemctl enable mariadb
systemctl start mariadb

در مرحله بعد می خواهیم کلمه عبور root را پیکربندی کنیم. دستور "mysql_secure_installation" را برای پیکربندی رمز عبور اجرا کنید.

mysql_secure_installation

رمزعبور کاربر root دیتابیس را تایپ کرده و Enter را بزنید.

Set a root password? [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

در مرحله بعد، قصد داریم برای نصب Zabbix یک پایگاه داده و کاربر جدید با نام 'zabbix' با گذرواژه 'ZquJuwC9rNmv9fTu' ایجاد کنیم.
با استفاده از دستور mysql در زیر وارد پوسته MariaDB / mysql شوید.

mysql -u root -p
TYPE YOUR ROOT PASSWORD:

و دستورات زیر را در زیر پوسته MariaDB اجرا کنید.

create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@'localhost' identified by 'ZquJuwC9rNmv9fTu'; 
grant all privileges on zabbix.* to zabbix@'%' identified by 'ZquJuwC9rNmv9fTu'; 
flush privileges;

و در نتیجه ، بانک اطلاعاتی جدید و کاربر برای نصب Zabbix ایجاد شده است.

مرحله چهارم: نصب Zabbix 4.0 LTS

در این مرحله قصد داریم Zabbix 4.0 LTS را نصب کنیم. نسخه Zabbix LTS را از مخزن رسمی Zabbix نصب خواهیم کرد.
در مرحله اول باید با استفاده از دستور rpm در زیر مخزن Zabbix 4.0 LTS را به سیستم اضافه کنیم.

rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/8/x86_64/zabbix-release-4.0-2.el8.noarch.rpm


dnf clean all
dnf repolist

مخزن Zabbix به سیستم CentOS 8 اضافه شده است.

حالا دستور dnf را در زیر اجرا کنید تا Zabbix Server و Agent را نصب کنید.

dnf -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent

صبر کنید تا نصب Zabbix تمام شود.
به آدرس 'usr/share/doc/zabbix-server-mysql' بروید و دستور زیر را اجرا نمایید.

cd /usr/share/doc/zabbix-server-mysql
gunzip create.sql.gz

اکنون با استفاده از دستور MySQL ، پایگاه داده را به پایگاه داده "zabbix" وارد کنید.

mysql -u root -p zabbix < create.sql

پیکربندی سرور Zabbix و Zabbix-agent

سرور Zabbix فرایند اصلی سیستم نرم افزاری Zabbix است. ما zabbix-server را با ویرایش فایل '/etc/zabbix/zabbix_server.conf' پیکربندی می کنیم.
با استفاده از ویرایشگر vim پرونده پیکربندی 'etc/zabbix/zabbix_server.conf' را ویرایش کنید.

vim /etc/zabbix/zabbix_server.conf

در فایل پیکربندی مقادیر زیر را تغییر دهید:

DBHost=localhost
DBPassword=ZquJuwC9rNmv9fTu

فایل را ذخیره کنید و خارج شوید.

پس از آن سرور zabbix را به بوت سیستم اضافه کنید.

systemctl enable zabbix-server

پیکربندی سرور zabbix به پایان رسید.

پیکربندی zabbix-agent

باید zabbix-agent بر روی کلیه دستگاههایی که مورد نظارت قرار می گیرند نصب شود.

پیکربندی zabbix-agent را با استفاده از ویرایش فایل etc/zabbix/zabbix_agentd.conf انجام می‌دهید.

vim /etc/zabbix/zabbix_agentd.conf

اکنون مقدار "Server" و "ServerActive" را با آدرس IP server-zabbix مانند آدرس زیر تغییر دهید.

Server=185.235.40.82
ServerActive=185.235.40.82

فایل را ذخیره کنید و خارج شوید.
اکنون سرویس zabbix-agent را به بوت سیستم اضافه کنید.

systemctl enable zabbix-agent

پیکربندی zabbix-agent به پایان رسید.

مرحله پنجم: پیکربندی Firewalld

برای پیکربندی فایروال، ما می خواهیم سرویس‌های جدیدی از جمله HTTP ، HTTPS و پورت مورد استفاد zabbix-server و zabbix-agent را اضافه کنیم.

درگاههای HTTP ، HTTPS و پورت های '10050-10051' را با استفاده از دستورات زیر به firewalld اضافه کنید.

firewall-cmd --add-service={http,https} --permanent
firewall-cmd --add-port={10051/tcp,10050/tcp} --permanent

پس از آن ، فایروال را مجدد بارگذاری کنید و کلیه سرویس‌ و پورت های موجود را روی آن بررسی کنید.

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

در نتیجه ، HTTP ، HTTPS و Zabbix Ports '10050-10051' به فایروال اضافه شده است.

مرحله ششم: پیکربندی SELinux

اگر Zabbix را در CentOS 8 با SELinux که روی آن فعال است اجرا می کنید، باید تمام دستورات این بخش را انجام دهید. اگر SELinux را غیرفعال کرده اید، این مرحله را انجام ندهید.
برنامه های SELinux را با استفاده از دستور dnf در زیر نصب کنید.

dnf install policycoreutils checkpolicy setroubleshoot-server

پس از اتمام نصب، یک دایرکتوری جدید به نام '' zabbix-selinux " ایجاد کنید و به داخل آن بروید.

mkdir -p ~/zabbix-selinux
cd ~/zabbix-selinux/

اکنون با استفاده از ویرایشگر vim یک فایل جدید با نام 'zabbix_server_add.te' ایجاد کنید.

vim zabbix_server_add.te

مقادیر زیر را در فایل paste نمایید:

module zabbix_server_add 1.1;
require {
        type zabbix_var_run_t;
        type tmp_t;
        type zabbix_t;
        class sock_file { create unlink write };
        class unix_stream_socket connectto;
        class process setrlimit;
        class capability dac_override;
}
#============= zabbix_t ==============
#!!!! This avc is allowed in the current policyallow zabbix_t self:process setrlimit;
#!!!! This avc is allowed in the current policy
allow zabbix_t self:unix_stream_socket connectto;
#!!!! This avc is allowed in the current policy
allow zabbix_t tmp_t:sock_file { create unlink write };
#!!!! This avc is allowed in the current policy
allow zabbix_t zabbix_var_run_t:sock_file { create unlink write };
#!!!! This avc is allowed in the current policy
allow zabbix_t self:capability dac_override;

فایل را ذخیره کنید و خارج شوید.
اکنون با استفاده از دستور checkmodule فایل "zabbix_server_add.te" را به ماژول پالیسی تبدیل کنید.

checkmodule -M -m -o zabbix_server_add.mod zabbix_server_add.te

فایل را ذخیره کنید و خارج شوید.

اکنون ماژول پالیسی 'zabbix_server_add.mod' را با استفاده از دستور semodule_package کامپایل کنید.

semodule_package -m zabbix_server_add.mod -o zabbix_server_add.pp

سپس ماژول پالیسی کامپایل شده 'zabbix_server_add.pp' را روی سیستم بارگذاری کنید.

semodule -i zabbix_server_add.pp

سپس دستور setbool را اجرا کنید.

setsebool -P httpd_can_network_connect 1
setsebool -P httpd_can_connect_zabbix 1
setsebool zabbix_can_network on

پیکربندی SELinux برای Zabbix به پایان رسید.

مرحله هفتم: تنظیم اولیه Zabbix

ابتدا سرور zabbix را با استفاده از دستورات زیر راه اندازی کنید.

systemctl start zabbix-server
systemctl status zabbix-server

اکنون سرویس zabbix-agent را راه اندازی کنید.

systemctl start zabbix-agent
systemctl status zabbix-agent

و سپس سرویس httpd را مجدداً راه اندازی کنید.

systemctl restart httpd

در مرحله بعد مرورگر وب خود را باز کرده و آدرس IP سرور را به شرح زیر تایپ کنید.

http://185.235.40.82/zabbix/

و پیام خوش آمد گویی را از Zabbix دریافت خواهید کرد.

zabbix 4.0
zabbix 4.0
zabbix 4.0
zabbix 4.0
zabbix 4.0
zabbix 4.0
zabbix 4.0
zabbix 4.0
zabbix 4.0
zabbix 4.0

خب نصب zabbix به اتمام رسید.

مرحله هشتم: ورود به پنل کاربری zabbix

از نام کاربری و رمزعبور پیش‌فرض Zabbix برای ورود به پنل کاربری زبیکس به آدرس http://server_ip_or_name/zabbix استفاده کنید:


نام کاربری: Admin
رمز عبور: zabbix

اگر این مطلب را دوست داشتید آن را ❤️ کنید و به دوستان خود معرفی کنید. باعث خوشحالی خواهد بود که نظر و تجربه خود را در قسمت نظرات به اشتراک بگذارید.