GNU/Linux >> Linux Esercitazione >  >> Debian

Come installare e configurare Zabbix su Debian 9 Linux

Zabbix è un software open source maturo per il monitoraggio di reti e applicazioni. Zabbix può raccogliere metriche da vari dispositivi, sistemi e applicazioni di rete. In caso di guasti, Zabbix invierà avvisi di notifica tramite vari metodi.

Zabbix supporta il monitoraggio sia basato su agente che senza agente. L'agente Zabbix ha un ingombro ridotto e può essere eseguito su varie piattaforme, tra cui Linux, UNIX, macOS e Windows.

Questo tutorial spiega come installare e configurare l'ultima versione di Zabbix 4.0 su un server Debian 9 Linux utilizzando MySQL come database back-end. Ti mostreremo anche come installare l'agente Zabbix su un host remoto e aggiungere l'host al server Zabbix.

Prerequisiti #

L'utente con cui hai effettuato l'accesso deve disporre dei privilegi sudo per poter installare i pacchetti.

Creazione del database MySQL #

Zabbix supporta sia MySQL/MariaDB che PostgreSQL. In questa guida utilizzeremo MariaDB come database back-end.

Se non hai MariaDB installato sul tuo server Debian, installalo seguendo queste istruzioni.

Accedi alla console MySQL:

sudo mysql

Esegui la seguente istruzione SQL per creare un nuovo database:

CREATE DATABASE zabbix CHARACTER SET utf8 collate utf8_bin;

Quindi, crea un account utente MySQL e concedi l'accesso al database:

GRANT ALL ON zabbix.* TO 'zabbix'@'localhost' IDENTIFIED BY 'change-with-strong-password';
Assicurati di modificare change-with-strong-password con una password complessa.

Al termine, esci dalla console MySQL digitando:

EXIT;

Installazione di Zabbix su Debian #

Al momento della stesura di questo articolo, l'ultima versione stabile di Zabbix è la versione 4.0. I pacchetti Zabbix disponibili nei repository Debian sono spesso obsoleti, quindi utilizzeremo il repository Zabbix ufficiale.

1. Installazione di Zabbix #

Scarica l'ultimo repository Zabbix .deb pacchetto con il seguente comando wget:

wget https://repo.zabbix.com/zabbix/4.0/debian/pool/main/z/zabbix-release/zabbix-release_4.0-2+stretch_all.deb

Una volta scaricato il file, installalo con:

sudo apt install ./zabbix-release_4.0-2+stretch_all.deb

Aggiorna l'elenco dei pacchetti e installa il server Zabbix, il frontend web con supporto per database MySQL e l'agente Zabbix:

sudo apt updatesudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent

Il comando sopra installerà anche Apache, PHP e tutti i moduli PHP richiesti.

2. Configurazione di PHP per Zabbix frontend #

Durante l'installazione viene creato un file di configurazione di Apache con tutte le impostazioni Apache e PHP richieste.

Apri il file di configurazione, decommenta la riga del fuso orario e cambiala nel tuo fuso orario. Puoi trovare l'elenco completo dei fusi orari supportati da PHP qui.

/etc/apache2/conf-enabled/zabbix.conf
...
    <IfModule mod_php7.c>
        php_value max_execution_time 300
        php_value memory_limit 128M
        php_value post_max_size 16M
        php_value upload_max_filesize 2M
        php_value max_input_time 300
        php_value max_input_vars 10000
        php_value always_populate_raw_post_data -1
        php_value date.timezone America/Denver
    </IfModule>
...

Al termine, salva il file e riavvia il servizio Apache per attivare le modifiche.

sudo systemctl restart apache2

3. Configurazione del database MySQL per Zabbix Server #

Importa il file di dump MySQL che include uno schema iniziale e dati per il server Zabbix con MySQL.

gunzip < /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix

Quando richiesto, inserisci la password utente che hai creato in precedenza. In caso di successo, non viene fornito alcun output.

Quindi, apri la configurazione di Zabbix e imposta la password del database:

sudo nano /etc/zabbix/zabbix_server.conf

Cerca nella sezione seguente, decommenta il DBPassword direttiva e aggiungere la password del database.

/etc/zabbix/zabbix_server.conf
...
### Option: DBPassword
#       Database password.
#       Comment this line if no password is used.
#
# Mandatory: no
# Default:
DBPassword=change-with-strong-password
...

Salva e chiudi il file.

Riavvia e abilita il server Zabbix e i servizi dell'agente:

sudo systemctl restart zabbix-server zabbix-agentsudo systemctl enable zabbix-server zabbix-agent

