Tutoriel : Installation, sécurisation et utilisation de Xampp sous Ubuntu

Posted by: Fred Blanc  /  Category: Programmation, Sécurité, Tutoriels, UbunTips, how to, linux

Vous avez besoin d’installer un serveur Lamp (Linux Apache Mysql Php) ? La configuration par défaut d’Ubuntu ne vous satisfait pas? Vous avez vos habitudes avec Xampp ? Autant de bonnes raisons qui mènent tout droit au tutoriel du jour.

Suivez le guide…

Nota : si comme moi vous êtes sous une version 64bits d’Ubuntu, il y a de fortes chances pour que Xampp ne fonctionne pas correctement. Je vous conseille alors de suivre l’installation d’un environnement Lamp telle que celle décrite sur le site Ubuntu-fr.org.

Tout est expliqué sur le site officiel, mais je vais tout de même vous guider dans l’installation.Tout d’abord, rendez vous sur cette page :

La page de téléchargement et d’instructions pour l’installation de Xampp sur Linux

Cliquer sur le lien de téléchargement de Xampp (à la date de rédaction de cet article la version est 1.6.2).
Taille du téléchargement environ 55 Mo.

Une fois ceci fait, on procède à l’installation de ce package de la manière suivante :

> sudo tar xvfz /repertoire/de/telechargement/xampp-linux-1.6.2.tar.gz -C /opt

Bien évidemment, n’oubliez pas de remplacer “/repertoire/de/telechargement/” par le chemin du répertoire où l’archive a été téléchargée.

Une fois ceci fait, vous pourrez démarrez Xampp de la manière suivante :

> sudo /opt/lampp/lampp start

Si tout se déroule sans problème, vous devriez avoir ces messages dans votre console :

Starting XAMPP for Linux 1.6.2...
XAMPP: Starting Apache with SSL (and PHP5)...
XAMPP: Starting MySQL...
XAMPP: Starting ProFTPD...
XAMPP for Linux started.

Vous pouvez maintenant voir votre page d’accueil à l’adresse http://localhost/

Votre page d’accueil Xampp

Je vous engage à cliquer sur le lien ‘Sécurité’ et à appliquer la commande qui vous est proposée afin de remédier aux éventuels risques de sécurité, notamment si vous êtes sur un réseau d’entreprise. En effet, par défaut les pages Xampp sont accessibles via le réseau, mysql n’est pas sécurisé, et le mot de passe pour l’utilisateur ‘nobody’ du FTP est le mot de passe par défaut ‘lampp’.

Le gestion de la sécurité sous Xampp

Nous allons remédier à cela en utilisant l’outil qui est fournit avec le package Lampp. Pour cela lancer la commande suivante dans votre console :

> sudo /opt/lampp/lampp security

XAMPP: Quick security check...
XAMPP: Your XAMPP pages are NOT secured by a password.
XAMPP: Do you want to set a password? [yes]
XAMPP: Password:
XAMPP: Password (again):
XAMPP: Password protection active. Please use ‘lampp‘ as user name!
XAMPP: MySQL is accessable via network.
XAMPP: Normaly that’s not recommended. Do you want me to turn it off? [yes]
XAMPP: Turned off.
XAMPP: Stopping MySQL…
XAMPP: Starting MySQL…
XAMPP: The MySQL/phpMyAdmin user pma has no password set!!!
XAMPP: Do you want to set a password? [yes]
XAMPP: Password:
XAMPP: Password (again):
XAMPP: Setting new MySQL pma password.
XAMPP: Setting phpMyAdmin’s pma password to the new one.
XAMPP: MySQL has no root passwort set!!!
XAMPP: Do you want to set a password? [yes]
XAMPP: Write the password somewhere down to make sure you won’t forget it!!!
XAMPP: Password:
XAMPP: Password (again):
XAMPP: Setting new MySQL root password.
XAMPP: Change phpMyAdmin’s authentication method.
XAMPP: The FTP password is still set to ‘lampp’.
XAMPP: Do you want to change the password? [yes]
XAMPP: Password:
XAMPP: Password (again):
XAMPP: Reload ProFTPD…
XAMPP: Done.

A chaque question qui vous est posé, il vous suffit d’appuyer sur Entrée pour prendre la solution par défaut ([Yes]), ce qui vous permettra de sécuriser intégralement votre serveur Lampp.

