نحوه نظارت بر سرورهای از راه دور با استفاده از Zabbix در Ubuntu 16.04

Zabbix یک نرم افزار آماده و متناسب با منبع آزاد است که برای نظارت بر در دسترس بودن سیستم ها و اجزای شبکه استفاده می شود. Zabbix می تواند هزاران سرور ، ماشین های مجازی یا مؤلفه های شبکه را بطور همزمان کنترل کند. Zabbix می تواند تقریباً همه موارد مربوط به سیستمی مانند CPU ، حافظه ، فضای دیسک و IO ، پردازش ها ، شبکه ، پایگاه داده ، ماشین های مجازی و خدمات وب را کنترل کند. اگر دسترسی IPMI به Zabbix فراهم شود ، می تواند سخت افزارهایی مانند دما ، ولتاژ و غیره را نیز کنترل کند.

پیش نیازها

برای این آموزش ، ما به 192.0.2.1عنوان آدرس IP عمومی سرور Zabbix و 192.0.2.2به عنوان آدرس IP عمومی یک میزبان Zabbix استفاده خواهیم کرد که از راه دور آن را رصد خواهیم کرد. لطفاً اطمینان حاصل کنید که تمام وقایع آدرس IP مثال را با آدرسهای IP واقعی خود جایگزین کنید.

سیستم پایه خود را با استفاده از راهنمای نحوه به روزرسانی اوبونتو 16.04 به روز کنید . پس از به روزرسانی س��ستم ، نصب وابستگی ها را انجام دهید.

Apache و PHP را نصب کنید

پس از نصب وب Zabbix ، به طور خودکار پیکربندی را برای سرور وب آپاچی ایجاد می کند.

سرور وب Apache را نصب کنید تا Zabbix را در جلوی اینترنت یا UI وب سرویس دهید.

sudo apt -y install apache2

سرور وب Apache را راه اندازی کنید و آن را فعال کنید تا به طور خودکار در زمان بوت شروع شود.

sudo systemctl start apache2
sudo systemctl enable apache2

آخرین نسخه PHP را به همراه ماژول های مورد نیاز Zabbix نصب کنید.

sudo apt -y install php php7.0 libapache2-mod-php7.0 php7.0-cli php7.0-gd php7.0-bcmath php7.0-ctype php7.0-xml php7.0-sockets php7.0-mbstring php7.0-gettext php7.0-ldap php7.0-pgsql

PostgreSQL را نصب و پیکربندی کنید

PostgreSQL یک سیستم پایگاه داده رابطه ای است. مخزن PostgreSQL را در سیستم خود اضافه کنید.

echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list

کلید امضای مخزن را وارد کنید و لیست بسته ها را به روز کنید.

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt update

سرور پایگاه داده PostgreSQL را نصب کنید.

sudo apt -y install postgresql postgresql-contrib

سرور PostgreSQL را راه اندازی کنید و آن را فعال کنید تا به طور خودکار در زمان بوت شروع شود.

sudo systemctl start postgresql
sudo systemctl enable postgresql

گذرواژه را برای کاربر پیش فرض PostgreSQL تغییر دهید.

sudo passwd postgres

به عنوان کاربر PostgreSQL وارد شوید.

sudo su - postgres

یک کاربر جدید PostgreSQL برای Zabbix ایجاد کنید.

createuser zabbix

PostgreSQL psqlپوسته را برای اجرای نمایش داده ها در پایگاه داده فراهم می کند . با اجرا به پوسته PostgreSQL بروید.

psql

برای کاربر پایگاه داده تازه ایجاد شده برای پایگاه داده Zabbix یک رمزعبور تنظیم کنید.

ALTER USER zabbix WITH ENCRYPTED password 'StrongPassword';

یک پایگاه داده جدید برای Zabbix ایجاد کنید.

CREATE DATABASE zabbix OWNER zabbix;

از psqlپوسته خارج شوید.

\q

از sudoکاربر فعلی به postgresکاربر تغییر دهید.

exit

Zabbix را نصب کنید

Zabbix باینرهای نصب را برای Ubuntu فراهم می کند ، که می توانند مستقیماً از مخزن Zabbix نصب شوند. مخزن Zabbix را در سیستم خود اضافه کنید.

wget http://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.4-1+xenial_all.deb
sudo dpkg -i zabbix-release_3.4-1+xenial_all.deb
sudo apt update

