Comment installer Icinga 2 et Icinga Web 2 sur Ubuntu 16.04

Icinga 2 est un système de surveillance des ressources réseau open source largement utilisé, et Icinga Web 2 est l'interface Web officielle pour Icinga 2.

Dans ce tutoriel, je vais vous expliquer comment les installer tous les deux sur un serveur Ubuntu 16.04.

Conditions préalables

  • Une instance de serveur Vultr Ubuntu 16.04 récemment déployée.
  • Un utilisateur sudo. Pour en savoir plus sur la création d'un utilisateur sudo sur Ubuntu, consultez les instructions sur Debian dans un autre tutoriel Vultr .

Étape 1: mettre à jour le système

Connectez-vous à partir d'un terminal SSH en tant qu'utilisateur sudo, puis mettez à jour le système vers le dernier état stable à l'aide des commandes suivantes:

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

Après le redémarrage, utilisez le même utilisateur sudo pour vous connecter.

Étape 2: installer Apache

Installez Apache à l'aide de la commande suivante:

sudo apt-get install apache2 -y

Supprimez la page d'accueil d'Ubuntu Apache par défaut:

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

Pour des raisons de sécurité, vous devez interdire à Apache d'exposer /var/www/htmlaux visiteurs des fichiers et des répertoires du répertoire racine Web :

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

Démarrez le service Apache et lancez-le au démarrage:

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

Étape 3: configurer le pare-feu UFW

Par défaut, le pare-feu UFW est désactivé sur une instance de serveur Vultr Ubuntu 16.04 récemment déployée. Utilisez les commandes suivantes pour activer le pare-feu UFW et autoriser le trafic entrant SSH, HTTP et HTTPS:

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

Étape 4: installer MariaDB

4.1) Utilisez la commande suivante pour installer MariaDB:

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

4.2) Démarrez le service MariaDB:

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

4.3) Sécurisez l'installation de MariaDB:

sudo /usr/bin/mysql_secure_installation

Pendant le processus interactif, répondez aux questions une par une comme ci-dessous:

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

Remarque : remplacez-le <your-password>par votre propre mot de passe root MySQL.

4.4) Modifiez le plugin d'authentification de l' rootutilisateur MySQL :

sudo mysql -u root -p

Utilisez le mot de passe root MariaDB que vous avez défini précédemment pour vous connecter.

Dans le shell MySQL:

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

Remarque : remplacez-le <your-password>par votre propre mot de passe root MySQL.

Étape 5: installer PHP

Installez PHP 7.0 et plusieurs extensions pour Icinga 2 et 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

Installez la version actuelle de 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');"

Remarque : Les commandes ci-dessus peuvent être obsolètes à l'avenir, vous devez donc toujours obtenir la dernière version sur le site officiel de Composer .

Par souci de commodité, déplacez le script Composer composer.pharvers /usr/local/binet renommez-le composer:

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

Installez zip et décompressez:

sudo apt-get install zip unzip -y

Installez le composant ZendFramework Db à l'aide de Composer:

composer require zendframework/zend-db

Ensuite, vous devez configurer le fuseau horaire approprié pour votre machine, qui peut être déterminé sur le site officiel de PHP . Par exemple, si votre instance de serveur réside dans le centre de données Vultr Los Angeles, la valeur de fuseau horaire correspondant est America/Los_Angeles.

Ouvrez le fichier de configuration PHP avec l'éditeur vi:

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

Trouvez la ligne:

;date.timezone =

Changez-le en:

date.timezone = America/Los_Angeles

Sauvegarder et quitter:

:wq!

Redémarrez le service Apache afin de mettre en vigueur de nouveaux paramètres:

sudo systemctl restart apache2.service

Étape 6: Installez Icinga 2 et ses plugins

Configurer le dépôt Icinga APT:

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

Installez Icinga 2 et plusieurs plugins à l'aide du dépôt Icinga APT:

sudo apt-get install icinga2 nagios-plugins -y

Pour en savoir plus sur les plugins Icinga 2, veuillez visiter le site Web Monitoring Plugins Project .

Démarrez le service Icinga 2:

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

Par défaut, le programme Icinga 2 activera trois fonctionnalités: vérificateur, journal principal et notification. Vous pouvez confirmer cela en utilisant la commande suivante:

sudo icinga2 feature list

Étape 7: configuration des modules IDO Icinga 2

