Come installare Icinga 2 e Icinga Web 2 su Ubuntu 16.04

Icinga 2 è un sistema di monitoraggio delle risorse di rete open source ampiamente utilizzato e Icinga Web 2 è l'interfaccia Web ufficiale per Icinga 2.

In questo tutorial, spiegherò come installarli entrambi su un server Ubuntu 16.04.

Prerequisiti

  • Un'istanza del server Vultr Ubuntu 16.04 appena distribuita.
  • Un utente sudo. Per ulteriori informazioni sulla creazione di un utente sudo su Ubuntu, vedere le istruzioni su Debian in un altro tutorial di Vultr .

Passaggio 1: aggiornare il sistema

Accedere da un terminale SSH come utente sudo, quindi aggiornare il sistema all'ultimo stato stabile usando i seguenti comandi:

sudo apt-get update -y
sudo apt-get upgrade -y
sudo shutdown -r now

Dopo il riavvio, utilizzare lo stesso utente sudo per accedere.

Passaggio 2: installare Apache

Installa Apache usando il seguente comando:

sudo apt-get install apache2 -y

Elimina la pagina di benvenuto predefinita di Ubuntu Apache:

sudo rm /var/www/html/index.html

Per motivi di sicurezza, è necessario vietare ad Apache di esporre /var/www/htmlai visitatori file e directory all'interno della directory radice Web :

sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/apache2/apache2.conf

Avviare il servizio Apache e avviarlo all'avvio:

sudo systemctl start apache2.service
sudo systemctl enable apache2.service

Passaggio 3: configurare il firewall UFW

Per impostazione predefinita, il firewall UFW è disabilitato su un'istanza del server Vultr Ubuntu 16.04 appena distribuita. Utilizzare i comandi seguenti per abilitare il firewall UFW e consentire il traffico in entrata di SSH, HTTP e HTTPS:

sudo ufw app list
sudo ufw allow OpenSSH
sudo ufw allow in "Apache Full"
sudo ufw enable

Passaggio 4: installare MariaDB

4.1) Utilizzare il seguente comando per installare MariaDB:

sudo apt-get install mariadb-client mariadb-server -y

4.2) Avviare il servizio MariaDB:

sudo systemctl start mysql.service
sudo systemctl enable mysql.service

4.3) Assicurare l'installazione di MariaDB:

sudo /usr/bin/mysql_secure_installation

Durante il processo interattivo, rispondi alle domande una ad una come di seguito:

Enter current password for root (enter for none): Enter
Set root password? [Y/n]: Y
New password: <your-password>
Re-enter new password: <your-password>
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y

Nota : sostituire <your-password>con la propria password di root MySQL.

4.4) Modifica il plug-in di autenticazione rootdell'utente MySQL :

sudo mysql -u root -p

Utilizzare la password di root MariaDB impostata in precedenza per accedere.

Nella shell di MySQL:

UPDATE mysql.user SET authentication_string=PASSWORD('<your-password>'), plugin='mysql_native_password' WHERE user='root';
FLUSH PRIVILEGES;
EXIT;

Nota : sostituire <your-password>con la propria password di root MySQL.

Passaggio 5: installa PHP

Installa PHP 7.0 e diverse estensioni per Icinga 2 e Icinga Web 2:

sudo apt-get install php7.0 libapache2-mod-php7.0 php7.0-gd php7.0-intl php7.0-xml php7.0-ldap php7.0-mysql php7.0-pgsql php-imagick -y

Installa la versione corrente di Composer:

cd
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === 'e115a8dc7871f15d853148a7fbac7da27d6c0030b848d9b3dc09e2a0388afed865e6a3d6b3c0fad45c48e2b5fc1196ae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"

Nota : i comandi sopra potrebbero non essere aggiornati in futuro, quindi dovresti sempre ottenere l'ultima versione dal sito ufficiale di Composer .

Per comodità, sposta lo script Composer composer.pharin /usr/local/bine rinominalo composer:

sudo mv ~/composer.phar /usr/local/bin/composer

Installa zip e decomprimi:

sudo apt-get install zip unzip -y

Installa il componente Db ZendFramework usando Composer:

composer require zendframework/zend-db

Quindi è necessario impostare il fuso orario corretto per la propria macchina, che può essere determinato dal sito Web ufficiale di PHP . Ad esempio, se l'istanza del server risiede nel data center di Vultr Los Angeles, il valore del fuso orario è America/Los_Angeles.

Apri il file di configurazione di PHP con l'editor vi:

sudo vi /etc/php/7.0/apache2/php.ini

Trova la linea:

;date.timezone =

Modificalo in:

date.timezone = America/Los_Angeles

Salva ed esci:

:wq!

Riavvia il servizio Apache per rendere effettive le nuove impostazioni:

sudo systemctl restart apache2.service

Passaggio 6: installa Icinga 2 e i suoi plugin

Imposta il repository APT Icinga:

cd
wget -O - http://packages.icinga.org/icinga.key | sudo apt-key add -
sudo add-apt-repository 'deb http://packages.icinga.org/ubuntu icinga-xenial main'
sudo apt-get update

