Nell'ultimo post, abbiamo spiegato come installare Icinga 2 su CentOS 8 / RHEL 8. Passiamo ora all'installazione di Icinga web 2, un'interfaccia web per Icinga 2, dove puoi monitorare tutti i tuoi server.
Qui vedremo come installare Icinga web 2 CentOS 8 / RHEL 8.
Installa Icinga Web 2
Installa estensioni PHP e PHP
Installa il pacchetto PHP (v7.2) e le estensioni per Icinga Web 2.
LEGGI: Come installare PHP 7.4 / 7.3 su CentOS 8 / RHEL 8
dnf install -y php php-json php-xml php-intl php-common php-pdo php-mysqlnd php-cli php-mbstring php-fpm php-gd php-zip php-ldap
Installa Icinga Web 2
Usa il comando yum per installare il pacchetto Icinga Web 2 insieme a Icinga CLI e server web Apache.
dnf install -y icingaweb2 icingacli httpd
Avvia il server Web Apache e l'FPM PHP.
systemctl start httpd
systemctl start php-fpm
Abilita il server Web Apache e l'FPM PHP per l'avvio automatico all'avvio del sistema.
systemctl enable httpd
systemctl enable php-fpm
SELinux
Se il tuo sistema ha SELinux abilitato, installa il pacchetto seguente per impostare la politica SELinux per Icinga Web 2.
dnf install -y icingaweb2-selinux
Firewall
Consenti al traffico HTTP in Firewall di accedere all'interfaccia web di Icinga da macchine esterne.
firewall-cmd --permanent --add-service=http
firewall-cmd --reload
Imposta Icinga Web 2
Vai all'URL sottostante per accedere alla procedura guidata di configurazione di Icinga Web 2, che ti guiderà attraverso tutti i passaggi per l'installazione di Icinga Web 2.
http://tuo.ip.addr.ess/icingaweb2/setupPer motivi di sicurezza, dovrai generare il token per iniziare l'installazione di Icinga Web 2.
icingacli setup token create
Output: The newly generated setup token is: 08423344cc1ce96f
Copia e incolla il token generato nella pagina di configurazione, quindi fai clic su Avanti .

Nella schermata successiva, scegli i moduli per abilitarlo e configurarlo. Questi moduli sono stati installati durante l'installazione di Icinga 2. Quindi, fai clic su Avanti .

La pagina seguente mostra informazioni sul sistema, su PHP e sulle estensioni PHP richieste.


L'estensione PHP di Image Magick non è disponibile nel repository del sistema operativo. Segui il link sottostante per installarlo.
LEGGI: Come installare PHP Imagick su CentOS 8 / RHEL 8
Per RHEL 8, puoi scegliere di installarlo (che è contro le politiche di Red Hat) o procedere oltre senza installare l'estensione PHP di Image Magick.Dopo l'installazione del modulo PHP per Imagick, riavvia i servizi Apache e PHP FPM e fai clic su Aggiorna e quindi fare clic su Avanti oppure fai semplicemente clic su Avanti se non stai installando il modulo PHP Imagick.
systemctl restart httpd
systemctl restart php-fpm

Nella pagina successiva, configureremo l'autenticazione Icinga Web 2. Icinga Web 2 supporta Active Directory, LDAP e il meccanismo di autenticazione locale.
Qui, per questa demo, creeremo un account utente Icinga Web 2 locale. Quindi, seleziona il tipo di autenticazione come Database e fai clic su Avanti .

Accedi al server MySQL/MariaDB.
mysql -u root -p
Crea un database per memorizzare i dettagli di autenticazione.
CREATE DATABASE icingaweb2db;
grant all privileges on icingaweb2db.* to icingaweb2@localhost identified by 'icinga123';
quit
Immettere i dettagli del database nella pagina seguente e quindi fare clic su Avanti .

Fai clic su Avanti .

Immettere il nome utente e la password desiderati per l'account amministratore di Icinga Web 2.