7.1) Installer les modules IDO (Icinga Data Output) pour MySQL

sudo apt-get install icinga2-ido-mysql

Dans l' Configuring icinga2-ido-mysqlassistant, lorsqu'on vous demande si vous souhaitez activer la fonction ido-mysql d'Icinga 2, choisissez <No>. Nous activerons manuellement cette fonctionnalité ultérieurement.

Lorsqu'on vous demande si vous souhaitez configurer une base de données pour icinga2-ido-mysql, choisissez <No>. Au lieu de cela, vous pouvez créer manuellement une base de données comme expliqué à l'étape 7.2.

7.2) Créer une base de données pour Icinga 2

Connectez-vous au shell MySQL en tant que root:

sudo mysql -u root -p

Utilisez le mot de passe root MariaDB que vous avez défini à l'étape 4 pour vous connecter.

Dans le shell MySQL, créez une base de données nommée icingaet un utilisateur de base de données nommé icingaavec le mot de passe icinga, puis accordez des privilèges sur cette base de données à cet utilisateur de base de données.

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) Importer le schéma IDO Icinga 2

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

Lorsque vous y êtes invité, entrez le mot de passe racine MariaDB pour terminer le travail.

7.4) Activer le module IDO MySQL

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

Trouvez ces lignes:

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

Modifiez-les comme ci-dessous:

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

Sauvegarder et quitter:

:wq!

Activez la fonction ido-mysql:

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

Étape 8: Installez Icinga Web 2

8.1) Configurer le canal de commande externe

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

Avant de pouvoir envoyer des commandes à Icinga 2 à l'aide d'une interface Web, vous devez ajouter l' www-datautilisateur au icingacmdgroupe:

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

Utilisez la commande suivante pour confirmer votre configuration:

id www-data

8.2) Installer les packages Icinga Web 2

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

Pointez le répertoire racine Web Apache vers un emplacement spécifié par Icinga Web 2:

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

8.3) Configuration de la base de données Icinga Web 2

sudo mysql -u root -p

CREATE DATABASE icingaweb2;
EXIT;

8.4) Charger le schéma de la base de données Icinga Web 2

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

8.5) Générez un jeton de configuration pour une utilisation ultérieure dans l'assistant d'installation Web Icinga Web 2

sudo icingacli setup token create

8.6) Lancer l'assistant d'installation Icinga 2 dans l'interface Web

Pointez votre navigateur Web sur l'URL suivante:

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

8.7) Sur la page d'accueil, saisissez le jeton de configuration que vous avez généré précédemment, puis cliquez sur le Nextbouton.

8.8) Sur la page Modules, sélectionnez un ou plusieurs modules que vous souhaitez activer (au moins, le Monitoringmodule est requis), puis cliquez sur le Nextbouton.

8.9) Sur la page Exigences, assurez-vous que chaque élément requis est satisfait, puis cliquez sur le Nextbouton.

8.10) Sur la page Authentification, vous devez choisir la méthode d'authentification lors de l'accès à Icinga Web 2. Ici, vous pouvez choisir Database, puis cliquer sur le Nextbouton.

8.11) Sur la page Ressource de base de données, remplissez tous les champs obligatoires comme ci-dessous, puis cliquez sur le Nextbouton.

  • Nom de la ressource *: icingaweb_db
  • Type de base de données *: MySQL
  • Hôte *: localhost
  • Nom de la base de données *: icingaweb2
  • Nom d'utilisateur *: root
  • Mot de passe *: <MariaDB-root-password>

8.12) Sur la page Backend d'authentification, en utilisant le nom du backend par défaut icingaweb2, cliquez sur le Nextbouton pour continuer.

8.13) Sur la page Administration, configurez le premier compte administratif Icinga Web 2 (dites-le icingaweb2admin) et votre mot de passe (dites-le icingaweb2pass), puis cliquez sur le Nextbouton.

8.14) Sur la page Configuration de l'application, vous pouvez ajuster les options de configuration liées à l'application et à la journalisation en fonction de vos besoins. Pour l'instant, vous pouvez utiliser les valeurs par défaut répertoriées ci-dessous et cliquer sur le Nextbouton pour continuer.

  • Afficher les traces de pile: coché
  • Type de stockage des préférences utilisateur *: Base de données
  • Type de journalisation *: Syslog
  • Niveau de journalisation *: erreur
  • Préfixe d'application *: icingaweb2