Installa Icinga 2 e diversi plugin usando il repository APT Icinga:

sudo apt-get install icinga2 nagios-plugins -y

Per ulteriori informazioni sui plug-in Icinga 2, visitare il sito Web del progetto Plugin di monitoraggio .

Avvia il servizio Icinga 2:

sudo systemctl start icinga2.service
sudo systemctl enable icinga2.service

Per impostazione predefinita, il programma Icinga 2 abiliterà tre funzionalità: checker, mainlog e notifica. Puoi confermare che usando il seguente comando:

sudo icinga2 feature list

Passaggio 7: installare i moduli IDO di Icinga 2

7.1) Installare i moduli IDO (Icinga Data Output) per MySQL

sudo apt-get install icinga2-ido-mysql

Nella Configuring icinga2-ido-mysqlprocedura guidata, quando ti viene chiesto se desideri abilitare la funzione ido-mysql di Icinga 2, scegli <No>. Abiliteremo manualmente questa funzione in un secondo momento.

Quando ti viene chiesto se desideri configurare un database per icinga2-ido-mysql, scegli <No>. Al contrario, è possibile creare manualmente un database come spiegato nel passaggio 7.2.

7.2) Creare un database per Icinga 2

Accedi alla shell MySQL come root:

sudo mysql -u root -p

Utilizzare la password di root MariaDB impostata nel passaggio 4 per accedere.

Nella shell MySQL, creare un database denominato icingae un utente del database denominato icingacon la password icinga, quindi concedere i privilegi su questo database a questo utente del database.

CREATE DATABASE icinga;
GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga.* TO 'icinga'@'localhost' IDENTIFIED BY 'icinga';
FLUSH PRIVILEGES;
EXIT;

7.3) Importare lo schema IDO di Icinga 2

sudo mysql -u root -p icinga < /usr/share/icinga2-ido-mysql/schema/mysql.sql

Quando richiesto, immettere la password di root MariaDB per completare il processo.

7.4) Abilitare il modulo IDO MySQL

sudo vi /etc/icinga2/features-available/ido-mysql.conf

Trova queste righe:

user = "icinga2",
password = "",
host = "localhost",
database = "icinga2"

Modificali come di seguito:

user = "icinga"
password = "icinga"
host = "localhost"
database = "icinga"

Salva ed esci:

:wq!

Abilita la funzione ido-mysql:

sudo icinga2 feature enable ido-mysql
sudo systemctl restart icinga2.service

Passaggio 8: installare Icinga Web 2

8.1) Configurare la pipe di comando esterna

sudo icinga2 feature enable command
sudo systemctl restart icinga2.service
sudo icinga2 feature list

Prima di poter inviare comandi a Icinga 2 utilizzando un'interfaccia Web, è necessario aggiungere l' www-datautente al icingacmdgruppo:

sudo groupadd icingacmd
sudo usermod -a -G icingacmd www-data

Utilizzare il comando seguente per confermare la configurazione:

id www-data

8.2) Installare i pacchetti Icinga Web 2

sudo apt-get install icingaweb2 icingaweb2-module-monitoring icingaweb2-module-doc icingacli -y

Puntare la directory principale Web di Apache in una posizione specificata da Icinga Web 2:

sudo icingacli setup config webserver apache --document-root /usr/share/icingaweb2/public
sudo systemctl restart apache2.service

8.3) Installazione del database Icinga Web 2

sudo mysql -u root -p

CREATE DATABASE icingaweb2;
EXIT;

8.4) Caricare lo schema del database Icinga Web 2

mysql -u root -p icingaweb2 < /usr/share/icingaweb2/etc/schema/mysql.schema.sql

8.5) Generare un token di installazione per un uso successivo nella procedura guidata di installazione Web di Icinga Web 2

sudo icingacli setup token create

8.6) Avviare la procedura guidata di installazione di Icinga 2 nell'interfaccia web

Puntare il browser Web al seguente URL:

http://<your-serve-ip>/icingaweb2/setup

8.7) Nella pagina iniziale, immettere il token di installazione generato in precedenza, quindi fare clic sul Nextpulsante.

8.8) Nella pagina Moduli, selezionare uno o più moduli che si desidera abilitare (almeno, il Monitoringmodulo è richiesto), quindi fare clic sul Nextpulsante.

8.9) Nella pagina Requisiti, assicurarsi che ogni elemento richiesto sia soddisfatto, quindi fare clic sul Nextpulsante.

8.10) Nella pagina Autenticazione, è necessario scegliere il metodo di autenticazione quando si accede a Icinga Web 2. Qui è possibile scegliere Database, quindi fare clic sul Nextpulsante.

8.11) Nella pagina delle risorse del database, compilare tutti i campi richiesti come di seguito, quindi fare clic sul Nextpulsante.

  • Nome risorsa *: icingaweb_db
  • Tipo di database *: MySQL
  • Host *: localhost
  • Nome database *: icingaweb2
  • Nome utente *: root
  • Password *: <MariaDB-root-password>

8.12) Nella pagina Backend di autenticazione, utilizzando il nome back-end predefinito icingaweb2, fare clic sul Nextpulsante per andare avanti.

