زبیکس یک ابزار قدرتمند مانتورینگ تحت لینوکس جهت مانیتور کردن کارایی و در دسترس بودن تجهیزات تحت شبکه، سرورها، اپلیکیشن ها و هر چیزی که بتواند ip بگیرد و جزء زیر ساخت IT باشد، میباشد. Zabbix را روی هر توزیع لینوکسی می توان نصب کرد اما در این مقاله ما به شما نحوه ی نصب zabbix 5.4 روی Debian 10 و Rocky Linux 8 آموزش خواهیم داد.
Zabbix به صورت Client/Server کار میکند و شما میبایست جهت مانیتورینگ سرورها و نرم افزارها نیاز هست که ابتدا ایجنت زبیکس روی کلاینت ها نصب شود که سرور مانیتورینگ زبیکس بتواند اطلاعات مد نظر را از کلاینت ها دریافت کند. البته تجهیزات که سیستم عامل ندارند و امکان نصب Agent Zabbix در آنها نیست را میتوان از طریق پروتکل SNMP یا IPMI در زبیکس مانیتور کرد.
زبیکس 5.4 تغییرات فراوانی نسبت به نسخه های پیشین داشته و حتما توصیه میشود در صورتیکه از ورژن های قدیمی استفاده میکنید آنرا به این ورژن ارتقاء دهید. به علت طولانی شدن مقاله ما نمیتوانیم همه موارد را پوشش دهیم ولی میتوانید لیست قابلیت های جدید در zabbix 5.4 را از طریق این لینک مشاهده کنید.
ما در این مقاله نصب و راه اندازی مانیتورینگ زبیکس روی دبیان 10 و راکی لینوکس 8 را پوشش میدهیم. قبل از شروع ابتدا پیش نیازهای نصب را آماده میکنیم.
پیش نیازها
سیستم عامل : Debian 10 یا Rocky Linux 8
وب سرور : نصب LAMP روی سرور (شامل Apache، دیتابیس MariaDB 10 به بالا و PHP 7.3 به بالا)
تنظیم ساعت و تاریخ : ساعت و تاریخ سرور خود را میتوانید با استفاده از NTP داخل شبکه تنظیم کرد که با دیگر تجهیزات که قصد مانیتور کردن آنها را داریم یکی باشد.
دسترسی root : دستوراتی که در طول آموزش اجرا شده تحت یوزر root میباشد. در صورتیکه شما root نیستید در ابتدای دستورات میتوانید از sudo استفاده کنید.
محاسبه فضای دیتابیس و منابع سرور : در مقاله قبلی آموزش نصب zabbix 5 نحوه محاسبه فضای دیسک و دیتابیس بیان شده. توصیه میشود بخش ابتدای این مقاله مطالعه شود.
نصب زبیکس دو مرحله دارد. یک مرحله نصب پیش نیازها و نصب خود سرور زبیکس روی سیستم عامل هست و مرحله دوم ادامه نصب زبیکس از طریق اینترفیس وب میباشد. مرحله اول با توجه به ورژن و توزیع لینوکسی که دارید برای هر توزیع متفاوت است که ما در اینجا ابتدا توزیع Debian 10 و بعد Rocky Linux 8.4 را شرح خواهیم داد، سپس مرحله دوم را پیش میبریم که به یک شکل انجام میشود.
ویدیو نصب و راه اندازی مانیتورینگ Zabbix 5.4
مرحل اول : نصب Zabbix 5.4 روی Debian 10 و Rocky Linux 8.4
نصب Zabbix روی Debian 10
نصب LAMP روی سرور Zabbix
اگر شما از دبیان 10 استفاده میکنید ابتدا نیاز هست که وب سرور آپاچی را روی سرور خود نصب کنید.
فایروال UFW به صورت پیش فرض نصب نیست و در صورتیکه استفاده نمیکنید این بخش را نادیده بگیرید. اما اگر از فایروال UFW استفاده میکنید حتما پورت 80 و 443 را با استفاده از دستورات زیر باز کنید.
سپس دیتابیس زبیکس را نصب و کانفیگ میکنیم. شما میتوانید از هر دیتابیس دیگری استفاده کنید اما ما در این مقاله دیتابیس MariaDB را پوشش میدهیم. برای نصب دیتابیس MariaDB روی دبیان از دستور زیر استفاده کنید.
دیتابیس MariaDB بعد از نصب به صورت پیش فرض امن نیست. جهت امن کردن آن اسکریپت زیر را اجرا کنید و به همه پرسش های که مطرح میشود با "Y" جواب دهید.
در آخر PHP را نصب میکنیم. ما در این مقاله PHP 7.3 را نصب میکنیم.
اکنون وب سرور اپاچی را reload کنید و چک کنید که در حالت active running باشد همچنین خطایی نداشته باشد.
نصب Zabbix روی سرور
بعد از نصب پیش نیازها روی دبیان میایست تنظیمات نصب zabbix را انجام دهیم. با استفاده از دستورات زیر پکیج زبیکس 5.4 را از ریپازیتوری زبیکس دانلود و نصب کنید و در آخر پکیج های سیستم خود را به روز رسانی کنید.
سپس پکیج های پیش نیاز زیر را هم نصب کنید.
به دیتابیس خود لاگین کنید و با استفاده از دستورات زیر دیتابیس و یوزر zabbix را ایجاد کنید و دسترسی های مورد نیاز را هم اعمال کرده. به جای "123456" شما رمز عبور خود را وارد کنید.
روی سرور زبیکس جهت وارد شدن اطلاعات مربوط به دیتابیس دستور زیر را اجرا کنید. سپس از شما پسوردی را که در مراحل بالا تعریف کردید را درخواست میکند.
تنظیمات Zabbix Server در Debian 10
فایل تنظیمات زبیکس را از مسیر /etc/zabbix/zabbix_server.conf باز کنید، خطوط DBName، DBUser و DBPassword را پیدا کنید و مقادیر آنها را برابر با نام دیتابیس و یوزر و پسوردی که در مرحل قبل ایجاد کردید بگذارید. (در صورتیکه همانند دستورات این آموزش پیش رفته اید و نام دیتابیس و یوزر خود را برابر با zabbix گذاشتید، خط DBName و DBUser را تغییر ندهید و تنها خط DBPassword را از کامنت خارج کنید و پسوردی که در بالا تعریف کردید را وارد کنید.)
فایل zabbix.conf را با استفاده از ادیتور متن مورد علاقه خود باز کنید :
خط زیر را پیدا کنید :
آنرا از کامنت خارج کنید، سپس منطقه زمانی درست خود را وارد کنید. (در سناریو ما Asia/Tehran میباشد)
تنظیمات PHP سرور Zabbix
سپس فایل php.ini را از مسیر /etc/php/7.3/apache2/php.ini با استفاده از ویرایشگر متن دلخواه خود باز کنید و پارامترهای زیر را پیدا و همانند زیر تغییر دهید.
سپس سرویس apache2 را ریستارت کنید.
سرویس zabbix server و zabbix agent را بهمراه apache ریستارت کنید و آنرا در بوت سیستم فعال کنید.
تنظیمات سمت سرور zabbix به پایان رسید اکنون میبایست مرحله دوم که ادامه نصب zabbix از طریق اینترفیس وب میباشد را دنبال کنید.
نصب Zabbix روی Rocky Linux 8
در صورتیکه به SELinux علاقه ای ندارید، میتوانید آنرا برای غیرفعال کردن به حالت permissive ببرید. البته ترجیحا این کار را انجام ندهید. در مراحل بعدی نحوه تنظیمات SELinux برای zabbix توضیح داده شده است.
نصب LAMP روی سرور Zabbix
ابتدا سراغ پیش نیازهای نصب میرویم. پکیج های سیستم را به روز رسانی میکنیم سپس وب سرور Apache و PHP را به همراه ماژول ها و یکسری پیش نیازهای دیگر نصب میکنیم.
به صورت پیش فرض php 7.2 در ریپازیتوری های RockyLinux 8 فعال هست. ما قصد داریم روی سرور php 7.4 نصب کنیم. به همین منظور دستورات زیر را به ترتیب وارد کنید.
سپس ماژول ها یا اکستنشن های اضافی php را با دستور زیر نصب کنید.
با استفاده از دستورات زیر میتوانید ورژن apache و php نصب شده خود را بررسی کنید.
سپس سرویس آپاچی (httpd) و php-fpm را استارت کنید.
برای بررسی صحت عملکرد سرویس ها از دستورات زیر استفاده کنید.
شما میتوانید هر نوع دیتابیس دیگری استفاده کنید اما ما در این آموزش از دیتابیس MariaDB برای کانفیگ زبیکس استفاده میکنیم. برای نصب دیتابیس دستور زیر را اجرا کنید.
سرویس MariaDB را استارت و در بوت سیستم فعال کنید.
جهت بررسی وضعیت دیتابیس میتوانید از دستور زیر استفاده کنید.
دیتابیس MariaDB بعد از نصب به صورت پیش فرض امن نیست. جهت امن کردن آن اسکریپت زیر را اجرا کنید و به همه پرسش ها با "Y" جواب دهید.
بعد از نصب پیش نیازها، ریپازیتوری های زبیکس را به سیستم اضافه میکنیم.
سپس زبیکس و پکیج های مورد نیازش را نصب میکنیم.
اکنون شما باید دیتابیس zabbix و یوزر zabbix را ایجاد کنید. به جای "123456" از یک پسورد قوی برای یوزر zabbix استفاده کنید.
اطلاعات اولیه با دستور زیر در دیتابیس زبیکس وارد میشود. بعد از وارد کردن دستور از شما پسورد میخواهد که میبایست پسوردی که در مرحله قبل برای یوزر zabbix و دیتابیس اش ایجاد کردید وارد کنید. این مرحله کمی زمانبر است، لطفا صبور باشید.
انجام تنظیمات selinux :
SELinux یا Security Enhance Linux در حقیقت مکانیزمی است که یک لایه اضافی برای امنیت سیستم linux ایجاد میکند. در صورتیکه SELinux در سرور شما فعال است، نیاز است که تمامی دستورات این بخش را اجرا کنید. برای کسب اطلاعات بیشتر مقاله SELinux چیست؟ را مطالعه کنید.
توجه : در صورتیکه همانند آنچه که در مراحل ابتدایی مقاله گفته شد، SELinux خود را غیر فعال کرده اید، این بخش را نادیده بگیرید.
در ابتدا دایرکتوری zabbix-selinux را ایجاد کنید و با استفاده از دستور cd وارد آن شوید.
اکنون با استفاده از ادیتور متن vim، یک ماژول با نام zabbix_server_add.te برای SELinux ایجاد میکنیم. (به جای vim شما از ویرایشگر متن دلخواه خود استفاده کنید)
و خطوط زیر را در آن کپی کنید.
فایل تنظیمات را ذخیره کنید و از آن خارج شوید. سپس با استفاده از دستور checkmodule فایلی که در بالا ایجاد کردیم را به ماژول SELinux تبدیل میکنیم.
سپس با استفاده از دستور semodule_package، ماژول zabbix_server_add.mod را کامپایل میکنیم.
بعد از آن، ماژول کامپایل شده zabbix_server_add.pp را در سیستم لود میکنیم.
برای انجام تنظیمات اضافی SELinux، دستور setbool را همانند زیر اجرا کنید.
در انتها سرویس زبیکس را restart و در boot سیستم فعال کنید.
برای بررسی صحت عملکرد سرویس و ایجنت zabbix از دستورات زیر استفاده کنید.
تنظیمات Zabbix Server در Rocky Linux 8.4
فایل تنظیمات زبیکس را از مسیر /etc/zabbix/zabbix_server.conf باز کنید، خطوط DBName، DBUser و DBPassword را پیدا کنید و مقادیر آنها را برابر با نام دیتابیس و یوزر و پسوردی که در مرحل قبل ایجاد کردید بگذارید. (در صورتیکه همانند دستورات این آموزش پیش رفته اید و نام دیتابیس و یوزر خود را برابر با zabbix گذاشتید، خط DBName و DBUser را تغییر ندهید و تنها خط DBPassword را از کامنت خارج کنید و پسوردی که در بالا تعریف کردید را وارد کنید.)
تنظیمات PHP در Rocky Linux :
فایل zabbix.conf را با استفاده از ادیتور متن مورد علاقه خود باز کنید :
خط زیر را پیدا کنید :
آنرا از کامنت خارج کنید، سپس منطقه زمانی درست خود را وارد کنید. (در سناریو ما Asia/Tehran میباشد)
سپس فایل php.ini را از مسیر /etc/php.ini توسط ویرایشگر متن دلخواه خود باز کنید و پارامترهای زیر را پیدا و همانند زیر تغییر دهید.
سپس سرویس httpd و php-fpm را ریستارت کنید.
تنظیمات فایروال در Rocky Linux
اکنون با استفاده از دستورات زیر به سرویس http / https و پورت های مورد استفاده zabbix در فایروال مان دسترسی میدهیم.
با استفاده از دستور netstat میتوانید پورت هایی که روی سرور در حال listen کردن هستند را مشاهده کنید.
مرحله دوم : نصب Zabbix از طریق اینترفیس WEB
جهت ادامه نصب زبیکس آدرس سرور را همانند زیر در مرورگر خود وارد کنید.
در این مرحله مطمئن شوید که تمام پیشنیازهای نصب Ok هستند. پیش نیازهای اختیاری هم ممکن است در لیست موجود باشد. اگر مشکلی در پیش نیازهای اختیاری باشد به رنگ نارنجی و به همراه یک وضعیت هشدار نمایش داده میشود. شما میتوانید ادامه نصب را بدون پیش نیازهای اختیاری هم انجام دهید. بر روی دکمه Next step کلیک کنید.
در اینجا تنظیمات دیتابیس zabbix را باید انجام دهیم. در بخش Password باید رمز عبور مربوط به یوزر و دیتابیس zabbix که در مراحل بالاتر ایجاد کردیم را وارد کنیم. سپس بر روی Next step کلیک کنید.
یک نام برای زبیکس نصب شده در بخش Name وارد کنید و بر روی Next step کلیک کنید.
در این قسمت شما میتوانید منطقه زمانی خود را تغییر یا تنظیم کنید. همچنین میتوانید رنگ قالب کنترل پنل زبیکس را به دلخواه خود تغییر دهید.
در این مرحله ما خلاصه ای از تنظیمات انجام شده قبل از نصب را مشاهده میکنیم. روی Next step کلیک کنید.
نصب Zabbix Server به پایان رسید. بر روی دکمه Finish کلیک کنید.
به محض اینکه مراحل نصب به پایان برسد، zabbix شما را به صفحه لاگین هدایت خواهد کرد. یوزر و پسورد زبیکس خود را وارد کنید. Username و Password پیش فرض زبیکس به صورت زیر میباشد.
در اینجا شما کنترل پنل مانیتورینگ zabbix را مشاهده کنید.
خلاصه :
نصب و راه اندازی zabbix 5.4 با موفقیت به پایان رسید. در این مقاله ما سعی کردیم به شما نحوه نصب مانیتورینگ قدرتمند زبیکس را در Debian 10 و RockyLinux 8 یاد دهیم. در مقالات بعدی ما نحوه تنظیمات زبیکس و مانیتور کردن تجهیزات شبکه را یاد خواهیم داد.
Zabbix به صورت Client/Server کار میکند و شما میبایست جهت مانیتورینگ سرورها و نرم افزارها نیاز هست که ابتدا ایجنت زبیکس روی کلاینت ها نصب شود که سرور مانیتورینگ زبیکس بتواند اطلاعات مد نظر را از کلاینت ها دریافت کند. البته تجهیزات که سیستم عامل ندارند و امکان نصب Agent Zabbix در آنها نیست را میتوان از طریق پروتکل SNMP یا IPMI در زبیکس مانیتور کرد.
زبیکس 5.4 تغییرات فراوانی نسبت به نسخه های پیشین داشته و حتما توصیه میشود در صورتیکه از ورژن های قدیمی استفاده میکنید آنرا به این ورژن ارتقاء دهید. به علت طولانی شدن مقاله ما نمیتوانیم همه موارد را پوشش دهیم ولی میتوانید لیست قابلیت های جدید در zabbix 5.4 را از طریق این لینک مشاهده کنید.
ما در این مقاله نصب و راه اندازی مانیتورینگ زبیکس روی دبیان 10 و راکی لینوکس 8 را پوشش میدهیم. قبل از شروع ابتدا پیش نیازهای نصب را آماده میکنیم.
پیش نیازها
سیستم عامل : Debian 10 یا Rocky Linux 8
وب سرور : نصب LAMP روی سرور (شامل Apache، دیتابیس MariaDB 10 به بالا و PHP 7.3 به بالا)
تنظیم ساعت و تاریخ : ساعت و تاریخ سرور خود را میتوانید با استفاده از NTP داخل شبکه تنظیم کرد که با دیگر تجهیزات که قصد مانیتور کردن آنها را داریم یکی باشد.
دسترسی root : دستوراتی که در طول آموزش اجرا شده تحت یوزر root میباشد. در صورتیکه شما root نیستید در ابتدای دستورات میتوانید از sudo استفاده کنید.
محاسبه فضای دیتابیس و منابع سرور : در مقاله قبلی آموزش نصب zabbix 5 نحوه محاسبه فضای دیسک و دیتابیس بیان شده. توصیه میشود بخش ابتدای این مقاله مطالعه شود.
نصب زبیکس دو مرحله دارد. یک مرحله نصب پیش نیازها و نصب خود سرور زبیکس روی سیستم عامل هست و مرحله دوم ادامه نصب زبیکس از طریق اینترفیس وب میباشد. مرحله اول با توجه به ورژن و توزیع لینوکسی که دارید برای هر توزیع متفاوت است که ما در اینجا ابتدا توزیع Debian 10 و بعد Rocky Linux 8.4 را شرح خواهیم داد، سپس مرحله دوم را پیش میبریم که به یک شکل انجام میشود.
ویدیو نصب و راه اندازی مانیتورینگ Zabbix 5.4
مرحل اول : نصب Zabbix 5.4 روی Debian 10 و Rocky Linux 8.4
نصب Zabbix روی Debian 10
نصب LAMP روی سرور Zabbix
اگر شما از دبیان 10 استفاده میکنید ابتدا نیاز هست که وب سرور آپاچی را روی سرور خود نصب کنید.
کد PHP:
# apt install apache2 -y
فایروال UFW به صورت پیش فرض نصب نیست و در صورتیکه استفاده نمیکنید این بخش را نادیده بگیرید. اما اگر از فایروال UFW استفاده میکنید حتما پورت 80 و 443 را با استفاده از دستورات زیر باز کنید.
کد PHP:
# ufw allow 10050/tcp
# ufw allow 10051/tcp
# ufw allow 80/tcp
# ufw reload
سپس دیتابیس زبیکس را نصب و کانفیگ میکنیم. شما میتوانید از هر دیتابیس دیگری استفاده کنید اما ما در این مقاله دیتابیس MariaDB را پوشش میدهیم. برای نصب دیتابیس MariaDB روی دبیان از دستور زیر استفاده کنید.
کد PHP:
# apt install mariadb-server -y
دیتابیس MariaDB بعد از نصب به صورت پیش فرض امن نیست. جهت امن کردن آن اسکریپت زیر را اجرا کنید و به همه پرسش های که مطرح میشود با "Y" جواب دهید.
کد PHP:
# mysql_secure_installation
در آخر PHP را نصب میکنیم. ما در این مقاله PHP 7.3 را نصب میکنیم.
کد PHP:
# apt install php libapache2-mod-php php-mysql -y
اکنون وب سرور اپاچی را reload کنید و چک کنید که در حالت active running باشد همچنین خطایی نداشته باشد.
کد PHP:
# systemctl reload apache2
# systemctl status apache2
نصب Zabbix روی سرور
بعد از نصب پیش نیازها روی دبیان میایست تنظیمات نصب zabbix را انجام دهیم. با استفاده از دستورات زیر پکیج زبیکس 5.4 را از ریپازیتوری زبیکس دانلود و نصب کنید و در آخر پکیج های سیستم خود را به روز رسانی کنید.
کد PHP:
# wget https://repo.zabbix.com/zabbix/5.4/debian/pool/main/z/zabbix-release/zabbix-release_5.4-1+debian10_all.deb
# dpkg -i zabbix-release_5.4-1+debian10_all.deb
# apt update
سپس پکیج های پیش نیاز زیر را هم نصب کنید.
کد PHP:
# apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent
به دیتابیس خود لاگین کنید و با استفاده از دستورات زیر دیتابیس و یوزر zabbix را ایجاد کنید و دسترسی های مورد نیاز را هم اعمال کرده. به جای "123456" شما رمز عبور خود را وارد کنید.
کد PHP:
# mysql -uroot -p
password
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by '123456';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> quit;
روی سرور زبیکس جهت وارد شدن اطلاعات مربوط به دیتابیس دستور زیر را اجرا کنید. سپس از شما پسوردی را که در مراحل بالا تعریف کردید را درخواست میکند.
کد PHP:
# zcat /usr/share/doc/zabbix-sql-scripts/mysql/create.sql.gz | mysql -uzabbix -p zabbix
تنظیمات Zabbix Server در Debian 10
فایل تنظیمات زبیکس را از مسیر /etc/zabbix/zabbix_server.conf باز کنید، خطوط DBName، DBUser و DBPassword را پیدا کنید و مقادیر آنها را برابر با نام دیتابیس و یوزر و پسوردی که در مرحل قبل ایجاد کردید بگذارید. (در صورتیکه همانند دستورات این آموزش پیش رفته اید و نام دیتابیس و یوزر خود را برابر با zabbix گذاشتید، خط DBName و DBUser را تغییر ندهید و تنها خط DBPassword را از کامنت خارج کنید و پسوردی که در بالا تعریف کردید را وارد کنید.)
کد PHP:
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=password
فایل zabbix.conf را با استفاده از ادیتور متن مورد علاقه خود باز کنید :
کد PHP:
# vim /etc/apache2/conf-enabled/zabbix.conf
خط زیر را پیدا کنید :
کد PHP:
# php_value date.timezone Europe/Riga
آنرا از کامنت خارج کنید، سپس منطقه زمانی درست خود را وارد کنید. (در سناریو ما Asia/Tehran میباشد)
کد PHP:
php_value[date.timezone] = Asia/Tehran
تنظیمات PHP سرور Zabbix
سپس فایل php.ini را از مسیر /etc/php/7.3/apache2/php.ini با استفاده از ویرایشگر متن دلخواه خود باز کنید و پارامترهای زیر را پیدا و همانند زیر تغییر دهید.
کد PHP:
date.timezone = Asia/Tehran
memory_limit = 128M
post_max_size = 16M
upload_max_filesize = 2M
max_execution_time = 300
max_input_time = 300
session.auto_start = 0
سپس سرویس apache2 را ریستارت کنید.
کد PHP:
# systemctl restart apache2.service
سرویس zabbix server و zabbix agent را بهمراه apache ریستارت کنید و آنرا در بوت سیستم فعال کنید.
کد PHP:
# systemctl restart zabbix-server zabbix-agent apache2
# systemctl enable zabbix-server zabbix-agent apache2
تنظیمات سمت سرور zabbix به پایان رسید اکنون میبایست مرحله دوم که ادامه نصب zabbix از طریق اینترفیس وب میباشد را دنبال کنید.
نصب Zabbix روی Rocky Linux 8
در صورتیکه به SELinux علاقه ای ندارید، میتوانید آنرا برای غیرفعال کردن به حالت permissive ببرید. البته ترجیحا این کار را انجام ندهید. در مراحل بعدی نحوه تنظیمات SELinux برای zabbix توضیح داده شده است.
کد PHP:
# setenforce 0
# sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config
# cat /etc/selinux/config | grep SELINUX=
نصب LAMP روی سرور Zabbix
ابتدا سراغ پیش نیازهای نصب میرویم. پکیج های سیستم را به روز رسانی میکنیم سپس وب سرور Apache و PHP را به همراه ماژول ها و یکسری پیش نیازهای دیگر نصب میکنیم.
کد PHP:
# yum update -y
# yum install httpd httpd-tools vim net-tools -y
به صورت پیش فرض php 7.2 در ریپازیتوری های RockyLinux 8 فعال هست. ما قصد داریم روی سرور php 7.4 نصب کنیم. به همین منظور دستورات زیر را به ترتیب وارد کنید.
کد PHP:
# yum module reset php
# yum module install php:7.4
سپس ماژول ها یا اکستنشن های اضافی php را با دستور زیر نصب کنید.
کد PHP:
# yum install php php-cli php-common php-devel php-pear php-mbstring php-gd php-bcmath php-ctype php-xml php-xmlreader php-xmlwriter php-session php-mbstring php-gettext php-ldap -y
با استفاده از دستورات زیر میتوانید ورژن apache و php نصب شده خود را بررسی کنید.
کد PHP:
# httpd -v
# php -v
سپس سرویس آپاچی (httpd) و php-fpm را استارت کنید.
کد PHP:
# systemctl start httpd php-fpm
برای بررسی صحت عملکرد سرویس ها از دستورات زیر استفاده کنید.
کد PHP:
# systemctl status httpd
# systemctl status php-fpm
شما میتوانید هر نوع دیتابیس دیگری استفاده کنید اما ما در این آموزش از دیتابیس MariaDB برای کانفیگ زبیکس استفاده میکنیم. برای نصب دیتابیس دستور زیر را اجرا کنید.
کد PHP:
# yum install mariadb-server mariadb -y
سرویس MariaDB را استارت و در بوت سیستم فعال کنید.
کد PHP:
# systemctl start mariadb
# systemctl enable mariadb
جهت بررسی وضعیت دیتابیس میتوانید از دستور زیر استفاده کنید.
کد PHP:
# systemctl status mariadb
دیتابیس MariaDB بعد از نصب به صورت پیش فرض امن نیست. جهت امن کردن آن اسکریپت زیر را اجرا کنید و به همه پرسش ها با "Y" جواب دهید.
کد PHP:
# mysql_secure_installation
بعد از نصب پیش نیازها، ریپازیتوری های زبیکس را به سیستم اضافه میکنیم.
کد PHP:
# rpm -Uvh https://repo.zabbix.com/zabbix/5.4/rhel/8/x86_64/zabbix-release-5.4-1.el8.noarch.rpm
# yum clean all
سپس زبیکس و پکیج های مورد نیازش را نصب میکنیم.
کد PHP:
# yum install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts zabbix-agent -y
اکنون شما باید دیتابیس zabbix و یوزر zabbix را ایجاد کنید. به جای "123456" از یک پسورد قوی برای یوزر zabbix استفاده کنید.
کد PHP:
# mysql -u root -p
password
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by '123456';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> flush privileges;
mysql> quit;
اطلاعات اولیه با دستور زیر در دیتابیس زبیکس وارد میشود. بعد از وارد کردن دستور از شما پسورد میخواهد که میبایست پسوردی که در مرحله قبل برای یوزر zabbix و دیتابیس اش ایجاد کردید وارد کنید. این مرحله کمی زمانبر است، لطفا صبور باشید.
کد PHP:
# zcat /usr/share/doc/zabbix-sql-scripts/mysql/create.sql.gz | mysql -uzabbix -p zabbix
انجام تنظیمات selinux :
SELinux یا Security Enhance Linux در حقیقت مکانیزمی است که یک لایه اضافی برای امنیت سیستم linux ایجاد میکند. در صورتیکه SELinux در سرور شما فعال است، نیاز است که تمامی دستورات این بخش را اجرا کنید. برای کسب اطلاعات بیشتر مقاله SELinux چیست؟ را مطالعه کنید.
توجه : در صورتیکه همانند آنچه که در مراحل ابتدایی مقاله گفته شد، SELinux خود را غیر فعال کرده اید، این بخش را نادیده بگیرید.
در ابتدا دایرکتوری zabbix-selinux را ایجاد کنید و با استفاده از دستور cd وارد آن شوید.
کد PHP:
# mkdir -p ~/zabbix-selinux
# cd ~/zabbix-selinux/
اکنون با استفاده از ادیتور متن vim، یک ماژول با نام zabbix_server_add.te برای SELinux ایجاد میکنیم. (به جای vim شما از ویرایشگر متن دلخواه خود استفاده کنید)
کد PHP:
# vim zabbix_server_add.te
و خطوط زیر را در آن کپی کنید.
کد PHP:
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 policy
allow 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 فایلی که در بالا ایجاد کردیم را به ماژول SELinux تبدیل میکنیم.
کد PHP:
# checkmodule -M -m -o zabbix_server_add.mod zabbix_server_add.te
سپس با استفاده از دستور semodule_package، ماژول zabbix_server_add.mod را کامپایل میکنیم.
کد PHP:
# semodule_package -m zabbix_server_add.mod -o zabbix_server_add.pp
بعد از آن، ماژول کامپایل شده zabbix_server_add.pp را در سیستم لود میکنیم.
کد PHP:
# semodule -i zabbix_server_add.pp
برای انجام تنظیمات اضافی SELinux، دستور setbool را همانند زیر اجرا کنید.
کد PHP:
# setsebool -P httpd_can_network_connect 1
# setsebool -P httpd_can_connect_zabbix 1
# setsebool zabbix_can_network on
در انتها سرویس زبیکس را restart و در boot سیستم فعال کنید.
کد PHP:
# systemctl restart zabbix-server zabbix-agent httpd php-fpm
# systemctl enable zabbix-server zabbix-agent httpd php-fpm
برای بررسی صحت عملکرد سرویس و ایجنت zabbix از دستورات زیر استفاده کنید.
کد PHP:
# systemctl status zabbix-server
# systemctl status zabbix-agent
تنظیمات Zabbix Server در Rocky Linux 8.4
فایل تنظیمات زبیکس را از مسیر /etc/zabbix/zabbix_server.conf باز کنید، خطوط DBName، DBUser و DBPassword را پیدا کنید و مقادیر آنها را برابر با نام دیتابیس و یوزر و پسوردی که در مرحل قبل ایجاد کردید بگذارید. (در صورتیکه همانند دستورات این آموزش پیش رفته اید و نام دیتابیس و یوزر خود را برابر با zabbix گذاشتید، خط DBName و DBUser را تغییر ندهید و تنها خط DBPassword را از کامنت خارج کنید و پسوردی که در بالا تعریف کردید را وارد کنید.)
کد PHP:
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=password
تنظیمات PHP در Rocky Linux :
فایل zabbix.conf را با استفاده از ادیتور متن مورد علاقه خود باز کنید :
کد PHP:
# vim /etc/php-fpm.d/zabbix.conf
خط زیر را پیدا کنید :
کد PHP:
; php_value[date.timezone] =
آنرا از کامنت خارج کنید، سپس منطقه زمانی درست خود را وارد کنید. (در سناریو ما Asia/Tehran میباشد)
کد PHP:
php_value[date.timezone] = Asia/Tehran
سپس فایل php.ini را از مسیر /etc/php.ini توسط ویرایشگر متن دلخواه خود باز کنید و پارامترهای زیر را پیدا و همانند زیر تغییر دهید.
کد PHP:
date.timezone = Asia/Tehran
memory_limit = 128M
post_max_size = 16M
upload_max_filesize = 2M
max_execution_time = 300
max_input_time = 300
session.auto_start = 0
سپس سرویس httpd و php-fpm را ریستارت کنید.
کد PHP:
# systemctl restart httpd php-fpm
تنظیمات فایروال در Rocky Linux
اکنون با استفاده از دستورات زیر به سرویس http / https و پورت های مورد استفاده zabbix در فایروال مان دسترسی میدهیم.
کد PHP:
# firewall-cmd --permanent --zone=public --add-service=http
# firewall-cmd --permanent --zone=public --add-service=https
# firewall-cmd --permanent --zone=public --add-port=10051/tcp
# firewall-cmd --permanent --zone=public --add-port=10050/tcp
# firewall-cmd --reload
با استفاده از دستور netstat میتوانید پورت هایی که روی سرور در حال listen کردن هستند را مشاهده کنید.
کد PHP:
# netstat -ant | grep LISTEN
مرحله دوم : نصب Zabbix از طریق اینترفیس WEB
جهت ادامه نصب زبیکس آدرس سرور را همانند زیر در مرورگر خود وارد کنید.
کد PHP:
http://server_ip_or_name/zabbix
در این مرحله مطمئن شوید که تمام پیشنیازهای نصب Ok هستند. پیش نیازهای اختیاری هم ممکن است در لیست موجود باشد. اگر مشکلی در پیش نیازهای اختیاری باشد به رنگ نارنجی و به همراه یک وضعیت هشدار نمایش داده میشود. شما میتوانید ادامه نصب را بدون پیش نیازهای اختیاری هم انجام دهید. بر روی دکمه Next step کلیک کنید.
در اینجا تنظیمات دیتابیس zabbix را باید انجام دهیم. در بخش Password باید رمز عبور مربوط به یوزر و دیتابیس zabbix که در مراحل بالاتر ایجاد کردیم را وارد کنیم. سپس بر روی Next step کلیک کنید.
یک نام برای زبیکس نصب شده در بخش Name وارد کنید و بر روی Next step کلیک کنید.
در این قسمت شما میتوانید منطقه زمانی خود را تغییر یا تنظیم کنید. همچنین میتوانید رنگ قالب کنترل پنل زبیکس را به دلخواه خود تغییر دهید.
در این مرحله ما خلاصه ای از تنظیمات انجام شده قبل از نصب را مشاهده میکنیم. روی Next step کلیک کنید.
نصب Zabbix Server به پایان رسید. بر روی دکمه Finish کلیک کنید.
به محض اینکه مراحل نصب به پایان برسد، zabbix شما را به صفحه لاگین هدایت خواهد کرد. یوزر و پسورد زبیکس خود را وارد کنید. Username و Password پیش فرض زبیکس به صورت زیر میباشد.
کد PHP:
Username: Admin
Password: zabbix
در اینجا شما کنترل پنل مانیتورینگ zabbix را مشاهده کنید.
خلاصه :
نصب و راه اندازی zabbix 5.4 با موفقیت به پایان رسید. در این مقاله ما سعی کردیم به شما نحوه نصب مانیتورینگ قدرتمند زبیکس را در Debian 10 و RockyLinux 8 یاد دهیم. در مقالات بعدی ما نحوه تنظیمات زبیکس و مانیتور کردن تجهیزات شبکه را یاد خواهیم داد.