Les bonnes pratiques d’un serveur LAMP

Posted on 04/05/2009 · Posted in Système

Suite à l’acquisition d’un serveur dédié chez OVH pour en faire principalement un serveur LAMP. Nous avons cherché à configurer au mieux notre serveur.

debian-logo-portraitLes questions que nous avons eu sont du type : “Où mettre mes scripts PHP ?“, “Comment gérer les partitions systèmes ?“, “Quelles sont les paquets à installer ?“, ou encore “Comment sécuriser son serveur, et quel niveau de paranoïa avoir ?“.

Dans un soucis de professionnalisme, nous avons souhaité confirmer nos connaissances en utilisant Google, des forums et même des livres (C’est pour dire !)

Plusieurs articles verront donc le jour pour répondre à ces questions et par la même occasion centraliser l’information. Voici le plan :

  • Système d’exploitation : GNU/Linux Debian
  • Apache
  • MySQL
  • PHP

mysql

Introduction aux bonnes pratiques LAMP.

Les raisons qui nous poussent à sécuriser notre serveur sont évidentes, et l’utilisation de normes aussi. De nombreuses personnes laissent à désirer la configuration de leur serveur en faisant confiance aux paramètres par défaut. Ce n’est pas forcement un tord car parfois, il vaut mieux ne rien faire que faire mal. Mais quitte à ne rien faire, prenez un serveur mutualisé ou demander nous 😉
Un serveur en production que l’on n’a pas configuré, qui s’arrête sans raison ou qui ne fonctionne pas correctement peut s’avérer être un vrai calvaire pour l’administrateur qui s’en occupe.

On ne sait rien, on a tout à apprendre

Commencer par vous dire que vous ne savez rien et vérifier par étape vos connaissances.
On devient trop facilement un vieux grigou qui croit tout savoir et qui ne fait que des conneries.
Si l’on est venu à écrire cette article, c’est que nous avons commencé par nous dire “Bon, nous voulons un serveur LAMP, comment procéder ? Je ne suis plus sûr de…” Et c’est d’ailleurs grâce à ce genre de question que l’on apprend pleins de nouvelles choses. Car d’un lien hypertexte à un autre, on en apprend des choses.

Vraiment, ne soyez sûr de rien, vérifiez toujours à deux fois vos connaissances.

Utilisation de machine virtuelle

Pensez à avoir une machine virtuelle ayant le plus de caractéristiques communes avec votre serveur dédié.
virtualboxLorsque vous souhaitez ajouter un paquet ou faire une modification même la plus simple, effectué là sur votre machine virtuelle.

Optez pour les mêmes conditions d’accès au prompt.
Il est fort probable que vous utilisiez un accès SSH pour vous connecter sur le dédié, faite de même pour votre machine virtuelle. L’exemple qui donne raison à cette bonne pratique, c’est l’ajout d’une règle au firewall qui bloque l’accès SSH. Résultat vous n’avez plus aucun accès à votre serveur dédié et vous devrez dans de nombreux cas réinstaller le système.

Ne pas bruler la corde par les deux bouts

Commencez par le début, et profitez du temps que vous avez avant de mettre en production pour effectuer vos réglages. Car ce n’est pas une fois en production qu’il faudra faire de belles gaffes.
L’utilisation d’une VM – Virtual Machine – est ici mise en avant. Car en production, vous pourrez faire vos testes sur la VM sans risquer d’avoir des erreurs 404.
De plus, si vous avez installé en parallèle votre dédié et votre VM, vous aurez une configuration réellement identique l’une pour l’autre, ce qui vous permettra d’assurer encore plus au niveau de vos tests.

Être à jour

Vous pensez que je vais vous parlez de votre machine ? Et bien non, pas encore, cela viendra dans le chapitre approprié sur votre Système d’exploitation GNU/Linux 😉
Le sujet de cette sous-partie, c’est vous. Nous avons commencé par dire que vous ne saviez rien. Vous devez donc vous tenir informé sur l’ensemble des logiciels de votre machine.
Je ne dit pas que vous devez suivre une formation pour administrateur système expérimenté.
Mais vous devez au moins faire l’effort de vous abonner à un flux RSS sur la sécurité de votre distribution, de ces nouveaux paquets, des failles sur PHP ou sur les applications hébergées.

Postscriptum

Les articles ne sont pas encore écrit, si vous souhaitez avoir des explications sur la configuration Linux, Apache, MySQL ou PHP. N’hésitez pas à le demander dans les commentaires.
C’est avant tout pour moi un moyen de mettre au clair mes idées, de savoir comment je vais configurer le serveur et surtout d’avoir un post-it amélioré.