3. Serveur Web

3.1. Désactivation des accès à distance pour les fichiers de configuration Bugzilla

Il y a beaucoup de fichiers placés dans la zone du répertoire Bugzilla qui ne doivent pas être accessibles depuis le web. À cause de la présentation actuelle de Bugzilla, la liste de ceux qui doivent être accessibles ou pas est plutôt compliquée. Une nouvelle méthode d'installation est actuellement en cours de réalisation; elle devrait résoudre cela en autorisant les fichiers qui ne doivent pas être accessibles depuis le web à être placés dans un répertoire à l'extérieur de la racine internet. Voir le bogue 44659 pour plus d'informations.

[Astuce]Astuce

À l'état brut, Bugzilla a la capacité de créer des fichiers .htaccess qui imposent ces règles. Les instructions pour activer ces directives dans Apache sont disponibles dans Section 2.4.1, « httpd™ d'Apache ».

  • Dans le répertoire principal de Bugzilla, il faut :

    • bloquer : *.pl, *localconfig*, runtests.sh

    • Mais autoriser : localconfig.js, localconfig.rdf

  • Dans data:

    • bloquer tout

    • mais autoriser : duplicates.rdf

  • Dans data/webdot:

    • si vous utilisez un serveur distant webdot :

      • bloquer tout

      • mais autoriser *.dot seulement pour le serveur webdot distant

    • autrement, si vous utilisez un Graph Viz local :

      • bloquer tout

      • mais autoriser : *.png, *.gif, *.jpg, *.map

    • et si vous n'utilisez aucun fichier dot :

      • bloquer tout

  • Dans Bugzilla:

    • bloquer tout

  • Dans template:

    • bloquer tout

Surtout faites bien un test pour voir si les données qui ne doivent pas être accessibles à distance sont correctement bloquées. Le fichier localconfig qui contient votre mot de passe de base de données est particulièrement intéressant ici. Sachez également que beaucoup d'éditeurs créent des fichiers temporaires et de restauration dans le répertoire de travail et que ceux-ci ne doivent également pas être accessibles. Pour plus d'informations, voyez le bogue 186383 ou le Bugtraq ID 6501. Pour le test, précisez simplement à votre navigateur web où est le fichier; par exemple, pour tester une installation mozilla.org, on essaiera d'accéder à http://bugzilla.mozilla.org/localconfig. Vous devriez obtenir une erreur « 403 Forbidden ».

[Astuce]Astuce

N'oubliez pas de consulter, dans Section 2.4, « Web server », les instructions spécifiques au serveur web que vous utilisez.

3.2. Utilisation de mod_throttle pour éviter un déni de service

[Note]Note

Cette partie ne concerne que les gens qui ont choisi un serveur Apache. Il est peut-être possible de faire des choses similaires avec d'autres serveurs web. Consultez la documentation livrée avec votre serveur web pour voir si c'est le cas.

Il est possible pour un utilisateur, par erreur ou volontairement, d'accéder plusieurs fois de suite à la base de données, ce qui peut engendrer des vitesses d'accès très faibles pour les autres utilisateurs (en fait, c'est une attaque par DOS). Si votre installation Bugzilla rencontre ce problème, vous pouvez installer le module Apache mod_throttle qui est capable de limiter le nombre de connexions par adresse IP. Vous pouvez télécharger ce module à http://www.snert.com/Software/mod_throttle/. Suivez les instructions pour l'insérer dans votre installation d'Apache. La commande qu'il vous faut est ThrottleClientIP. Veuillez lire la documentation du module pour plus d'informations.