Подробный гайд по установке Zabbix 7.0 LTS в CentOS Stream 9 с PostgreSQL, Apache - Часть 3

Подробный пошаговый гайд по установке Zabbix 7.0 LTS в CentOS Stream 9 с PostgreSQL, Apache, Agent 2, настройкой SELinux, бэкапов и безопасности.

2026.09.20                  


Подробный гайд по установке Zabbix 7.0 LTS в CentOS Stream 9 с PostgreSQL, Apache - Часть 3Подробный гайд по установке Zabbix 7.0 LTS в CentOS Stream 9 с PostgreSQL, Apache - Часть 3

16. Настройка локального Zabbix Agent 2

Теперь настроим агент на самом Zabbix-сервере, чтобы мониторить его.

Откройте конфиг:

sudo nano /etc/zabbix/zabbix_agent2.conf

Установите параметры:

Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=zabbix.example.local

Если сервер будет опрашиваться не только локально, а, например, другим сервером, можно указать список:

Server=127.0.0.1,192.168.10.20
ServerActive=127.0.0.1


Перезапустите агент:

sudo systemctl restart zabbix-agent2

Проверьте статус:

sudo systemctl status zabbix-agent2 --no-pager

Проверьте агента локально:

zabbix_get -s 127.0.0.1 -p 10050 -k agent.ping

Ожидаемый ответ:

1

Можно проверить версию агента:

zabbix_get -s 127.0.0.1 -p 10050 -k agent.version

17. Добавление Zabbix-сервера в мониторинг

В веб-интерфейсе перейдите в раздел узлов сети.

В зависимости от версии интерфейса это может быть:

Data collection -> Hosts

или

Configuration -> Hosts

Нажмите:

Create host

Укажите:

Параметр Значение
Host name zabbix.example.local
Visible name например, Zabbix Server
Groups например, Linux servers
Agent interface 127.0.0.1, порт 10050

Во вкладке шаблонов добавьте, например:

Linux by Zabbix agent
Zabbix server health

Сохраните.

Через несколько минут в разделе:

Monitoring -> Hosts

или

Data collection -> Hosts

иконка доступности агента должна стать зеленой.


18. Добавление удаленного хоста с Zabbix Agent 2

На удаленном сервере подключите репозиторий Zabbix:

sudo dnf install -y https://repo.zabbix.com/zabbix/7.0/rhel/9/x86_64/zabbix-release-7.0-1.el9.noarch.rpm

Установите агент:

sudo dnf install -y zabbix-agent2

Откройте конфиг:

sudo nano /etc/zabbix/zabbix_agent2.conf

Укажите:

Server=IP_ZABBIX_СЕРВЕРА
ServerActive=IP_ZABBIX_СЕРВЕРА
Hostname=client1.example.local

Например:

Server=192.168.10.20
ServerActive=192.168.10.20
Hostname=client1.example.local

Запустите агент:

sudo systemctl enable --now zabbix-agent2

На клиенте откройте порт агента:

sudo firewall-cmd --permanent --add-port=10050/tcp
sudo firewall-cmd --reload

С Zabbix-сервера проверьте доступность:

zabbix_get -s IP_КЛИЕНТА -k agent.ping

Если ответ:

1

значит агент отвечает.

Добавьте узел сети в веб-интерфейсе:

Hosts -> Create host

Укажите:

  • имя хоста;
  • группу;
  • agent interface с IP клиента и портом 10050;
  • шаблон, например Linux by Zabbix agent.

19. Настройка уведомлений

Базовая настройка уведомлений обычно делается так:

  1. Настройте способ отправки сообщений, например Email.
  2. Добавьте способ уведомления пользователю.
  3. Настройте действия, которые отправляют уведомления при срабатывании триггеров.

В веб-интерфейсе:

Administration -> Media types

Проверьте Email или настройте SMTP.

Затем:

Administration -> Users

Откройте пользователя и добавьте адрес электронной почты в разделе Media.