8.15) Sur la page Review, revérifiez votre configuration, puis cliquez sur le Nextbouton.

8.16) Sur la page d'accueil de configuration du module de surveillance, cliquez sur le Nextbouton.

8.17) Sur la page Surveillance du backend, utilisez le nom icingaet le type de backend par défaut IDO, puis cliquez sur le Nextbouton.

8.18) Sur la page Monitoring IDO Resource, saisissez les détails de la base de données IDO que vous avez configurés précédemment, puis cliquez sur le Nextbouton.

  • Nom de la ressource *: icinga_ido
  • Type de base de données *: MySQL
  • Hôte *: localhost
  • Nom de la base de données *: icinga
  • Nom d'utilisateur *: icinga
  • Mot de passe *: icinga

8.19) Sur la page Transport de commandes, utilisez toujours les valeurs par défaut répertoriées ci-dessous. Cliquez sur le Nextbouton pour continuer.

  • Nom du transport *: icinga2
  • Type de transport *: Fichier de commande local
  • Fichier de commandes *: /var/run/icinga2/cmd/icinga2.cmd

8.20) Sur la page Surveillance de la sécurité, utilisez toujours la valeur par défaut:

  • Variables personnalisées protégées: * pw *, * pass *, communauté

Cliquez sur le Nextbouton pour passer à la page suivante.

8.21) Sur la page de révision, revérifiez votre configuration, puis cliquez sur le Finishbouton.

8.22) Sur les félicitations! , cliquez sur le Login to Icinga Web 2bouton pour accéder à la page de connexion Icinga Web 2. Utilisez le compte administratif et le mot de passe Icinga Web 2 que vous avez définis plus tôt pour vous connecter. N'hésitez pas à explorer le tableau de bord Icinga Web 2.

Cela conclut notre tutoriel. Merci pour la lecture.



LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

Les attaques de ransomware sont en augmentation, mais l'IA peut-elle aider à lutter contre le dernier virus informatique ? L'IA est-elle la réponse ? Lisez ici, sachez que l'IA est un boone ou un fléau

ReactOS : est-ce lavenir de Windows ?

ReactOS : est-ce lavenir de Windows ?

ReactOS, un système d'exploitation open source et gratuit est ici avec la dernière version. Cela peut-il suffire aux besoins des utilisateurs de Windows modernes et faire tomber Microsoft ? Découvrons-en plus sur cet ancien style, mais une expérience de système d'exploitation plus récente.

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Whatsapp a finalement lancé l'application de bureau pour les utilisateurs Mac et Windows. Vous pouvez désormais accéder facilement à Whatsapp depuis Windows ou Mac. Disponible pour Windows 8+ et Mac OS 10.9+

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Lisez ceci pour savoir comment l'intelligence artificielle devient populaire parmi les petites entreprises et comment elle augmente les probabilités de les faire grandir et de donner à leurs concurrents un avantage.

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

Récemment, Apple a publié macOS Catalina 10.15.4, une mise à jour supplémentaire pour résoudre les problèmes, mais il semble que la mise à jour cause davantage de problèmes, ce qui entraîne le bridage des machines mac. Lisez cet article pour en savoir plus

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux d'extraction de données de Big Data

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Notre ordinateur stocke toutes les données d'une manière organisée connue sous le nom de système de fichiers de journalisation. C'est une méthode efficace qui permet à l'ordinateur de rechercher et d'afficher des fichiers dès que vous appuyez sur la recherche.https://wethegeek.com/?p=94116&preview=true

Singularité technologique : un futur lointain de la civilisation humaine ?

Singularité technologique : un futur lointain de la civilisation humaine ?

Alors que la science évolue à un rythme rapide, prenant le pas sur une grande partie de nos efforts, les risques de nous soumettre à une Singularité inexplicable augmentent également. Lisez, ce que la singularité pourrait signifier pour nous.

Un aperçu de 26 techniques danalyse des mégadonnées : partie 1

Un aperçu de 26 techniques danalyse des mégadonnées : partie 1

Un aperçu de 26 techniques d'analyse des mégadonnées : partie 1

Limpact de lintelligence artificielle dans les soins de santé 2021

Limpact de lintelligence artificielle dans les soins de santé 2021

L'IA dans le domaine de la santé a fait de grands progrès au cours des dernières décennies. Ainsi, l'avenir de l'IA dans les soins de santé continue de croître de jour en jour.