Verifica che il server Zabbix sia in esecuzione:

sudo systemctl status zabbix-server
● zabbix-server.service - Zabbix Server
   Loaded: loaded (/lib/systemd/system/zabbix-server.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2019-01-28 15:37:21 CST; 35s ago
 Main PID: 27632 (zabbix_server)
   CGroup: /system.slice/zabbix-server.service
   ...

Installazione e configurazione di Zabbix Frontend #

L'interfaccia web di Zabbix è scritta in PHP e ti consente di configurare il server, visualizzare i dati raccolti e aggiungere host che desideri monitorare.

PER avviare l'installazione, apri il tuo browser preferito e digita il nome di dominio del tuo server o l'indirizzo IP pubblico seguito da /zabbix :

http(s)://your_domain_or_ip_address/zabbix

Nella prima schermata, ti verrà presentato un messaggio di benvenuto. Fai clic su Next step per continuare.

Successivamente, vedrai una pagina informativa con un elenco dei pacchetti PHP necessari per eseguire Zabbix Frontend. Scorri verso il basso per verificare che tutto sia installato e configurato correttamente. Una volta verificato, fai clic su Next step per procedere.

Nella schermata successiva, la procedura guidata di configurazione ti chiederà di inserire i dettagli della connessione al database. Inserisci l'utente MySQL e i dettagli del database che hai creato in precedenza.

L'immissione di un nome per il server è facoltativa. Inseriscilo se hai più di un server di monitoraggio Zabbix. Se fornito, verrà visualizzato nella barra dei menu e nei titoli delle pagine.

Fai clic su Next step per continuare.

Nella schermata successiva, vedrai il riepilogo della preinstallazione.

Fai clic su Next step e una volta completata l'installazione verrai indirizzato a una pagina che mostra che l'interfaccia web di Zabbix è stata installata. Per accedere alla tua pagina di accesso Zabbix clicca su Finish pulsante.

L'utente predefinito è "Admin" e la password è "zabbix". Inserisci username e password e clicca su Log in pulsante.

Una volta effettuato l'accesso, verrai reindirizzato alla dashboard di amministrazione di Zabbix.

Da qui, puoi iniziare a personalizzare la tua installazione di Zabbix e ad aggiungere nuovi host. Innanzitutto, è necessario modificare la password corrente. Per farlo, vai alla pagina del profilo utente facendo clic sull'icona del profilo nella barra di navigazione in alto.

Aggiunta di un nuovo host al server Zabbix #

La procedura per aggiungere un nuovo host per il monitoraggio al server Zabbix comprende due passaggi.

Innanzitutto, devi installare l'agente Zabbix sull'host remoto e quindi aggiungere l'host al server Zabbix tramite l'interfaccia web.

Installazione dell'agente Zabbix #

Questo tutorial presuppone che anche la macchina host utilizzi Debian 9.

Come quando si installa il server Zabbix, eseguire i seguenti comandi per abilitare il repository Zabbix:

wget https://repo.zabbix.com/zabbix/4.0/debian/pool/main/z/zabbix-release/zabbix-release_4.0-2+stretch_all.debsudo apt install ./zabbix-release_4.0-2+stretch_all.deb

Aggiorna l'elenco dei pacchetti e installa il pacchetto dell'agente Zabbix:

sudo apt updatesudo apt install zabbix-agent

Zabbix supporta due metodi per la crittografia della comunicazione server-client, la chiave precondivisa (PSK) e la crittografia basata su certificati. In questa guida utilizzeremo il metodo delle chiavi precondivise (PSK) per proteggere la connessione tra il server e l'agente.

Esegui il comando seguente per generare una chiave precondivisa e salvarla in un file:

openssl rand -hex 32 | sudo tee /etc/zabbix/zabbix_agentd.psk

La chiave PSK sarà simile a questa:

fc3077ed3db8589ec920ac98a7ddea96aca205eb63bbd29c66ae91743a7ecbb6

Apri il file di configurazione dell'agente Zabbix:

sudo nano /etc/zabbix/zabbix_agentd.conf

Cerca il Server Indirizzo IP e cambialo dal valore predefinito all'IP del tuo server Zabbix:

/etc/zabbix/zabbix_agentd.conf
...
### Option: Server
#       List of comma delimited IP addresses, optionally in CIDR notation, or DNS names of Zabbix servers and Zabbix proxies.
#       Incoming connections will be accepted only from the hosts listed here.
#       If IPv6 support is enabled then '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' are treated equally
#       and '::/0' will allow any IPv4 or IPv6 address.
#       '0.0.0.0/0' can be used to allow any IPv4 address.
#       Example: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com
#
# Mandatory: yes, if StartAgents is not explicitly set to 0
# Default:
# Server=

Server=127.0.0.1
...

Quindi, trova il TSLConnect opzione, decommentalo e impostalo su psk :

/etc/zabbix/zabbix_agentd.conf
...
### Option: TLSConnect
#       How the agent should connect to server or proxy. Used for active checks.
#       Only one value can be specified:
#               unencrypted - connect without encryption
#               psk         - connect using TLS and a pre-shared key
#               cert        - connect using TLS and a certificate
#
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
# Default:
TLSConnect=psk
...

Individua TLSAccept opzione, decommentalo e impostalo su psk :

/etc/zabbix/zabbix_agentd.conf
...
### Option: TLSAccept
#       What incoming connections to accept.
#       Multiple values can be specified, separated by comma:
#               unencrypted - accept connections without encryption
#               psk         - accept connections secured with TLS and a pre-shared key
#               cert        - accept connections secured with TLS and a certificate
#
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
# Default:
TLSAccept=psk
...

Quindi, trova TLSPSKIdentity opzione, decommentalo e impostalo su PSK 001 Il valore deve essere una stringa univoca:

/etc/zabbix/zabbix_agentd.conf
...
### Option: TLSPSKIdentity
#       Unique, case sensitive string used to identify the pre-shared key.
#
# Mandatory: no
# Default:
TLSPSKIdentity=PSK 001
...

Infine, individua il TLSPSKFile opzione, decommentarla e impostarla in modo che punti alla chiave precondivisa precedentemente creata:

/etc/zabbix/zabbix_agentd.conf
...
### Option: TLSPSKFile
#       Full pathname of a file containing the pre-shared key.
#
# Mandatory: no
# Default:
TLSPSKFile=/etc/zabbix/zabbix_agentd.psk
...

Al termine, salva e chiudi il file.

Avvia il servizio dell'agente Zabbix e impostalo per l'avvio all'avvio con:

sudo systemctl start zabbix-agentsudo systemctl enable zabbix-agent

Quindi, aggiungi una regola firewall che abiliti il ​​traffico dal tuo server Zabbix sulla porta TCP 10050 .

Supponendo che tu stia usando UFW per gestire il tuo firewall e vuoi consentire l'accesso dal 192.168.121.70 Indirizzo IP dovresti eseguire il seguente comando:

sudo ufw allow proto tcp from 192.168.121.70 to any port 10050

Configura un nuovo host #

Ora che l'agente sull'host remoto che desideri monitorare è installato e configurato, il passaggio successivo consiste nel registrare l'host sul server Zabbix.

Accedi all'interfaccia web di Zabbix Server come utente amministratore:

http(s)://your_domain_or_ip_address/zabbix

Una volta dentro, nella barra di navigazione in alto clicca su Configuration , quindi Hosts

Quindi, fai clic sul Create host blu pulsante nell'angolo in alto a destra dello schermo e si aprirà la pagina di configurazione dell'host:

Immettere il nome host e l'indirizzo IP della macchina host remota che si desidera monitorare. Aggiungi l'host a uno o più gruppi selezionando il gruppo dall'elenco oppure inserisci un nome di gruppo inesistente per crearne uno nuovo. I Linux Servers il gruppo è una buona scelta.

Al termine, fai clic su Templates scheda. Seleziona il Template OS Linux e fai clic su Add link per aggiungere il modello all'host.

Quindi, fai clic su Encryption scheda. Seleziona PSK per entrambi Connections to host e Connections from host .

Imposta l'PSK identity valore a PSK 001 , il valore di TLSPSKIdentity opzione dell'agente Zabbix che hai configurato nel passaggio precedente.

Nel PSK value archiviato aggiungi la chiave che hai generato per l'agente Zabbix, quella memorizzata nel /etc/zabbix/zabbix_agentd.psk file.

Infine, per aggiungere l'host, fai clic sul pulsante blu Aggiungi button .


Debian
  1. Come installare e configurare ZFS su Linux usando Debian Jessie 8.1

  2. Come installare e configurare la finestra mobile su Debian 11

  3. Come installare e configurare Mariadb 10 in Debian 11

  4. Come installare e configurare MongoDB 5 su Debian 11

  5. Come installare e configurare Redis 6 su Debian 11

Come installare e configurare Monit su Debian 9

Come installare e configurare il server di monitoraggio Zabbix su Linux

Come installare e configurare Nagios su Linux

Come installare e configurare Git in Debian 11

Come installare e configurare KVM su Debian 11 Bullseye Linux

Come installare e configurare Apache su Debian 11?