Далее:

Configuration -> Actions

или в новых версиях:

Alerts -> Actions

Проверьте действия по триггерам и при необходимости создайте свои.


20. Базовое усиление безопасности

20.1. Смена пароля Admin

Не оставляйте пароль по умолчанию.

20.2. Создание отдельного администратора

Создайте отдельного пользователя с административными правами, проверьте вход, затем смените или ограничьте использование стандартного Admin.

20.3. HTTPS

Для продакшена крайне желательно использовать HTTPS.

Установите пакеты:

sudo dnf install -y mod_ssl certbot python3-certbot-apache

Откройте HTTPS:

sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

Если у сервера есть доменное имя, доступное из интернета или внутренней сети, можно получить сертификат Let's Encrypt:

sudo certbot --apache

Если сервер только внутренний, можно использовать внутренний удостоверяющий центр или самоподписанный сертификат.

20.4. Ограничение доступа по IP

Если возможно, ограничьте доступ к веб-интерфейсу и портам Zabbix по IP.



Например, разрешить веб только из подсети 10.0.0.0/24:

sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="10.0.0.0/24" port protocol="tcp" port="80" accept'
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="10.0.0.0/24" port protocol="tcp" port="443" accept'
sudo firewall-cmd --reload

Для Zabbix-порта:

sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="10.0.0.0/24" port protocol="tcp" port="10051" accept'
sudo firewall-cmd --reload

Будьте осторожны: неправильные правила могут потерять доступ к серверу.

20.5. Шифрование между сервером и агентом

Можно настроить PSK-шифрование для агента.

На клиенте с агентом сгенерируйте PSK:

sudo mkdir -p /etc/zabbix
openssl rand -hex 32 | sudo tee /etc/zabbix/agent2.psk
sudo chown zabbix:zabbix /etc/zabbix/agent2.psk
sudo chmod 600 /etc/zabbix/agent2.psk

Посмотрите ключ:

sudo cat /etc/zabbix/agent2.psk

Добавьте в /etc/zabbix/zabbix_agent2.conf:

TLSConnect=psk
TLSAccept=psk
TLSPSKIdentity=PSK001
TLSPSKFile=/etc/zabbix/agent2.psk

Перезапустите агент:

sudo systemctl restart zabbix-agent2

В веб-интерфейсе в карточке хоста на вкладке Encryption выберите PSK, укажите PSK identity и сам ключ.


21. Производительность и тюнинг

Для небольшой установки стандартных настроек обычно достаточно. Для более нагруженных систем можно править /etc/zabbix/zabbix_server.conf.

Пример умеренных значений:

CacheSize=512M
HistoryCacheSize=256M
TrendCacheSize=128M
ValueCacheSize=256M
StartPollers=10
StartPollersUnreachable=2
StartTrappers=5
StartDiscoverers=3
StartTimers=2

После изменений:

sudo systemctl restart zabbix-server

Также важен тюнинг PostgreSQL.

Пример для сервера с 8 GB RAM:

shared_buffers = 2GB
effective_cache_size = 6GB
work_mem = 16MB
maintenance_work_mem = 256MB

Файл конфигурации PostgreSQL обычно:

/var/lib/pgsql/data/postgresql.conf

После изменений:

sudo systemctl restart postgresql

Для высокой нагрузки часто используют:

  • отдельный сервер БД;
  • PostgreSQL + TimescaleDB;
  • партиционирование истории;
  • SSD/NVMe диски;
  • настройку housekeeping.

Мы делимся этой технической информацией, чтобы помочь вам в решении задач — используйте её с пониманием. Статья носит рекомендательный характер, поэтому, пожалуйста, применяйте описанные методы осмотрительно.


Статью подготовил: Аверко Денис Сергеевич @Nymexis г. Омск (специалист по ЗИ)

Комментарии

Загрузка...
Если комментарии не загружаются, можете попробовать отключить блокировщик рекламы для этого сайта