phpIPAM - Installation

IPAM (IP Address Management) est un type d’outil qui permet la gestion des adresses IP de votre infrastructure. L’outil permet de consulter l’inventaire des adresses IP attribuables et attribuées. Dans cet article, nous allons mettre en place un IPAM open source nommé phpIPAM sur Ubuntu 22.04.


Pré-requis

Mettre à jour Ubuntu

Pour commencer, mettez à jour votre système avec les deux commandes suivantes :

sudo apt upgrade
Ubuntu - sudo apt update
sudo apt upgrade
Ubuntu - sudo apt upgrade

Installer les dépendances pour phpipam

Nous avons besoin de quelques éléments pour notre installation car phpIPAM ne supporte pas encore la dernière version de php alors commençons par la commande suivante pour ajouter les paquets de PHP en version 7.4 :

sudo add-apt-repository ppa:ondrej/php

Pour installer phpIPAM nous avons besoin de plusieurs éléments :

  • Apache2 est le successeur du serveur Web Apache, l’un des serveurs Web open source le plus populaire et le plus fiable au monde. Il traite les requêtes HTTP et propose du contenu Web aux utilisateurs.
  • MySQL est un système de gestion de bases de données relationnelles open source réputé pour ses performances rapides et sa fiabilité. Il stocke, récupère et gère les données de diverses applications, servant souvent de base à de nombreux sites Web et applications professionnelles.
  • PHP, quant à lui, est un langage de script open source largement utilisé, spécialement conçu pour le développement Web. Il permet aux développeurs de créer du contenu Web dynamique en exécutant des scripts côté serveur.

Lorsqu’ils sont combinés, Apache2, MySQL et PHP (souvent appelé pile « AMP ») fournissent un environnement robuste pour l’hébergement et la fourniture d’applications Web dynamiques comme phpIPAM. Par chance une seule commande suffit : 

sudo apt install apache2 mysql-server php7.4 php7.4-mysql libapache2-mod-php php7.4-gd php7.4-ldap php7.4-curl php7.4-gmp php7.4-xml php7.4-mbstring git -y
Ubuntu - sudo apt install apache2 mysql-server php php-mysql libapache2-mod-php php-gd php-ldap php-pear php-curl php-net-socket php-gmp php-xml php-mbstring -y

Configurer Mysql

Une fois Mysql installé, il faut le configurer. Pour ce faire, utilisons la commande mysql_secure_installation pour configurer les paramètres de bases avec le compte root de notre base de données. Il ne devrait pas y avoir de mot de passe donc appuyez une fois sur « Entrée » :

sudo mysql_secure_installation
sudo mysql_secure_installation

Il nous est demandé si l’on souhaite supprimer l’utilisateur anonyme. Celui-ci est un utilisateur qui a le droit de se connecter à votre base de données sans mot de passe. Par mesure de sécurité, il vaut mieux le supprimer donc écrivez « Y » et validez :

Suppression utilisateur anonyme

Mettez « Y » puis validez pour supprimer l’accès du compte root à distance afin d’éviter de vous faire intercepter votre mot de passe à travers le réseau.

Supprimer accès root distance

Ensuite, supprimons une base de données qui a été créée par défaut lors de l’installation de MariaDB et qui ne sert à rien. « Y » puis validez :

Supprimer base de donnée Test

Validons la configuration que nous avons effectuée en pressant « Y » puis validez :

Valider la configuration

Et voilà, notre système de base de données est installé et pré-configuré, il ne nous reste plus qu’à créer la base de données pour phpIPAM. Pour ce faire connectez-vous à mysql avec la commande suivante :

sudo mysql -u root
sudo mysql -u root

Une fois connecté, nous commençons par créer notre base de données où « phpipam » est le nom que vous souhaitez lui donner :

CREATE DATABASE phpipam;
CREATE DATABASE phpipam;

On commence par créer un utilisateur :

CREATE USER 'utilisateur'@'localhost' IDENTIFIED BY 'mdp';
CREATE USER 'utilisateur'@'localhost' IDENTIFIED BY 'mdp';

