Dans le dernier billet consacré à l’installation d’un serveur Debian, nous nous intéressions à la sécurisation du serveur. Aujourd’hui, nous allons aborder l’installation du moteur Apache, de Mysql et de PHP5.
J’insiste sur PHP5 car, par défaut, La distribution Debian Etch propose PHP dans sa version 4.
Troisième partie : Un beau serveur web :
1/ Modification du sources.list :
Comme je le mentionnais un peu plus haut, PHP5 n’est pas disponible par défaut dans les dépôts. En conséquence, il nous faut aller le chercher ailleurs en ajoutant un nouveau dépôt à notre sources.list.
Pour ce faire, vous allez éditer votre fichier sources.list[1] :
# nano /etc/apt/sources.list
Puis ajouter en fin de fichier ces deux lignes :
deb http://dotdeb.thefox.com.fr stable all deb-src http://dotdeb.thefox.com.fr stable all
Enregistrez et quittez.
2/ Installation de PHP5/Mysql/Apache :
Le sources.list a été modifié mais la base n’a pas encore été rafraichie. Dont acte :
# apt-get update
Procédons maintenant à l’installation :
# apt-get install apache2 apache2-doc # apt-get install mysql-server-5.0 # apt-get install curl # apt-get install php5 php5-cli php-pear php5-gd php5-mysql php5-curl libapache2-mod-php5
C’est tout ! Vous devriez maintenant pouvoir contempler un magnifique It Works en tapant dans votre barre d’adresse http://VotreIP/apache2-default
NB : N’étant pas un fervent amateur de PostgreSQL, je n’ai indiqué ici que l’installation de Mysql. Si toutefois vous préférez cet autre moteur de base de données, vous pourrez trouver votre bonheur ici.
3/ Installation de phpmyadmin :
Comme vous aurez certainement l’envie d’administrer vos bases autrement qu’en utilisant la ligne de commande, voici la manipulation pour installer phpmyadmin :
# apt-get install phpmyadmin
Furieux, n’est-ce pas ? L’application est dorènavant disponible en tapant dans votre barre de navigateur http://VotreIP/phpmyadmin
NB : J’attire votre attention sur le fait qu’aucun utilisateur, ni mot de passe root n’est encore défini à ce stade pour Mysql. Votre base est ouverte aux grands vent via phpmyadmin. Aussi, je vous enjoins à définir immédiatement mots de passe, utilisateurs et privilèges.
Pour conclure sur le sujet, je ne fournirai pas la procédure d’installation de Bind9. En effet, je préfère gérer les DNS au niveau du registrar car même si le serveur tombe ou se fait dégommer par une petite fiotte, il suffit de réappliquer les sauvegardes et reconfigurer deux trois bricoles pour être de nouveau visible. Néanmoins, si vous voulez vous casser la tête à installer ce truc, c’est ici que ça se passe.
La quatrième partie sera consacrée à l’installation de Postfix.
Notes
[1] Je rappelle que les commandes précédées d’un # se tapent en usager root et celles en $ en usager standard
Faites en profiter tout le monde :

6 Comments: Trackback URL | Comments RSS
13 août 2008 à 21 h 09 min
Il n’y a rien d’autre à revoir au niveau de la configuration de MySQL ?
On m’avait dit qu’il faut limiter les connexions externes pour empêcher les gens de se connecter root sur ton SGBD, à coup d’update dans les tables systèmes, sinon ce n’est pas drôle..
Enfin je suis preneur pour des infos, je n’ai pas l’intention de lancer une querelle de clocher pour savoir quel SGBD a la plus grosse.
13 août 2008 à 22 h 33 min
De base, tu as tout ce qu’il te faut sans aller t’en palucher d’avantage. J’ai tout de même précisé qu’il fallait définir des utilisateurs autres que root avec des mots de passe (autres que celui de root) pour accéder ses bases. Ensuite, il faut bien évidemment refuser à ton monsieur root les connexions distantes. Ca répond à ta question ?
13 août 2008 à 22 h 46 min
Tiens, tu ne fais pas l’autiste ?
Oui oui, ça répond à ma question, mais ça serait bien d’indiquer comment on refuse ces connexions distantes, non ??
14 août 2008 à 10 h 00 min
Non, j’ai trouvé la source "Autiste" officielle. J’attends que ça charge.
Pour répondre partiellement à ta question, la gestion des privilèges sera un peu abordée dans la prochaine partie consacrée à l’installation de Postfix.
Si d’aventure môssieur ne trouvait pas ça satisfaisant, il me le fera savoir et je me fendrai d’un complément en fin de tuto.
14 août 2008 à 16 h 34 min
Tu es grand !
20 août 2008 à 16 h 38 min
pour mysql, tu as quand meme quelques petites choses à faire
de base, le my.cnf est prévu pour un pc avec 32Mo de RAM
fort heureusement, le paquet mysql contient, dans sa doc (/usr/share/doc/mysql-server-5.0/), des fichiers de conf correspondant à plusieurs valeurs de RAM
il est quand même conseillé de prendre le bon, histoire d’avoir des buffers de taille raisonnable.
de plus, niveau sécurité, mais Val l’a indiqué dans un autre billet, indiquer un bind-address = 127.0.0.1 est assez sympa pour éviter d’être vu par tout le monde
par contre, pour le phpmyadmin, je suis pas pour le laisser en permanence, car c’est un des moyens souvent utilisés pour pirater un serveur, par l’intermédiaire d’une faille dans son merveilleux code
pour php, un petit tour dans /etc/phph5/apache2/php.ini est assez nécessaire
d’ailleurs, je conseille phpsec.org/projects/phpse… qui permet de sécuriser un poil php en indiquant des valeurs un peu sûres dans le php.ini
pour apache, je rajouterais les modules libapache2-mod-evasive (pour éviter un peu les (d)dos) et libapache2-mod-defensible (pour empêcher l’accès aux serveurs envoyant du spam)
pour finir, je rajouterais APC (www.howtoforge.com/apc-ph… pour avoir un cache pour le code PHP afin d’éviter d’avoir à le réinterpréter à chaque chargement de la page
voilà pour quelques commentaires à chaud
en tout cas, good job