Előfeltételek
Telepítse az Apache-t és a PHP-t
Telepítse és konfigurálja a PostgreSQL-t
Telepítse a Zabbixot
Állítson be egy Zabbix ügynököt a szerveren
Állítsa be az ügynököt távoli Linux-gépeken
Telepítse a Zabbix Host-ot
Következtetés
A Zabbix egy ingyenes, nyílt forráskódú, vállalati használatra kész szoftver, amely a rendszerek és hálózati összetevők elérhetőségének figyelésére szolgál. A Zabbix több ezer szervert, virtuális gépet vagy hálózati komponenst tud egyszerre felügyelni. A Zabbix szinte mindent képes felügyelni, ami egy rendszerrel kapcsolatos, mint például a CPU, a memória, a lemezterület és az IO, a folyamatok, a hálózat, az adatbázisok, a virtuális gépek és a webszolgáltatások. Ha a Zabbix IPMI-hozzáférést biztosít, akkor a hardvert is tudja figyelni, például a hőmérsékletet, a feszültséget és így tovább.
Előfeltételek
Ebben az oktatóanyagban 192.0.2.1a Zabbix szerver 192.0.2.2nyilvános IP-címeként és egy Zabbix gazdagép nyilvános IP-címeként fogjuk használni , amelyet távolról figyelünk. Kérjük, ügyeljen arra, hogy a példa IP-címének minden előfordulását lecserélje a tényleges nyilvános IP-címeire.
Frissítse alaprendszerét a CentOS 7 frissítése útmutató segítségével . A rendszer frissítése után folytassa a függőségek telepítésével.
Telepítse az Apache-t és a PHP-t
A Zabbix web telepítése után automatikusan létrehozza az Apache konfigurációját.
Telepítse az Apache-t a Zabbix előtér vagy a webes felhasználói felület kiszolgálásához.
sudo yum -y install httpd
Indítsa el az Apache-ot, és engedélyezze az automatikus indulást rendszerindításkor.
sudo systemctl start httpd
sudo systemctl enable httpd
Adja hozzá és engedélyezze a Remitárat, mivel az alapértelmezett YUMtároló a PHP régebbi verzióját tartalmazza.
sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum -y install yum-utils
sudo yum-config-manager --enable remi-php71
Telepítse a PHP legújabb verzióját a Zabbix által igényelt modulokkal együtt.
sudo yum -y install php php-cli php-gd php-bcmath php-ctype php-xml php-xmlreader php-xmlwriter php-session php-sockets php-mbstring php-gettext php-ldap php-pgsql php-pear-Net-Socket
Telepítse és konfigurálja a PostgreSQL-t
A PostgreSQL egy objektum-relációs adatbázisrendszer. Hozzá kell adnia a PostgreSQL-tárat a rendszerhez, mivel az alapértelmezett YUM-tárház a PostgreSQL régebbi verzióját tartalmazza.
sudo rpm -Uvh https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
Telepítse a PostgreSQL adatbázis-kiszolgálót.
sudo yum -y install postgresql96-server postgresql96-contrib
Inicializálja az adatbázist.
sudo /usr/pgsql-9.6/bin/postgresql96-setup initdb
initdb létrehoz egy új adatbázis-fürtöt, amely egyetlen kiszolgáló által kezelt adatbázisok csoportja.
Szerkessze az pg_hba.confMD5 alapú hitelesítés engedélyezéséhez.
sudo nano /var/lib/pgsql/9.6/data/pg_hba.conf
Keresse meg a következő sorokat, és váltson peererre trustés idnet-ra md5.
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 idnet
# IPv6 local connections:
host all all ::1/128 idnet
Frissítés után a konfigurációnak az alábbiak szerint kell kinéznie.
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
Indítsa el a PostgreSQL-kiszolgálót, és engedélyezze az automatikus indulást rendszerindításkor.
sudo systemctl start postgresql-9.6
sudo systemctl enable postgresql-9.6
Módosítsa az passwordalapértelmezett PostgreSQL-felhasználó értékét.
sudo passwd postgres
Jelentkezzen be PostgreSQL felhasználóként.
sudo su - postgres
Hozzon létre egy új PostgreSQL-felhasználót a Zabbix számára.
createuser zabbix
Váltson a PostgreSQL rendszerhéjra.
psql
Állítson be jelszót az újonnan létrehozott adatbázis-felhasználó számára a Zabbix adatbázishoz.
ALTER USER zabbix WITH ENCRYPTED password 'StrongPassword';
Hozzon létre egy új adatbázist a Zabbix számára.
CREATE DATABASE zabbix OWNER zabbix;
Kilépés a psqlhéjból.
\q
Váltás a sudofelhasználóra az aktuális postgresfelhasználóról.
exit
Telepítse a Zabbixot
A Zabbix bináris fájlokat biztosít a CentOS számára, amelyek közvetlenül a Zabbix tárhelyről telepíthetők. Adja hozzá a Zabbix adattárat a rendszeréhez.
sudo rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
Telepítse Zabbix serverés Zabbix web.
sudo yum -y install zabbix-server-pgsql zabbix-web-pgsql
Importálja a PostgreSQL adatbázist.
zcat /usr/share/doc/zabbix-server-pgsql-3.4.*/create.sql.gz | psql -U zabbix zabbix
A kimenet végén valami hasonlót kell látnia a következőhöz.
...
INSERT 0 1
INSERT 0 1
COMMIT
Nyissa meg a Zabbix konfigurációs fájlt az adatbázis részleteinek frissítéséhez.
sudo nano /etc/zabbix/zabbix_server.conf
Keresse meg a következő sorokat, és frissítse az értékeket az adatbázis-konfigurációnak megfelelően. Törölnie kell a DBHostés DBPortsorok megjegyzését .
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=StrongPassword
DBPort=5432
A Zabbix automatikusan telepíti az Apache virtuális gazdagépfájlját. Be kell állítanunk a virtuális gazdagépet az időzóna és a PHP verzió frissítéséhez.
sudo nano /etc/httpd/conf.d/zabbix.conf
Keresse meg a következő sorokat.
<IfModule mod_php5.c>
...
#php_value date.timezone Europe/Riga
Mivel a PHP 7-es verzióját használjuk, frissítenie kell a mod_phpverziót is. Frissítse a sorokat az Ön időzónájának megfelelően az alábbiak szerint.
<IfModule mod_php7.c>
...
php_value date.timezone Asia/Kolkata
Most indítsa újra az Apache-t, hogy alkalmazza ezeket a beállításokat.
sudo systemctl restart httpd
Indítsa el a Zabbix szervert, és engedélyezze az automatikus indulást rendszerindításkor.
sudo systemctl start zabbix-server
sudo systemctl enable zabbix-server
Most már futnia kell a Zabbix szervernek. Ennek futtatásával ellenőrizheti a folyamat állapotát.
sudo systemctl status zabbix-server
Módosítsa a tűzfalat, hogy engedélyezze a szabványt HTTPés a HTTPSportot. Engedélyeznie kell 10051a tűzfalon keresztüli portot is , amelyet a Zabbix arra használ, hogy lekérje az eseményeket a távoli gépeken futó Zabbix ügynöktől.
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-service=https
sudo firewall-cmd --zone=public --permanent --add-port=10051/tcp
sudo firewall-cmd --reload
To access the administration dashboard, you can open http://192.0.2.1/zabbix using your favorite browser. You will see a welcome message. You should have all the prerequisites satisfied on the next interface. Follow the instructions on the installer page to install the software. Once the software has been installed, login using the username Admin and password zabbix. Zabbix is now installed and ready to collect the data from the Zabbix agent.
Setup a Zabbix Agent on the Server
To monitor the server on which Zabbix is installed, you can set up the agent on the server. The Zabbix agent will gather the event data from the Linux server to send it to the Zabbix server. By default, port 10050 is used to send the events and data to the server.
Install the Zabbix agent.
sudo yum -y install zabbix-agent
Start the agent and enable it to automatically start at boot.
sudo systemctl start zabbix-agent
sudo systemctl enable zabbix-agent
The communication between the Zabbix agent and the Zabbix server is done locally, thus there is no need to set up any encryption.
Before the Zabbix server can receive any data, you need to enable the host. Login to the web administration dashboard of the Zabbix server and go to Configuration >> Host. You will see a disabled entry of the Zabbix server host. Select the entry and click on the "Enable" button to enable the monitoring of the Zabbix server application and the base CentOS system on which the Zabbix server is installed.
Setup the Agent on Remote Linux Machines
There are three methods by which a remote Zabbix agent can send events to the Zabbix server. The first method is to use an unencrypted connection, and the second is using a secured pre-shared key. The third and most secure way is to encrypt the transmission using RSA certificates.
Before we proceed to install and configure the Zabbix agent on the remote machine, we need to generate the certificates on the Zabbix server system. We will use self-signed certificates.
Run the following commands on the Zabbix server as a sudo user.
Create a new directory to store Zabbix keys and generate the private key for the CA.
mkdir ~/zabbix-keys && cd ~/zabbix-keys
openssl genrsa -aes256 -out zabbix-ca.key 4096
It will ask you for a passphrase to protect the private key. Once the private key has been generated, proceed to generate the certificate for the CA.
openssl req -x509 -new -key zabbix-ca.key -sha256 -days 3560 -out zabbix-ca.crt
Adja meg a privát kulcs jelszavát. Kérni fog néhány részletet országáról, államáról, szervezetéről. Ennek megfelelően adja meg a részleteket.
[user@vultr zabbix-keys]$ openssl req -x509 -new -key zabbix-ca.key -sha256 -days 3560 -out zabbix-ca.crt
Enter passphrase 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) [XX]:IN
State or Province Name (full name) []:My State
Locality Name (eg, city) [Default City]:My City
Organization Name (eg, company) [Default Company Ltd]:My Organization
Organizational Unit Name (eg, section) []:My Unit
Common Name (eg, your name or your server's hostname) []:Zabbix CA
Email Address []:mail@example.com
Sikeresen létrehoztuk a CA-tanúsítványt. A Zabbix szerver privát kulcsának és CSR-jének létrehozása.
openssl genrsa -out zabbix-server.key 2048
openssl req -new -key zabbix-server.key -out zabbix-server.csr
Kérjük, ne adjon meg jelszót a privát kulcs titkosításához a fenti parancs futtatásakor. A CSR segítségével hozza létre a tanúsítványt a Zabbix szerver számára.
openssl x509 -req -in zabbix-server.csr -CA zabbix-ca.crt -CAkey zabbix-ca.key -CAcreateserial -out zabbix-server.crt -days 1825 -sha256
Hasonló módon hozza létre a privát kulcsot és a CSR-t a Zabbix gazdagéphez vagy ügynökhöz.
openssl genrsa -out zabbix-host1.key 2048
openssl req -new -key zabbix-host1.key -out zabbix-host1.csr
Most állítsa elő a tanúsítványt.
openssl x509 -req -in zabbix-host1.csr -CA zabbix-ca.crt -CAkey zabbix-ca.key -CAcreateserial -out zabbix-host1.crt -days 1460 -sha256
Másolja a tanúsítványokat a Zabbix konfigurációs könyvtárába.
sudo mkdir /etc/zabbix/keys
sudo cp zabbix-ca.* zabbix-server.* /etc/zabbix/keys
Adja meg a Zabbixfelhasználónak a tanúsítványok tulajdonjogát .
sudo chown -R zabbix: /etc/zabbix/keys
Nyissa meg a Zabbix szerver konfigurációs fájlját a tanúsítványok elérési útjának frissítéséhez.
sudo nano /etc/zabbix/zabbix_server.conf
Keresse meg ezeket a sorokat a konfigurációs fájlban, és módosítsa őket az ábra szerint.
TLSCAFile=/etc/zabbix/keys/zabbix-ca.crt
TLSCertFile=/etc/zabbix/keys/zabbix-server.crt
TLSKeyFile=/etc/zabbix/keys/zabbix-server.key
Mentse el a fájlt, és lépjen ki a szerkesztőből. Indítsa újra a Zabbix szervert, hogy a konfiguráció módosítása érvénybe lépjen.
sudo systemctl restart zabbix-server
Másolja a tanúsítványokat a scpparanccsal a figyelni kívánt gazdagépre.
cd ~/zabbix-keys
scp zabbix-ca.crt zabbix-host1.* user@192.0.2.2:~
Győződjön meg arról, hogy cserélje 192.0.2.2ki annak a távoli gazdagépnek a tényleges IP-címére, amelyre a Zabbix ügynököt telepíteni kívánja.
Telepítse a Zabbix Host-ot
Most, hogy a tanúsítványokat átmásoltuk a gazdagépre, készen állunk a Zabbix ügynök telepítésére.
Mostantól minden parancsot végre kell hajtani azon a gazdagépen, amelyet figyelni kíván .
Adja hozzá a Zabbix adattárat a rendszerhez.
sudo rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
Telepítse a Zabbix ügynököt a rendszerbe.
sudo yum -y install zabbix-agent
Helyezze át a kulcsot és a tanúsítványokat a Zabbix konfigurációs könyvtárába.
sudo mkdir /etc/zabbix/keys
sudo mv ~/zabbix-ca.crt ~/zabbix-host1.* /etc/zabbix/keys/
Adja meg a tanúsítványok tulajdonjogát a Zabbix felhasználónak.
sudo chown -R zabbix: /etc/zabbix/keys
Nyissa meg a Zabbix ügynök konfigurációs fájlját a kiszolgáló IP-címének, valamint a kulcs és a tanúsítványok elérési útjának frissítéséhez.
sudo nano /etc/zabbix/zabbix_agentd.conf
Keresse meg a következő sort, és végezze el a szükséges módosításokat, hogy az alábbiak szerint nézzenek ki.
Server=192.0.2.1 # Replace with actual Zabbix server IP
ServerActive=192.0.2.1 # Replace with actual Zabbix server IP
Hostname=Zabbix host1 # Provide a appropriate name or hostname
A gazdagépnévnek egyedi karakterláncnak kell lennie, amely nincs megadva egyetlen másik gazdagéphez sem. Kérjük, jegyezze fel a gazdagépnevet, mert a Zabbix szerveren be kell állítanunk a pontos gazdagépnevet.
Továbbá frissítse ezen paraméterek értékeit.
TLSConnect=cert
TLSAccept=cert
TLSCAFile=/etc/zabbix/keys/zabbix-ca.crt
TLSCertFile=/etc/zabbix/keys/zabbix-host1.crt
TLSKeyFile=/etc/zabbix/keys/zabbix-host1.key
Most indítsa újra a Zabbix ügynököt, és engedélyezze, hogy rendszerindításkor automatikusan elinduljon.
sudo systemctl restart zabbix-agent
sudo systemctl enable zabbix-agent
Sikeresen konfigurálta a Zabbix ügynököt a gazdagépen. Böngésszen a Zabbix adminisztrációs irányítópultján a címen https://192.0.2.1/zabbixaz újonnan konfigurált gazdagép hozzáadásához.
Lépjen ide, Configuration >> Hostsés kattintson a Create Hostjobb felső sarokban található gombra.

Az create hostinterfészen adja meg a gazdagépnevet, amelynek pontosan meg kell egyeznie a gazdagép rendszer Zabbix ügynök konfigurációs fájljában konfigurált gazdagépnévvel. A megjelenített névhez szabadon választhat bármit, amit szeretne.
![Hogyan lehet biztonságosan figyelni a távoli kiszolgálókat a Zabbix használatával a CentOS 7 rendszeren Hogyan lehet biztonságosan figyelni a távoli kiszolgálókat a Zabbix használatával a CentOS 7 rendszeren]()
Válassza ki azt a csoportot, amelyhez hozzá szeretné adni a rendszert. Mivel a Zabbix ügynököt futtatjuk egy alap Linux szerver figyelésére, választhatjuk a Linux szervercsoportot. Ha akarja, új csoportot is létrehozhat.
Adja meg annak a gazdagépnek az IP-címét, amelyen a Zabbix ügynök fut. Opcionálisan megadhatja a gazdagép leírását.
Most lépjen Templateaz új gazdagép felület lapjára, és keresse meg a sablont az alkalmazásnak megfelelően. Esetünkben meg kell találnunk a Template OS Linux. Kattintson a Addhivatkozásra a sablon hozzárendeléséhez a gazdagéphez.
![Hogyan lehet biztonságosan figyelni a távoli kiszolgálókat a Zabbix használatával a CentOS 7 rendszeren Hogyan lehet biztonságosan figyelni a távoli kiszolgálókat a Zabbix használatával a CentOS 7 rendszeren]()
Végül lépjen a Encryptionlapra, és válassza ki a Certificatelehetőséget mind a gazdagéphez, mind a gazdagéptől származó kapcsolatokhoz. Így a kommunikáció mindkét oldalról az RSA tanúsítványokkal titkosítva lesz. A Issuerés Subjectmezők nem kötelezőek.
![Hogyan lehet biztonságosan figyelni a távoli kiszolgálókat a Zabbix használatával a CentOS 7 rendszeren Hogyan lehet biztonságosan figyelni a távoli kiszolgálókat a Zabbix használatával a CentOS 7 rendszeren]()
Ha elkészült, a Addgombra kattintva hozzáadhatja az új gazdagépet a Zabbix szerverhez. Néhány perc múlva az ZBXelérhetőség zöldre vált. Ez azt jelenti, hogy a gazdagép elérhető a Zabbix ügynök használatával, és aktívan küldi az eseményeket a gazdagépről a Zabbix szerverre.
![Hogyan lehet biztonságosan figyelni a távoli kiszolgálókat a Zabbix használatával a CentOS 7 rendszeren Hogyan lehet biztonságosan figyelni a távoli kiszolgálókat a Zabbix használatával a CentOS 7 rendszeren]()
Ha az ZBXelérhetőség redzöld helyett színesre vált, az azt jelenti, hogy hiba történt, és a gazdagép nem tud adatokat küldeni a szervernek. Ebben az esetben keresse meg a hibát a naplófájlokban, és ennek megfelelően végezze el a hiba elhárítását. A Zabbix szervernapló és a Zabbix ügynöknapló elérési útja /var/log/zabbix/zabbix_server.log, és/var/log/zabbix/zabbix_agentd.log .
Most már figyelheti a gazdagépet a monitoringlapra lépve. A felügyeleti oldalakon megtekintheti a problémákat, a fogadott eseményeket, az élő grafikonokat és még sok más információt.
![Hogyan lehet biztonságosan figyelni a távoli kiszolgálókat a Zabbix használatával a CentOS 7 rendszeren Hogyan lehet biztonságosan figyelni a távoli kiszolgálókat a Zabbix használatával a CentOS 7 rendszeren]()
Következtetés
Gratulálunk, sikeresen telepítette a Zabbix kiszolgálópéldányt, és engedélyezte a megfigyelést egy távoli gazdagépen.
Egyetlen Zabbix-példány használatával nyomon követheti kis- vagy középvállalata teljes infrastruktúráját.