web-dev-qa-db-fra.com

Gardez les visiteurs hors des répertoires du serveur et redirigez

L'application Web que j'utilise (Zenphoto) stocke les images dans/albums et sous-dossiers. Son back-end nécessite un accès r/w-à ces dossiers et j'ai besoin d'un accès r/w-aux dossiers via ftp, mais l'interface ne recherche jamais dans/albums.

Maintenant, je veux empêcher les visiteurs d’accéder directement à/albums et à tous les sous-albums

J'ai fait beaucoup de recherches et trouvé qu'un .htaccess dans/albums avec deny from all pourrait accomplir cela. Cependant, je préférerais une redirection vers ma page 404. Ce que j'ai créé à partir d'un cas d'utilisation similaire, c'est que je pouvais le faire dans l'httaccess de ma racine. J'ai ajouté

RewriteRule ^albums/.* /404 [R,NC]

Parce que le cas d'utilisation similaire était très différent en termes de motivation, mes questions sont les suivantes:

  1. Est-ce une solution appropriée?
  2. Fait-il vraiment ce que je veux ou peut-il être contourné?
1
Seul

Le problème avec la redirection sur un 404 est que, selon la manière dont le back-end fonctionne, il peut également recevoir un 404, pour une protection optimale à votre meilleur:

  • chmod 744 ou quelque chose sur le dossier
  • désactiver la liste de fichiers
  • bloquer le dossier dans le fichier robots.txt
  • faire un index.html vide
  • Utilisez meta noindex, nofollow dans index.html, par exemple, pour vous protéger.

En utilisant ce qui précède, il est très improbable qu'ils devinent les noms de fichiers, ce n'est pas quelque chose que les robots font vraiment. Une mesure supplémentaire pourrait utiliser un système d'authentification basé sur passwd .htaccess, mais il pourrait s'agir d'une destruction excessive. Rappelez-vous que s'ils ne peuvent pas voir les fichiers, ils ne peuvent y accéder sans connaître le nom du fichier et si les noms de fichier sont longs, il s'agit simplement de deviner un mot de passe extrêmement volumineux - cela n'arrivera pas.

0
Simon Hayter