Nous avons quelques serveurs tomcat et nous venons de découvrir que certains fichiers dont nous ne voulons pas que le public ait accès à ces fichiers. Pour illustrer:
Disons que nous avons un dossier / var / www / html / que nous publions via tomcat, mais nous ne voulons pas exposer /var/www/html/conf/dbinfo.txt. En ce moment, les gens peuvent aller sur www.thissite.com/conf/dbinfo.txt et ils peuvent voir les choses. J'aimerai pouvoir le bloquer donc ne l'affiche pas mais il permet qu'il soit lu par tomcat lui-même.
Toute aide est appréciée.
Réponses:
L'accès aux fichiers de Tomcat est contrôlé par la section des contraintes de sécurité de WEB-INF / web.xml.
Vous pouvez bloquer de
conf
cette façon:Si vous utilisez apache pour diffuser du contenu statique, cela ne fonctionnera pas car apache diffusera les fichiers de conf avant que tomcat obtienne l'URL. Dans ces cas, vous devrez résoudre ce problème via les fichiers de configuration http d'Apache.
la source
Pourquoi ne pas le stocker en dehors de la structure de votre répertoire Web? Nous ne mettons jamais sous / var / www / html / quoi que ce soit que nous ne voudrions pas qu'un utilisateur découvre.
la source
Bonjour à tous les administrateurs système et informatiques de ce poste. Merci pour vos réponses. Beaucoup de réponses à mes questions étaient acceptables, mais celle-ci était la mieux adaptée à notre environnement de production.
D'accord. Pour bloquer un répertoire ou un fichier dans un hôte virtuel dans server.xml, il vous suffit d'ajouter le code suivant à server.xml dans le répertoire tomcat / conf.
Avant:
Après:
Donc, la réponse à la question est d'ajouter les lignes suivantes:
la source
Un conseil. Après avoir corrigé les autorisations. Modifiez tous les mots de passe et assurez-vous qu'il n'y en a pas de cache Google.
la source
Normalement, les informations de configuration (comme les informations de connexion à la base de données, ...) sont stockées dans des fichiers sous le dossier WEB-INF du fichier WAR déployé sur Tomcat. Les fichiers sous WEB-INF ne sont pas accessibles aux clients.
la source
Ayant le même problème, mais je ne vois pas comment la réponse acceptée peut vraiment fonctionner. La valve invoquée ici s'applique à la webapp ENTIÈRE. Ça n'en fait pas partie. Je suppose donc que dans ce cas, une fois qu'il ne peut pas reconnaître le contexte comme représentant une application Web, il ignore simplement la directive et envoie des commentaires dans le fichier journal.
la source
Vous pouvez bloquer le répertoire en accès public via le fichier server.xml
Ajoutez ces lignes à ce fichier server.xml
puis accédez à ce http: // localhost: 8080 / examples, puis il apparaît comme une erreur de page 404, c'est-à-dire) signifie bloqué
la source