نصب Zabbix serverو Zabbix web.

sudo apt -y install zabbix-server-pgsql zabbix-frontend-php

پایگاه داده PostgreSQL را که به همراه برنامه ارسال می شود ، وارد کنید.

zcat /usr/share/doc/zabbix-server-pgsql/create.sql.gz | sudo -H -u zabbix bash -c 'psql -U zabbix zabbix'

در پایان خروجی باید چیزی شبیه به موارد زیر را مشاهده کنید.

...
INSERT 0 1
INSERT 0 1
COMMIT

پرونده پیکربندی Zabbix را باز کنید تا جزئیات پایگاه داده به روز شود.

sudo nano /etc/zabbix/zabbix_server.conf

خطوط زیر را پیدا کنید و مقادیر را مطابق با پیکربندی پایگاه داده خود به روز کنید. لازم است خطوط DBHostو DBPortخطوط را نادیده بگیرید .

DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=StrongPassword
DBPort=5432

Zabbix به طور خودکار فایل میزبان مجازی را برای Apache نصب می کند. برای به روزرسانی منطقه زمانی ، باید میزبان مجازی را پیکربندی کنیم.

sudo nano /etc/apache2/conf-available/zabbix.conf

سطرهای زیر را پیدا کنید.

<IfModule mod_php7.c>
...
#php_value date.timezone Europe/Riga

مطابق شکل زیر خطوط را مطابق با منطقه زمانی خود به روز کنید.

<IfModule mod_php7.c>
...
php_value date.timezone Asia/Kolkata

اکنون Apache را مجدداً راه اندازی کنید تا این تغییرات در پیکربندی اعمال شود.

sudo systemctl restart apache2

همچنین ، سرور Zabbix را راه اندازی کرده و آن را فعال کنید تا به طور خودکار در زمان بوت شروع شود.

sudo systemctl start zabbix-server
sudo systemctl enable zabbix-server

شما باید سرور Zabbix را فعال و فعال کنید. می توانید وضعیت فرایند را بررسی کنید.

sudo systemctl status zabbix-server

برای دسترسی به داشبورد مدیریت ، می توانید http://192.0.2.1/zabbixبا استفاده از مرورگر مورد علاقه خود باز کنید. پیام خوش آمدید را مشاهده خواهید کرد. شما باید در رابط بعدی تمام پیش نیازها را راضی کنید. برای نصب نرم افزار دستورالعمل های موجود در صفحه نصب را دنبال کنید. پس از نصب نرم افزار ، با استفاده از نام کاربری Adminو رمز عبور وارد شوید zabbix. اکنون Zabbix نصب و آماده جمع آوری داده ها از نماینده Zabbix است.

عامل را بر روی سرور تنظیم کنید

برای نظارت بر سروری که Zabbix روی آن نصب شده است ، می توانید عامل را روی سرور تنظیم کنید. نماینده Zabbix داده های رویداد را از سرور لینوکس جمع می کند تا آن را به سرور Zabbix ارسال کند. به طور پیش فرض ، از شماره پورت 10050برای ارسال رویدادها و داده ها به سرور استفاده می شود.

عامل Zabbix را نصب کنید.

sudo apt -y install zabbix-agent

عامل را راه اندازی کنید و آن را فعال کنید تا به طور خودکار در زمان بوت شروع شود.

sudo systemctl start zabbix-agent
sudo systemctl enable zabbix-agent

از آنجا که ارتباط بین عامل Zabbix و سرور Zabbix بصورت محلی انجام می شود ، نیازی به تنظیم هرگونه رمزگذاری نیست.

قبل از اینکه سرور Zabbix بتواند داده ای را دریافت کند ، باید میزبان را فعال کنید. وارد داشبورد مدیریت وب سرور Zabbix شوید و به آن بروید Configuration >> Host. ورودی غیرفعال میزبان سرور Zabbix را مشاهده خواهید کرد. ورودی را انتخاب کرده و روی Enableدکمه کلیک کنید تا امکان نظارت بر برنامه سرور Zabbix و سیستم پایه ای که سرور Zabbix روی آن نصب شده است را فعال کنید.

نحوه نظارت بر سرورهای از راه دور با استفاده از Zabbix در Ubuntu 16.04

نمایندگی راه‌اندازی دستگاههای از راه دور لینوکس

