Installation iTop Community Edition
Ce guide complet détaille l’installation d’iTop Community Edition sur les principales distributions Linux et sur Windows, dans un contexte professionnel. Il s’adresse aux DSI et responsables IT souhaitant déployer iTop de manière fiable, sécurisée et maintenable
1. Prérequis matériels pour l'installation d'iTop Community edition
Les prérequis matériels d’iTop Community Edition restent similaires selon le système d’exploitation utilisé.
Sous Linux comme sous Windows, les ressources minimales suivantes sont recommandées.
| Système | Ressource | Minimum | Recommandé |
|---|---|---|---|
| Linux | Disque | 5 GB | 20 GB |
| RAM | 1 GB | 2 GB | |
| Processeur | 1 GHz (simple Pentium) | 2 GHz+ (dual-core) | |
| Windows | Disque | 5 GB | 20 GB |
| RAM | 1 GB | 2 GB | |
| Processeur | 1 GHz (simple Pentium) | 2 GHz+ (dual-core) |
1.1 Configurations avancées (pour grands déploiements)
| Tickets/mois | Utilisateurs | CIs dans CMDB | Serveurs | CPU | Mémoire | Espace disque MySQL |
|---|---|---|---|---|---|---|
| < 200 | < 20 | < 50k | Tout-en-un | 2vCPU | 4GB | 10GB |
| < 5000 | < 50 | < 200k | Deux: Web + MySQL | 4vCPU | 8GB | 20GB |
| > 5000 | > 50 | > 200k | Deux: Web + MySQL | 8vCPU | 16GB | 50GB |
Résolution d’écran minimale: 1024×768 pixels (résolution plus élevée recommandée)
2. Exigences logiciels
- PHP version 5.3.6 ou plus récente (version 5.6+ recommandée pour iTop 2.5+)
- MySQL version 5.0 ou plus récente (ou MariaDB 5.3+)
- Serveur web: Apache, IIS ou tout serveur web supportant PHP
- Graphviz (nécessaire pour afficher les graphes d’analyse d’impact)
2.1 Modules PHP requis
- mysql/mysqli
- ldap (pour l’authentification LDAP/AD)
- mcrypt (pour le chiffrement renforcé des mots de passe)
- cli
- soap
- json
- xml
- gd
- zip
2.2 Télécharger iTop
Téléchargez iTop depuis SourceForge: https://sourceforge.net/projects/itop/files/itop
3. Installation des prérequis par distribution
Dans cette section, nous détaillons pas à pas l’installation d’iTop Community Edition sur les principales distributions Linux utilisées en entreprise.
3.1 Debian ou Ubuntu (avant 16.04)
Installation en tant que root (bash)
apt-get update
apt-get install apache2
apt-get install mysql-server
apt-get install php5 php5-mysql php5-ldap php5-mcrypt php5-cli php5-soap php5-json graphviz
3.2 Ubuntu 16.04 et versions ultérieures
Installation en tant que root (bash)
apt-get update
apt-get install apache2
apt-get install mysql-server
apt-get install php php-mysql php-ldap php-mcrypt php-cli php-soap php-json graphviz
apt-get install php-xml php-gd php-zip libapache2-mod-php
Activation du module rewrite
a2enmod rewrite
systemctl restart apache2
3.3 Ubuntu 24.04 LTS / Debian 12
Mise à jour des paquets
apt update && apt upgrade -y
Installation du serveur web et PHP (mcrypt n’est plus disponible nativement)
apt install -y apache2 php php-mysql php-ldap php-cli php-soap php-json php-gd php-zip php-mbstring php-xml php-opcache libapache2-mod-php
Installation de MariaDB (recommandé pour iTop 3.x)
apt install -y mariadb-server
Installation de Graphviz
apt install -y graphviz
Activation des modules Apache nécessaires
a2enmod rewrite
a2enmod headers # Important pour les directives de sécurité
systemctl restart apache2
3.4 Redhat, CentOS ou Fedora
Installation en tant que root
yum install httpd
yum install mysql mysql-server
yum install php php-mysql php-mcrypt php-xml php-cli php-soap php-ldap graphviz
Pour les versions récentes (CentOS 8/RHEL 8/Rocky Linux 8+):
Mise à jour des paquets
dnf update -y
Installation du serveur web et PHP
dnf install -y httpd php php-mysqlnd php-ldap php-cli php-soap php-json php-gd php-zip php-mbstring php-xml php-opcache
Installation de MariaDB (recommandé pour iTop 3.x)
dnf install -y mariadb-server
Activation et démarrage des services
systemctl enable –now httpd mariadb
systemctl start httpd mariadb
Configuration du pare-feu
firewall-cmd –permanent –add-service=http
firewall-cmd –permanent –add-service=https
firewall-cmd –reload
SELinux configuration (si activé)
setsebool -P httpd_can_network_connect_db 1
setsebool -P httpd_can_network_connect 1
3.5 Mageia
Installation des prérequis
urpmi mariadb
urpmi php php-mysql php-mcrypt php-xml php-cli php-soap php-iconv php-mysqli php-ldap
urpmi graphviz
Activation des services
systemctl enable httpd
systemctl enable mysqld.service
Modification des paramètres PHP par défaut
perl -pi -e ‘s/post_max_size = 8M/post_max_size = 32M/’ /etc/php.ini
perl -pi -e ‘s/;suhosin.get.max_value_length.*/suhosin.get.max_value_length = 2048/’ /etc/php.d/Z98_suhosin.ini
Démarrage des services
systemctl start httpd
systemctl start mysqld.service
4. Installation sur Windows avec IIS
4.1 Installation des prérequis
4.1.1 Installer Fast-CGI pour IIS
- Téléchargez l’installateur Fast-CGI depuis: http://www.iis.net/download/FastCGI
- Choisissez la version adaptée à votre système (32 ou 64 bits)
- Choisissez la version adaptée à votre système (32 ou 64 bits)
4.1.2 Installer Fast-CGI pour IIS
- Téléchargez PHP depuis http://windows.php.net/download/
- Sélectionnez la version « Non Thread Safe » adaptée à votre système
- Assurez-vous de sélectionner l’extension « SOAP » et « PEAR Install » dans les options
- Enregistrez l’extension FastCGI pour tout le site web:
cscript fcgiconfig.js -add -section:\ »PHP\ » -extension:php -path:\ »C:\Program Files\PHP\php-cgi.exe\ »
4.1.3 Configurer IIS
- Ouvrez le Gestionnaire des services Internet (IIS)
- Configurez le mappage d’application pour les fichiers .php
- Assurez-vous que « index.php » est présent dans la liste des documents par défaut
4.1.4 Installer MySQL
- Téléchargez l’installateur MySQL depuis http://www.mysql.com/downloads/mysql/
- Choisissez le package « MSI Installer » adapté à votre système
- Suivez les instructions de l’assistant d’installation
4.1.5 Installer Graphviz
- Téléchargez et installez Graphviz depuis son site officiel
- Notez le chemin complet vers l’exécutable dot.exe (exemple: `C:\Program files (x86)\
5. Configuration de la base de données
Sécurisation initiale de MySQL/MariaDB
mysql_secure_installation
Création de la base de données et de l’utilisateur
mysql -u root -p
Dans la console MySQL:
CREATE DATABASE itop CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER ‘itop’@’localhost’ IDENTIFIED BY ‘votre_mot_de_passe’;
GRANT ALL PRIVILEGES ON itop.* TO ‘itop’@’localhost’;
FLUSH PRIVILEGES;
EXIT;
6. Installation d'iTop
6.1 Sous Linux
Téléchargement et extraction
cd /tmp
wget https://sourceforge.net/projects/itop/files/latest/download -O itop.zip
unzip itop.zip
mv /tmp/web /var/www/html/itop
Configuration des permissions
Pour Debian/Ubuntu
chown -R www-data:www-data /var/www/html/itop
Pour RHEL/CentOS
chown -R apache:apache /var/www/html/itop
6.2 Configuration Apache
6.2.1 Debian/Ubuntu
ServerName itop.example.com
DocumentRoot /var/www/html/itop
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
ErrorLog ${APACHE_LOG_DIR}/itop-error.log
CustomLog ${APACHE_LOG_DIR}/itop-access.log combined
EOF
a2ensite itop.conf
systemctl reload apache2
6.2.1 RHEL/CentOS/Fedora
ServerName itop.example.com
DocumentRoot /var/www/html/itop
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
ErrorLog /var/log/httpd/itop-error.log
CustomLog /var/log/httpd/itop-access.log combined
EOF
systemctl restart httpd
7. Configuration SELinux
7.1 Configuration de base SELinux pour iTop
Permettre la lecture/écriture sur le répertoire iTop et ses sous-dossiers
semanage fcontext -a -t httpd_sys_rw_content_t « /var/www/html/itop(/.*)? »
Appliquer la politique
restorecon -Rv /var/www/html/itop/
Vérifier les contextes appliqués
ls -lZ /var/www/html/itop/
7.2 Problèmes d'écriture de fichiers
Désactiver temporairement SELinux (pour diagnostic uniquement)
setenforce 0
N’oubliez pas de réactiver SELinux après avoir identifié le problème:
7.3 Connexion à un serveur MySQL distant
Pour modifier ce paramètre de sécurité, exécutez:
7.4 Connexion à iTop depuis un système distant
Ajouter temporairement le service HTTP
firewall-cmd –add-service=http
Pour rendre la modification permanente
firewall-cmd –permanent –add-service=http
firewall-cmd –reload
8. Bonnes pratiques de sécurité
8.1 Connexion à iTop depuis un système distant
- conf
- data
- Répertoire racine (pour le connecteur iTop Hub)
- log
Les droits d’écriture sur le dossier `conf` sont uniquement nécessaires pendant la configuration initiale et pour l’édition interactive du fichier de configuration dans l’application.
8.2 Sécurisation des répertoires critiques
- conf : répertoire et tout son contenu
- data : répertoire et tout son contenu
- datamodels : autoriser uniquement les fichiers ayant l’une des extensions: css|scss|js|map|png|bmp|gif|jpe?g|svg|tiff|woff2?|ttf|eot|html
- extensions : autoriser uniquement les fichiers ayant l’une des extensions: css|scss|js|map|png|bmp|gif|jpe?g|svg|tiff|woff2?|ttf|eot|html
- lib : répertoire et tout son contenu
- log : répertoire et tout son contenu
- setup/permissions-test-folder/permissions-test-subfolder/`: uniquement requis si votre serveur web n’utilise pas .htaccess ou web.config
Vous devriez également empêcher le listage des répertoires.
8.3 Utilisation de HTTPS
8.3.1 Configuration des en-têtes HTTP de sécurité
Ajouter à votre configuration Apache (httpd.conf ou virtual host)
Force HTTPS
Header always set Strict-Transport-Security « max-age=63072000; includeSubdomains; » env=HTTPS
Sécurisation des cookies de session PHP
php_flag session.cookie_httponly on
php_flag session.cookie_secure on
php_value session.cookie_samesite « Lax »
php_value zend.exception_ignore_args 1
Protection contre le clickjacking
Header always set X-Frame-Options « sameorigin »
Empêcher le MIME sniffing
Header always set X-Content-Type-Options « nosniff »
Politique de référencement
Header always set Referrer-Policy « strict-origin-when-cross-origin »
Content Security Policy (exemple basique)
Header set Content-Security-Policy « default-src ‘self’; frame-src ‘self’ www.itophub.io;
8.4 Configuration exemple Apache complète pour la sécurité
Sécurisation des cookies de session
php_flag session.cookie_httponly on
Uniquement pour HTTPS
Header always set Strict-Transport-Security « max-age=63072000; includeSubdomains; » env=HTTPS
php_flag session.cookie_secure on
Empêcher le MIME sniffing
Header always set X-Content-Type-Options « nosniff »
Protection contre le clickjacking
Header always set X-Frame-Options « sameorigin »
Header always set Referrer-Policy « strict-origin-when-cross-origin »
Content Security Policy
Header set Content-Security-Policy « default-src ‘self’; frame-src ‘self’ www.itophub.io;
9. Finalisation de l'installation
2. Suivez l’assistant d’installation web :
- Vérification des prérequis
- Configuration de la base de données
- Configuration de l’administrateur
- Configuration initiale de l’application
Lors de l’installation via l’assistant web, vous devrez indiquer le chemin complet vers l’exécutable Graphviz :
- Linux: /usr/bin/dot
- Windows: C:\Program files (x86)\Graphviz 2.68\bin\dot.exe (ajustez selon votre installation)
10. Besoin d'assistance supplémentaire?
- Optimiser votre instance iTop pour de meilleures performances
- Intégrer iTop avec d’autres systèmes de votre SI
- Personnaliser l’application pour des besoins métiers spécifiques
- Former vos équipes à l’utilisation optimale de l’outil
- Sécuriser davantage votre environnement
Chez ITSM-Factory, nous sommes spécialisés dans l’implémentation et l’optimisation de solutions ITSM basées sur iTop. Notre équipe d’experts peut vous accompagner au-delà de ce guide d’installation pour tirer le meilleur parti de votre investissement.
N’hésitez pas à nous contacter pour discuter de vos projets ITSM et découvrir comment nous pouvons vous aider à atteindre vos objectifs.