Ceci fait, il ne reste plus qu’à vérifier que toutes ces modifications ont porté leurs fruits. Pour cela, cliquons à nouveau sur le lien ‘Sécurité’ de la page d’accueil de Xampp (http://localhost/). Vous voyez apparaître le formulaire d’authentification HTTP :

XAMPP sécurisé

Le login est ‘lampp’ comme indiqué lors de l’exécution de la sécurisation en mode console et le mot de passe est évidemment celui que vous avez choisit.

Une fois l’authentification effectuée vous verrez cette page qui confirme que Xampp a été correctement sécurisé.

Xampp est maintenant sécurisé.

Pour arrêter votre serveur Xampp, vous pourrez utiliser la commande suivante :

> sudo /opt/lampp/lampp stop

Pour relancer le serveur :

> sudo /opt/lampp/lampp restart

Pour obtenir de l’aide sur la commande ‘lampp’ :

> sudo /opt/lampp/lampp --help

Vous obtiendrez les informations suivantes :

start --> Start XAMPP (Apache, MySQL and eventually others)
startapache --> Start only Apache
startssl --> Start only SSL support
startmysql --> Start only MySQL
startftp --> Start only ProFTPD

stop --> Stop XAMPP (Apache, MySQL and eventually others)
stopapache --> Stop only Apache
stopssl --> Stop only SSL support
stopmysql --> Stop only MySQL
stopftp --> Stop only ProFTPD


reload -->Reload XAMPP (Apache, MySQL and eventually others)
reloadapache --> Reload only Apache
reloadmysql --> Reload only MySQL
reloadftp --> Reload only ProFTPD

restart --> Stop and start XAMPP
security --> Check XAMPP's security

php5 --> Activate PHP5
php4 --> Activate PHP4
phpstatus --> Which version of PHP is active?

backup --> Make backup file of your XAMPP config, log and data files
panel --> Starts graphical XAMPP control panel

Vous voyez que la commande ‘lampp’ est riche d’options. Je vous laisse les découvrir en détail en fonction de vos besoins.

A noter, les répertoires importants de Xampp :

/opt/lampp/bin/
Le répertoire des exécutables XAMPP.
> /opt/lampp/bin/mysql lance par exemple le moniteur MySQL.

/opt/lampp/htdocs/
Le répertoire racine de vos applications web

/opt/lampp/etc/httpd.conf
Le fichier de configuration d’Apache.

/opt/lampp/etc/my.cnf
Le fichier de configuration de MySQL.

/opt/lampp/etc/php.ini
Le fichier de configuration de PHP.

/opt/lampp/etc/proftpd.conf
Le fichier de configuration de ProFTPD.

/opt/lampp/phpmyadmin/config.inc.php
Le fichier de configuration de phpMyAdmin.

Enfin, la désinstallation sera réalisée tout simplement en supprimant tous les fichiers du répertoire /opt/lampp, à l’aide de la commande suivante :
> rm -rf /opt/lampp

Voilà, l’installation est à présent réalisée. Il ne vous reste plus qu’à travailler. ;-)

Tags: , , , , , , , , , , , , ,

7 Responses to “Tutoriel : Installation, sécurisation et utilisation de Xampp sous Ubuntu”

  1. bobdin Says:

    Merci bien pour votre explication, c vraiment super. et j ‘ai bien installé Xampp a l’aide de ce tuto. merci encore.

  2. Frédéric Blanc Says:

    Bonsoir Bobdin,

    Content que cela ait pu vous aider.

    Cordialement,

  3. Tony Says:

    Bonjour,

    Je suis sur un projet d’intranet et pour le developper j’utilise xampp, je me suis appuyé sur ce tuto pour securiser mon xampp et pas de pb tout est bien secur, mais par contre plus moyen de se connecter à mon site depuis un navigateur web sur le reseau (meme en local, j’ai juste acces a phpmyadmin apres authentification) erreur : Warning: mysql_connect() [function.mysql-connect]: Access denied for user ‘root’@'localhost’ (using password: NO) j’ai du raté quelque chose… si jamais quelqu’un a l’info

  4. Frédéric Blanc Says:

    Bonjour Tony,

    Désolé pour le lag, peut être pourrais tu tenter une nouvelle fois la phase de sécurisation ? Difficile d’apporter un diagnostic avec si peu d’éléments.

    Tiens moi au courant.

  5. said hdach Says:

    bonjour,
    je suis débutant sous linux, je viens d’installer mandriva one spring 2007, puis j’ai installer xampp, Bien, j’arrive à lancer lampp et avec mon navigateur j’arrive aussi à afficher l’interface graphique de phpmyadmin…etc. mon problème c’est que lorsque j’écrit mon premier exemple en php je ne sais pas ou le mattre et comment l’executer. est ce que il ya quelqu’un qui peut m’expliquer méthodiquement comment doit je proceder, je crois que c simple, je vous remercie

  6. Frédéric Blanc Says:

    Bonjour Said,

    Je pense que ce lien pourra t’aider (http://www.apachefriends.org/fr/xampp-linux.html#1057), tu verras que par défaut Xampp est installé dans le répertoire /opt/lampp/. Tu dispose alors du répertoire /opt/lampp/htdocs/ où tu vas pouvoir placer tes différents sites. Par exemple :
    /opt/lampp/htdocs/site1
    /opt/lampp/htdocs/site2

    que tu pourras attaquer en local dans ton navigateur via les urls suivantes :
    http://localhost/site1/
    http://localhost/site2/

    Il ne te reste donc plus qu’à placer tes fichiers php sous le répertoire /opt/lampp/htdocs/site1/ et cela devrait fonctionner.

    Cordialement,

  7. SAID HDACH Says:

    Bonjour Frédric.

    Je te remercie j’y arrive. Vive linux