Puis pour finir on donne à l’utilisateur les droits sur la base de données.

GRANT ALL PRIVILEGES ON phpipam.* TO 'utilisateur'@'localhost';
GRANT ALL PRIVILEGES ON phpipam.* TO 'utilisateur'@'localhost';

On applique le changement et on quitte mysql :

FLUSH PRIVILEGES;
exit;
FLUSH PRIVILEGES;

Installation de phpIPAM

Accédez au site Web officiel de phpIPAM ou utilisez Git pour cloner le référentiel. Pour ce guide, nous utiliserons Git :

sudo git clone https://github.com/phpipam/phpipam.git /var/www/phpipam/
sudo git clone https://github.com/phpipam/phpipam.git /var/www/phpipam/

On se déplace directement dans le dossier créé :

cd /var/www/phpipam
cd /var/www/phpipam

On bascule le répertoire de travail actuel vers la révision en cours :

sudo git checkout 1.5
sudo git checkout 1.5

Nous devons également installer des sous-modules, pour ce faire utilisez la commande suivante :

sudo git submodule update --init --recursive
sudo git submodule update --init --recursive

On créer le fichier « config.php » pour que phpIPAM ai directement les informations de la base de données :

sudo cp config.dist.php config.php
sudo cp config.dist.php config.php

On modifie le fichier « config.php » pour ajouter les informations de connexion à la base de données :

sudo nano config.php
sudo nano config.php

Dans le fichier on renseigne les informations de la base de données créée précédemment :

Changer les informations de la base de donnée dans le fichier config.php

On va positionner les bons droits sur le dossier de notre site Web pour que Apache2 puisse le gérer. Pour ce faire utilisons les deux commandes suivantes :

sudo chown -R www-data:www-data /var/www/phpipam/ 
sudo chmod -R 755 /var/www/phpipam/
sudo chown -R www-data:www-data /var/www/phpipam/
sudo chmod -R 755 /var/www/phpipam/

Pour finir on va peupler la base de données que nous avons créée :

sudo mysql -u root -p phpipam < db/SCHEMA.sql
sudo mysql -u root -p phpipam < db/SCHEMA.sql

Apache2 configuration

Maintenant, il faut configurer Apache2 pour qu’il prenne en considération notre nouveau site web phpIPAM. Commençons par modifier la configuration de Apache2 :

sudo nano /etc/apache2/sites-available/000-default.conf
nano /etc/apache2/sites-available/000-default.conf

Voilà le contenu de mon fichier, il faut surtout bien modifier le lien vers « /var/www/phpipam » :

/var/www/phpipam

On active le mode rewrite nécessaire pour phpIPAM :

sudo a2enmod rewrite
sudo a2enmod rewrite

Ensuite on redémarre Apache2 :

sudo /etc/init.d/apache2 restart
sudo /etc/init.d/apache2 restart

Finalisation configuration phpIPAM

Et hop on accès à l’interface web en allant à l’adresse suivante et on clique sur « New phpipam installation » :

http://localhost
New phpipam installation

On sélectionne « Mysql/MariaDB import instructions » pour laisser l’outil nous donner les instructions que nous avons déjà réalisées précédemment :

Mysql/MariaDB import instructions

Si tout s’est bien passé, vous pouvez cliquer directement sur « Login », votre installation étant finalisée :

Login

Pour se connecter, utilisez les identifiants par défaut avec le nom d’utilisateur « admin » et le mot de passe « ipamadmin ». A la première connexion vous devrez changer le mot de passe par défaut :

PHPipam changement de mot de passe

Et vous voici enfin sur l’outil, BRAVO 👌 Vous pouvez maintenant utiliser l’outil à votre convenance. Je ferais probablement un prochain article sur l’utilisation de phpIPAM 😉 !

phpIPAM application

Si l’article vous a plu et si vous aimez mon travail, vous pouvez faire un don en suivant ce lien :

Faire un don : https://www.paypal.com/donate/?hosted_button_id=DJBF7C54L273C

Pas de commentaire

    Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

    Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.