Configurer son php.ini

Publié le 22 août 2008 - Administration Serveur. Tags : ,

Place à un petit article sans prétention destiné aux administrateurs de serveur web en herbe, afin qu’ils puissent configurer avec un minimum de sécurité leur php.ini.

Je précise pour les étourdis que ce petit tuto se déroule sous Linux (en l’occurence sur une Débian Etch) et que vous devez avoir un accès SSH (connectez-vous via PuTTY par ex.) avec les privilèges du root.

Une fois loggés, vous allez devoir éditer le fichier de configuration de php :

nano /etc/php5/apache2/php.ini

Cherchez les options suivantes (CTRL+W pour aller plus vite) et désactivez tout en éditant de cette façon:

expose_php = Off
display_errors = Off
register_globals off
allow_url_fopen off
magic_quotes_gpc = Off

Pour préciser un petit peut expose_php à off cache les infos sur php (version utilisée entre autres), display_errors empêche l’affichage des erreurs lors des plantages de scripts (laisser à ‘on’ si vous êtes en dev donc), etc.

Dans la même lignée interdisez les options dangereuses souvent inutilisées telles que:

disable_functions = "system, exec, phpinfo, copy"

Notez que si ces fonctions sont utilisées par vos scripts, ils ne fonctionneront plus, ne désactivez pas les options que vous utilisez

Limitez de façon basique les plantages éventuels du serveur ou les attaques de DoS :

memory_limit = 8M
post_max_size = 262144
upload_max_filesize = 262144

Puis redemmarrez Apache pour que les modifs soient prises en compte:

/etc/init.d/apache2 restart

Voilà ce n’est pas bien compliqué et loin de transfomer Apache en bunker mais c’est le minimum vital à mettre en place pour ne pas se faire hacker bêtement ;)


Articles sur ce thème :