سه روش وجود دارد که یک عامل از راه دور Zabbix می تواند رویدادها را به سرور Zabbix ارسال کند. روش اول استفاده از یک اتصال بدون رمزگذاری است و روش دوم استفاده از یک کلید از پیش مشترک شده ایمن است. سومین و مطمئن ترین راه رمزگذاری انتقال با استفاده از گواهینامه های RSA است.

قبل از نصب و پیکربندی عامل Zabbix در دستگاه از راه دور ، باید گواهی های موجود در سیستم سرور Zabbix را تولید کنیم. در این آموزش از گواهینامه های خود امضا شده استفاده خواهیم کرد.

دستورات زیر را به عنوان sudoکاربر روی سرور Zabbix اجرا کنید .

برای ذخیره کلیدهای Zabbix و ایجاد کلید خصوصی برای CA یک دایرکتوری جدید ایجاد کنید.

mkdir ~/zabbix-keys && cd ~/zabbix-keys
openssl genrsa -aes256 -out zabbix-ca.key 4096

از شما می خواهد یک عبارت عبور را برای محافظت از کلید خصوصی بخواهید. پس از ایجاد کلید خصوصی ، اقدام به تولید گواهی CA کنید.

openssl req -x509 -new -key zabbix-ca.key -sha256 -days 3560 -out zabbix-ca.crt

عبارات کلید خصوصی را تهیه کنید. اطلاعات جزئی درباره کشور ، ایالت ، سازمان شما از شما سؤال خواهد کرد. جزئیات را بر این اساس ارائه دهید.

user@vultr:~/zabbix-keys$ openssl req -x509 -new -key zabbix-ca.key -sha256 -days 3560 -out zabbix-ca.crt
Enter pass phrase for zabbix-ca.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:IN
State or Province Name (full name) [Some-State]:My State
Locality Name (eg, city) []:My City
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:My Unit
Common Name (e.g. server FQDN or YOUR name) []:Zabbix CA
Email Address []:[email protected]

ما با موفقیت گواهی CA را تولید کردیم. کلید خصوصی و CSR را برای سرور Zabbix ایجاد کنید.

openssl genrsa -out zabbix-server.key 2048
openssl req -new -key zabbix-server.key -out zabbix-server.csr

لطفاً هنگام رمزگذاری دستور فوق ، عبارتی برای رمزگذاری کلید خصوصی ارائه ندهید. با استفاده از CSR ، گواهی را برای سرور Zabbix تولید کنید.

openssl x509 -req -in zabbix-server.csr -CA zabbix-ca.crt -CAkey zabbix-ca.key -CAcreateserial -out zabbix-server.crt -days 1825 -sha256

به طور مشابه ، کلید خصوصی و CSR را برای میزبان یا عامل Zabbix تولید کنید.

openssl genrsa -out zabbix-host1.key 2048
openssl req -new -key zabbix-host1.key -out zabbix-host1.csr

اکنون مجوز تولید کنید.

openssl x509 -req -in zabbix-host1.csr -CA zabbix-ca.crt -CAkey zabbix-ca.key -CAcreateserial -out zabbix-host1.crt -days 1460 -sha256

گواهینامه ها را در فهرست پیکربندی Zabbix کپی کنید.

sudo mkdir /etc/zabbix/keys
sudo cp zabbix-ca.* zabbix-server.* /etc/zabbix/keys

مالکیت گواهینامه ها را به کاربر Zabbix ارائه دهید.

sudo chown -R zabbix: /etc/zabbix/keys

پرونده پیکربندی سرور Zabbix را باز کنید تا مسیر گواهی ها به روز شود.

sudo nano /etc/zabbix/zabbix_server.conf

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

TLSCAFile=/etc/zabbix/keys/zabbix-ca.crt
TLSCertFile=/etc/zabbix/keys/zabbix-server.crt
TLSKeyFile=/etc/zabbix/keys/zabbix-server.key

پرونده را ذخیره کرده و از ویرایشگر خارج شوید. سرور Zabbix را مجدداً راه اندازی کنید تا تغییرات در پیکربندی مؤثر واقع شوند.

sudo systemctl restart zabbix-server

گواهی ها را با استفاده از scpدستور در رایانه میزبان که مایل به نظارت بر آن هستید کپی کنید .

cd ~/zabbix-keys
scp zabbix-ca.crt zabbix-host1.* [email protected]:~

