Introduction

PHP est un langage puissant et l'interpr�teur, qu'il soit inclus dans le serveur web ou bien compil� en version CGI, est capable d'acc�der aux fichiers, d'ex�cuter des commandes et d'ouvrir des connexions r�seaux. Toutes ces propri�t�s rendent fragile la s�curit� d'un serveur web. Le langage PHP a �t� pens� afin d'�tre un langage beaucoup plus s�curis� pour �crire des CGI que le Perl ou le langage C. De plus, une s�lection rigoureuse des options de compilation et d'ex�cution vous permettra d'obtenir un �quilibre parfait entre libert� et s�curit�.

�tant donn� qu'il y a de nombreux moyens d'utiliser le langage PHP, il y a de nombreuses directives de configuration afin d'en contr�ler le comportement. Un grand nombre d'options permettent d'utiliser PHP dans de nombreuses situations, mais cela signifie aussi qu'il y a certaines combinaisons d'options de compilation et d'ex�cution qui fragilisent la s�curit� du serveur. Ce chapitre explique comment les diff�rentes options de configuration peuvent �tre combin�es, tout en conservant une s�curit� maximum.

La flexibilit� de configuration de PHP est �paul�e par la flexibilit� du code. PHP peut �tre compil� pour constituer une application serveur compl�te, avec toutes les fonctionnalit�s d'un shell, ou il peut encore �tre utilis� comme simple SSI (server side include) avec peu de risque, dans un environnement � s�curit� renforc�e. La cr�ation de cet environnement et sa s�curit� est largement � la charge du d�veloppeur PHP.

Ce chapitre commence par expliquer les diff�rentes options de configuration et les situations dans lesquelles elles peuvent �tre utilis�es en toute s�curit�. Puis, viennent les consid�rations de niveaux de s�curit�, et les conseils g�n�raux.