Stáhneme si Ubuntu 24.04.2 LTS z https://ubuntu.com/download/server
Nabootujeme, nastavíme. Instalátor projdeme standardně – nemusíme vyplňovat nic mimo IP adresy a hostname.
U větších disků má Ubuntu tendenci nevyužívat celý disk – oddíl si zvětšíme na maximální možnou velikost. (Není potřeba řešit, pokud máme disk nad, řekněme, 32 GB.)
Ubuntu ens34 IPv4 konfigurace – nekonvenční vyplnění subnetu – zadává se ve formátu IP/24 místo 255.255.255.0
…alternativně během instalace tento krok přeskočíme a nastavíme si síť konvenčně v NetPlan: cat /etc/netplan/*.yaml
https://vitux.com/how-to-configure-networking-with-netplan-on-ubuntu/
Po čisté instalaci Ubuntu následujeme oficiální návod na zabbix.org,
Doinstalujeme navíc balíčky: sudo apt install postgresql zabbix-agent2 ntp
! Oficiální zabbix.org návod počítá s tím, že už máme nainstalovanou databázi.
Na vCenter/ESXi doinstalujeme: sudo apt install open-vm-tools
Nainstalujeme podle postupu v Postgres části (náš core server využívá postgres). Best practice je mít stejnou verzi OS i DB i na proxy.
Vytvoříme si nového uživatele, např. mightyuser,:sudo adduser mightyuser
Změna hesla po instalaci: sudo passwd mightyuser
Úprava konfigurace
Otevřeme si následující soubory, vybereme vše, smažeme a nahradíme konfiguračními soubory níže.
Postup pro nano editor:
- Textový kurzor máme na prvním znaku
- Ctrl+6 nám nastaví pozici kurzoru
- Alt+T nám ořízne (cut) vše do konce souboru, čili je prázdný.
Na jiných OS se v terminálu může Alt+T lišit, závisí na konfiguraci terminálového emulátoru, který máme. Např. Alt+Shift+T, nebo Control+T.
1. Nastavíme si síť (pouze pokud potřebujeme upravit po instalaci)
Výchozí cesta bývá /etc/netplan/50-cloud-init.yaml
(kdyby se konfigurační soubor v umístění lišil, najdeme pomocí cat /etc/netplan/*.yaml
)
nano /etc/netplan/50-cloud-init.yaml
Výchozí je adresa z DHCP.
Obsah souboru:
network:
ethernets:
eth0:
dhcp4: true
optional: true
version: 2
Nastavení statické IPv4: https://vitux.com/how-to-configure-networking-with-netplan-on-ubuntu
2. Nastavíme si hostname, které bude vidět v lokální síti:
Soubor /etc/hostname
Změna hostname: sudo nano /etc/hostname
3. PSK klíč
Vygenerujeme si PSK klíč a uložíme do umístění, na kterém si odkážeme v config:
openssl rand -hex 32 > /etc/zabbix/.zabbix.key
Zobrazíme a vykopírujeme si PSK klíč: cat /etc/zabbix/.zabbix.key
4. Úprava konfigurace zabbix_proxy.conf
nano /etc/zabbix/zabbix_proxy.conf
Obsah souboru, upravíme si řádky tučně:
#contents of /etc/zabbix/zabbix_proxy.conf
Server=core.zbx.cz
Hostname=proxyname
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
EnableRemoteCommands=1
LogRemoteCommands=1
PidFile=/run/zabbix/zabbix_proxy.pid
SocketDir=/run/zabbix
DBName=zabbix_proxy
DBUser=zabbix
DBPassword=securepassword
ProxyBufferMode=hybrid
ProxyMemoryBufferSize=16M
ProxyConfigFrequency=30
StartPollers=50
StartAgentPollers=4
StartIPMIPollers=10
StartPreprocessors=50
StartPollersUnreachable=30
StartTrappers=10
StartPingers=10
StartVMwareCollectors=5
VMwareCacheSize=256M
VMwareTimeout=30
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
CacheSize=1024M
StartDBSyncers=10
HistoryCacheSize=128M
HistoryIndexCacheSize=128M
Timeout=30
UnreachablePeriod=30
UnavailableDelay=30
FpingLocation=/usr/bin/fping
Fping6Location=/usr/bin/fping6
LogSlowQueries=3000
StatsAllowedIP=127.0.0.1
TLSConnect=psk
TLSAccept=psk
TLSPSKIdentity=proxyname
TLSPSKFile=/etc/zabbix/.zabbix.key
5. Úprava souboru /etc/zabbix/zabbix_agent2.conf
Obsah souboru, upravíme si řádky tučně. Volitelně si vyplníme IP adresy Server a ServerActive, abychom ve front-endu viděli, odkud Zabbix agent na Zabbix proxy komunikuje. Pokud nevyplníme, bude adresa proxy (šablona Proxy Health) vždy 127.0.0.1.
# Contents of /etc/zabbix/zabbix_agent2.conf
PidFile=/var/run/zabbix/zabbix_agent2.pid
LogFile=/var/log/zabbix/zabbix_agent2.log
LogFileSize=0
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=proxyname
Include=/etc/zabbix/zabbix_agent2.d/*.conf
PluginSocket=/run/zabbix/agent.plugin.sock
ControlSocket=/run/zabbix/agent.sock
Include=/etc/zabbix/zabbix_agent2.d/plugins.d/*.conf
Po změnách v souborech restartujeme služby proxy i agenta
Aktivujeme si agenta: systemctl enable zabbix-agent2.service
Aktivujeme si proxy: systemctl enable zabbix-proxy.service
Průběžně po provedení změn zadáváme příkazy
systemctl restart zabbix-agent2
systemctl restart zabbix-proxy
Pokud jsme nezadali při konfiguraci, nastavíme časové pásmo:
sudo timedatectl set-timezone CET
Ověření: timedatectl
Troubleshoot
Po změnách konfigurace si musíme restartovat službu: systemctl restart zabbix-proxy
Zobrazíme si logy a sledujeme (tail):
tail -f /var/log/zabbix/zabbix_proxy.log
na jiných OS může být log jinde: find / -name zabbix_proxy.log
Firewall
Volitelně zablokujeme vše mimo 22, 443, 161, 10050, 10051 z/na požadované adresy zařízneme na firewallu. Případně povolíme UniFi TCP 8443 REST API a podobně.
ufw status
Dokumentace na https://help.ubuntu.com/community/UFW
Validace config souboru
Abychom se vyhnuli překlepům a chybám, můžeme si zvalidovat konfigurační soubory: sudo /usr/sbin/zabbix_proxy -T -c /etc/zabbix/zabbix_proxy.conf