Bonjour !
Ma question s'adresse aux personnes sensibles à l'administration de serveurs web apache2 avec PHP.
Dans le cadre de l'installation d'un serveur de production remis aux goûts du jour, et dans l'optique de sécuriser au mieu le système, j'ai besoin de séparer, pour chaque virtualhost, les droits avec lesquels sont exécutés les scripts. En fait, si jamais on attaque un site hébergé et qu'on peut écrire dans le répertoire du site, je ne veux pas qu'on soit capable de péter le reste.
Pour ce faire, j'ai mis en place libapache2-mod-fcgid qui consiste à utiliser php5-cli pour exécuter les scripts php et j'attribue un user et un groupe. Voici un exemple type de vhost : http://wall.deblan.fr/x1e25/html/1/
Ca fonctionne très bien. Cependant, ça demande la création d'un script shell à chaque création de site web (= d'un nouveau utilisateur unix) : /var/www/service-web/bin/webXXXX/php5-fcgi . Personnellement, je m'en fou, j'ai mes scripts qui génèrent ce qu'il faut automatique, mais j'ai entendu parle de apache2-mpm-itk : http://blog.stuartherbert.com/php/2008/04/19/using-mpm-itk-to-secure-a-shared-server/
Au final, on a la même résultat, sauf qu'on est pas contraint de créer un script shell. Les fcgi ont été faits, me semble-t-il, pour palier à la lenteur de suexec (et son copain dont le nom m'échappe).
Ma question est : quelle solution (apache2-mpm-itk ou libapache2-mod-fcgid) permet d'avoir une exécution la plus rapide ? Quelle est celle qui pompe le moins en ressources ?
Environnement de travail :
- OS : Debian squeeze
- Apache : la version packagée (2.2.16-6+squeeze1)
- PHP : la version packagée (5.3.3-7+squeeze1)
Merci 