اطمینان حاصل کنید که 192.0.2.2آدرس IP واقعی از راه دور را که می خواهید عامل Zabbix را نصب کنید ، جایگزین کنید.

میزبان Zabbix را نصب کنید

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

از این پس ، تمام دستورات باید روی میزبان اجرا شود که مایل به نظارت بر آن هستید .

مخزن Zabbix را به سیستم اضافه کنید.

wget http://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.4-1+xenial_all.deb
sudo dpkg -i zabbix-release_3.4-1+xenial_all.deb
sudo apt update

عامل Zabbix را در سیستم نصب کنید.

sudo apt -y install zabbix-agent

برای پیکربندی و تنظیم Zabbix ، به مرحله نصب راهنمای Zabbix راهنمای Zabbix برای CentOS 7 بروید .



Leave a Comment

نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04

نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04

LiteCart یک بستر سبد خرید آزاد و منبع باز است که به زبان های PHP ، jQuery و HTML 5 نوشته شده است. این نرم افزار ساده ، سبک و با کاربرد آسان است.

نحوه نصب Anchor CMS بر روی یک VPS Fedora 26 LAMP

نحوه نصب Anchor CMS بر روی یک VPS Fedora 26 LAMP

با استفاده از یک سیستم متفاوت؟ Anchor CMS یک سیستم مدیریت محتوا (CMS) بسیار ساده و بسیار سبک ، بسیار آزاد و آزاد است.

اشتراک NFS را در Debian تنظیم کنید

اشتراک NFS را در Debian تنظیم کنید

NFS یک سیستم فایل مبتنی بر شبکه است که به رایانه ها اجازه می دهد تا از طریق شبکه رایانه ای به فایلها دسترسی پیدا کنند. این راهنما توضیح می دهد که چگونه می توانید پوشه ها را روی NF قرار دهید

نحوه بروزرسانی CentOS 7 ، Ubuntu 16.04 و Debian 8

نحوه بروزرسانی CentOS 7 ، Ubuntu 16.04 و Debian 8

هنگام راه اندازی سرور جدید لینوکس ، به روزرسانی سیستم های هسته و سایر بسته ها تا آخرین نسخه پایدار یک روش توصیه شده است. در این مقاله

نحوه نصب Matomo Analytics در Fedora 28

نحوه نصب Matomo Analytics در Fedora 28

با استفاده از یک سیستم متفاوت؟ Matomo (سابقا پیویک) یک بستر تحلیلی منبع باز است ، یک جایگزین باز برای Google Analytics. منبع Matomo میزبان o

یک سرور TeamTalk را در لینوکس تنظیم کنید

یک سرور TeamTalk را در لینوکس تنظیم کنید

TeamTalk یک سیستم کنفرانس است که به کاربران امکان می دهد مکالمات صوتی / تصویری با کیفیت بالا ، چت متنی ، انتقال فایل ها و صفحه های به اشتراک بگذارند. من

با استفاده از کلید SSH خود برای ورود به کاربران غیر ریشه استفاده کنید

با استفاده از کلید SSH خود برای ورود به کاربران غیر ریشه استفاده کنید

Vultr یک ویژگی را فراهم می کند که به شما امکان می دهد با ایجاد یک نمونه جدید ، کلیدهای SSH را از قبل نصب کنید. این اجازه می دهد تا به کاربر root دسترسی داشته باشید ، با این حال ، th

نحوه نصب انجمن NodeBB در FreeBSD 12

نحوه نصب انجمن NodeBB در FreeBSD 12

با استفاده از یک سیستم متفاوت؟ NodeBB یک نرم افزار انجمن مبتنی بر Node.js است. از سوکت های وب برای تعامل فوری و اعلامیه های زمان واقعی استفاده می کند. NodeB

نصب و راه اندازی ZNC در اوبونتو

نصب و راه اندازی ZNC در اوبونتو

ZNC یک پیشرانه پیشرفته شبکه IRC است که تمام وقت بهم متصل می شود تا مشتری IRC بتواند بدون از دست دادن جلسه گپ قطع یا وصل شود.

نحوه نصب Ranger Terminal File Manager در لینوکس

نحوه نصب Ranger Terminal File Manager در لینوکس

رنجر یک مدیر فایل مبتنی بر خط فرمان است که دارای کلیدهای اتصال VI است. این برنامه یک رابط لعنتی مینیمالیستی و زیبا با نمای سلسله مراتب فهرست ارائه می دهد