User Tools

Site Tools


topic:zbx_linux_agent

Установка zabbix-агента в Linux

Будем устанавливать агента на Centos6 и настроим шифрование между сервером и агентом.

Подключение репозитория

Репозиторий zabbix находится по адресу https://repo.zabbix.com/.
Нас там интетесует пакет zabbix-release который он подключается. Для каждой ОС zabbix-release свой.

Ставим zabbix-release на 64 битный Centos6.

[root@fry ~]# rpm -i https://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/zabbix-release-3.2-1.el6.noarch.rpm
warning: /var/tmp/rpm-tmp.KCYHhE: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
	file /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX from install of zabbix-release-3.2-1.el6.noarch conflicts with file from package zabbix-release-3.0-1.el6.noarch
	file /etc/yum.repos.d/zabbix.repo from install of zabbix-release-3.2-1.el6.noarch conflicts with file from package zabbix-release-3.0-1.el6.noarch

Выясняем, что уже на сервере стоит zabbix-release-3.0-1.el6.noarch, его надо сначала удалить.

[root@fry ~]# rpm --erase zabbix-release-3.0-1.el6.noarch

Теперь еще раз пробуем поставить репозитарий и обновляем пакет zabbix-agent.

[root@fry ~]# rpm -i https://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/zabbix-release-3.2-1.el6.noarch.rpm
warning: /var/tmp/rpm-tmp.jjGcp0: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY

Установка

Ставим пакет “zabbix-agent”.

[root@ ~]# yum install zabbix-agent
...
--> Running transaction check
---> Package zabbix-agent.x86_64 0:3.0.9-1.el6 will be updated
---> Package zabbix-agent.x86_64 0:3.2.6-1.el6 will be an update
--> Finished Dependency Resolution
...

Базовая настройка

Файл конфигураци zabbix_agentd.conf лежит в /etc/zabbix.

[root@fry zabbix]# ll
total 44
-rw-r--r--. 1 root   root   10437 Май 21  2016 zabbix_agentd.conf
-rw-r--r--. 1 root   root   10438 Май 21  2016 zabbix_agentd.conf~
drwxr-xr-x. 2 root   root    4096 Июн 12 22:20 zabbix_agentd.d
-r--------. 1 zabbix zabbix    65 Май 21  2016 zbxpsk

Правим файл zabbix_agentd.conf, в секции “Passive checks related” ставим:

Server=231.33.44.123
ListenPort=10050

где,

  • Server= - это адрес zabbix-сервера с которого будут подключаться к zabbix-агенту.
  • ListenPort= - порт который слушает zabbix-agent (по дефолту tcp порт 10050, можно ставить 1024-32767).

В секции “Active checks related” ставим:

ServerActive=231.33.44.123:10051
Hostname=fry

где,

  • ServerActive= - адрес и порт zabbix-сервера к которому агент будет обращаться, что бы отправить результаты активной проверки.
  • Hostname= - тут указываем такое же имя как стоит на zabbix-сервере в настройках хоста который мы монитрим.

Если не планируется использовать шифрование между агентом и сервером, то сохраняем файл и перезапускаем агента.

Настройка шифрования между сервером и агентом

Шифрование настраивается в секции “TLS-RELATED PARAMETERS”, там ставим:

TLSConnect=psk
TLSAccept=psk
TLSPSKIdentity=PSK Not3Frag
TLSPSKFile=/etc/zabbix/zbxpsk

где,

  • TLSConnect - тип шифрования при активных проверках, когда агент подключается к zabbix-серверу.
    Два способа шифровать - на основе RSA сертификатов и на основе Pre-Shared key (PSK).
  • TLSAccept - тип шифрования при пасивных проверках, когда к агенту подключается zabbix-сервер.
  • TLSPSKIdentity - общее слово которое указывает на psk который будет использован при шифровании. Это слово передается в открытом виде.
  • TLSPSKFile - путь до файла где записан psk.

Документация по zabbix рекомендует в качестве psk какое-нибудь длинное рандомное шестнацатиричное число.

kostya@aee3:~$ openssl rand -hex 36
f6cff8a26c13af085d8a593ba14becd389d2797155391d366a6733d673adb221eceeaab5

Файл, в котором находится psk, должен быть c правами read-only и принадлежать пользователю и группе под которой работает zabbix-агент.

[root@fry zabbix]# ll
...
-r--------. 1 zabbix zabbix    72 Июн 12 23:29 zbxpsk
...

[root@bender zabbix]# cat zbxpsk
f6cff8a26c13af085d8a593ba14becd389d2797155391d366a6733d673adb221eceeaab5

В итоге конфиг zabbix-агента будет примерно таким:

[root@bender zabbix]# grep -v -E "^#|^$" /etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=231.33.44.123
ListenPort=10050
ServerActive=231.33.44.123:10051
Hostname=fry
Include=/etc/zabbix/zabbix_agentd.d/
TLSConnect=psk
TLSAccept=psk
TLSPSKIdentity=PSK Not3Frag
TLSPSKFile=/etc/zabbix/zbxpsk

Настройки со стороны zabbix-сервера.

Запуск агента

Со стороны агента пишем разрешающее правило в iptables.

[root@fry ~]# cat /etc/sysconfig/iptables
...
#ZBX
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -s x.xx.xx.x/32 -j ACCEPT
...

Запускаем zabbix-agent.

[root@fry ~]# /etc/init.d/zabbix-agent start
Starting Zabbix agent:                                     [  OK  ]

Включаем автозагрузку.

[root@fry ~]# chkconfig zabbix-agent --level 2345 on
topic/zbx_linux_agent.txt · Last modified: 2021/08/12 08:35 (external edit)

Page Tools