Scegli dove salvare l'applicazione e registra le relative configurazioni. Fai clic su Avanti .

Rivedi le tue impostazioni nella schermata successiva.


Fai clic su Avanti .
Fai clic su Avanti sulla configurazione del modulo di monitoraggio per la pagina Icinga Web 2.

Il backend di monitoraggio consente a Icinga Web 2 di recuperare le informazioni di monitoraggio dal database di Icinga 2. Qui utilizziamo IDO.

Immettere i dettagli del database IDO nella pagina seguente e quindi fare clic su Avanti .
Il database IDO è stato creato durante l'installazione di Icinga 2, clicca QUI per ottenere i dettagli del database.
Imposta il trasporto dei comandi
Questa pagina spiega come inviare i comandi al server remoto per il monitoraggio.
Icinga Web 2 supporta File di comando locale, File di comando remoto e API Icinga 2 come trasporto dei comandi.
Qui, per questa demo, configureremo Icinga Web 2 con trasporto a comando singolo. Scegli uno dei seguenti comandi di trasporto
- File di comando locale
- API Icinga 2 (consigliata)
- File dei comandi remoti
È possibile definire più modalità di trasporto di comando in Icinga Web 2.
File di comando locale

API Icinga 2
Esegui il comando seguente per configurare l'API Icinga 2.
icinga2 api setup
Output: information/cli: Generating new CA. information/base: Writing private key to '/var/lib/icinga2/ca//ca.key'. information/base: Writing X509 certificate to '/var/lib/icinga2/ca//ca.crt'. information/cli: Generating new CSR in '/var/lib/icinga2/certs//centos8.itzgeek.local.csr'. information/base: Writing private key to '/var/lib/icinga2/certs//centos8.itzgeek.local.key'. information/base: Writing certificate signing request to '/var/lib/icinga2/certs//centos8.itzgeek.local.csr'. information/cli: Signing CSR with CA and writing certificate to '/var/lib/icinga2/certs//centos8.itzgeek.local.crt'. information/pki: Writing certificate to file '/var/lib/icinga2/certs//centos8.itzgeek.local.crt'. information/cli: Copying CA certificate to '/var/lib/icinga2/certs//ca.crt'. information/cli: Adding new ApiUser 'root' in '/etc/icinga2/conf.d/api-users.conf'. information/cli: Reading '/etc/icinga2/icinga2.conf'. information/cli: Enabling the 'api' feature. Enabling feature api. Make sure to restart Icinga 2 for these changes to take effect. information/cli: Updating 'NodeName' constant in '/etc/icinga2/constants.conf'. information/cli: Created backup file '/etc/icinga2/constants.conf.orig'. information/cli: Updating 'ZoneName' constant in '/etc/icinga2/constants.conf'. information/cli: Backup file '/etc/icinga2/constants.conf.orig' already exists. Skipping backup. Done. Now restart your Icinga 2 daemon to finish the installation!
Ottieni i dettagli utente dell'API dal file /etc/icinga2/conf.d/api-users.conf.
cat /etc/icinga2/conf.d/api-users.conf
Output: /** * The ApiUser objects are used for authentication against the API. */ object ApiUser "root" { password = "c6bbfdd8afceceb1" // client_cn = "" permissions = [ "*" ] }
Riavvia il servizio Icinga 2.
systemctl restart icinga2
Usa il nome utente e la password sopra riportati nella pagina di trasporto dei comandi di seguito.

Inserisci i dettagli delle variabili da proteggere da quelle dannose.

Rivedi le tue configurazioni di monitoraggio.

Icinga Web 2 è stato configurato correttamente. Fare clic su Accedi a Icinga Web 2 .

Accedi a Icinga Web 2
Accedi a Icinga Web 2 utilizzando l'account amministratore che abbiamo creato in precedenza.

Ora dovresti ottenere la dashboard di Icinga Web 2.

Conclusione
È tutto. Nel prossimo articolo, aggiungeremo client Linux remoti a Icinga 2.