8.13) Nella pagina di amministrazione, imposta il primo account amministrativo di Icinga Web 2 (diciamo che è icingaweb2admin) e la password (diciamo che è icingaweb2pass), quindi fai clic sul Nextpulsante.

8.14) Nella pagina Configurazione applicazione, è possibile regolare le opzioni di configurazione relative all'applicazione e alla registrazione in base alle proprie esigenze. Per ora, puoi utilizzare i valori predefiniti elencati di seguito e fare clic sul Nextpulsante per procedere.

  • Mostra Stacktraces: selezionato
  • Tipo di archiviazione delle preferenze dell'utente *: database
  • Tipo di registrazione *: Syslog
  • Livello di registrazione *: errore
  • Prefisso applicazione *: icingaweb2

8.15) Nella pagina Revisione, ricontrolla la tua configurazione, quindi fai clic sul Nextpulsante.

8.16) Nella pagina di benvenuto della configurazione del modulo di monitoraggio, fare clic sul Nextpulsante.

8.17) Nella pagina Monitoraggio back-end, utilizzare il nome back-end predefinito icingae il tipo di back-end IDO, quindi fare clic sul Nextpulsante.

8.18) Nella pagina Monitoraggio risorse IDO, immettere i dettagli del database IDO impostati in precedenza, quindi fare clic sul Nextpulsante.

  • Nome risorsa *: icinga_ido
  • Tipo di database *: MySQL
  • Host *: localhost
  • Nome database *: icinga
  • Nome utente *: icinga
  • Password *: icinga

8.19) Nella pagina Trasporto comandi, utilizzare ancora questi valori predefiniti elencati di seguito. Fai clic sul Nextpulsante per andare avanti.

  • Nome trasporto *: icinga2
  • Tipo di trasporto *: file di comando locale
  • File di comando *: /var/run/icinga2/cmd/icinga2.cmd

8.20) Nella pagina Sicurezza monitoraggio, utilizzare ancora il valore predefinito:

  • Variabili personalizzate protette: * pw *, * pass *, community

Fare clic sul Nextpulsante per passare alla pagina successiva.

8.21) Nella pagina di revisione, ricontrolla la tua configurazione, quindi fai clic sul Finishpulsante.

8.22) Complimenti! pagina, fare clic sul Login to Icinga Web 2pulsante per passare alla pagina di accesso di Icinga Web 2. Utilizzare l'account amministrativo e la password Icinga Web 2 impostati in precedenza per accedere. Sentiti libero di esplorare la dashboard di Icinga Web 2.

Questo conclude il nostro tutorial. Grazie per aver letto.



Leave a Comment

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Gli attacchi ransomware sono in aumento, ma l'intelligenza artificiale può aiutare ad affrontare l'ultimo virus informatico? L'intelligenza artificiale è la risposta? Leggi qui sai è AI boone o bane

ReactOS: è questo il futuro di Windows?

ReactOS: è questo il futuro di Windows?

ReactOS, un sistema operativo open source e gratuito è qui con l'ultima versione. Può essere sufficiente alle esigenze degli utenti Windows moderni e abbattere Microsoft? Scopriamo di più su questo vecchio stile, ma un'esperienza del sistema operativo più recente.

Rimani connesso tramite lapp desktop WhatsApp 24*7

Rimani connesso tramite lapp desktop WhatsApp 24*7

Whatsapp ha finalmente lanciato l'app desktop per utenti Mac e Windows. Ora puoi accedere facilmente a Whatsapp da Windows o Mac. Disponibile per Windows 8+ e Mac OS 10.9+

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

Leggi questo per sapere come l'intelligenza artificiale sta diventando popolare tra le aziende di piccole dimensioni e come sta aumentando le probabilità di farle crescere e dare un vantaggio ai loro concorrenti.

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Recentemente Apple ha rilasciato macOS Catalina 10.15.4 un aggiornamento supplementare per risolvere i problemi, ma sembra che l'aggiornamento stia causando più problemi che portano al bricking delle macchine mac. Leggi questo articolo per saperne di più

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per l'estrazione dei dati dai Big Data

Che cosè un file system di journaling e come funziona?

Che cosè un file system di journaling e come funziona?

Il nostro computer memorizza tutti i dati in un modo organizzato noto come file system di journaling. È un metodo efficiente che consente al computer di cercare e visualizzare i file non appena si preme search.https://wethegeek.com/?p=94116&preview=true

Singolarità tecnologica: un lontano futuro della civiltà umana?

Singolarità tecnologica: un lontano futuro della civiltà umana?

Man mano che la scienza si evolve a un ritmo rapido, assumendo gran parte dei nostri sforzi, aumentano anche i rischi di sottoporci a una singolarità inspiegabile. Leggi, cosa potrebbe significare per noi la singolarità.

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Limpatto dellintelligenza artificiale nella sanità 2021

Limpatto dellintelligenza artificiale nella sanità 2021

L'intelligenza artificiale nell'assistenza sanitaria ha compiuto grandi passi avanti negli ultimi decenni. Pertanto, il futuro dell'IA in sanità continua a crescere giorno dopo giorno.