See site in english Voir le site en francais
Website skin:
home  download  forum  link  contact

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

Author Topic: [Php] Les htpasswd  (Read 1710 times)

0 Members and 1 Guest are viewing this topic.

Offline Jim Lovell

  • Global Moderator
  • Legend
  • *****
  • Posts: 1530
  • Country: Belgium be
  • Karma: 31
    • Mon site
08 November 2012, 20:07:48
Bonsoir à tous,

J'aimerais une fois encore faire appel à vos connaissances, surtout en Php cette fois ci ! ;)

Suite à ma mésaventure avec OVH ces derniers jours, j'aimerais sécuriser un peu plus mes dossiers présents sur mon FTP.
J'ai donc décidé de mettre en place des fichiers .htaccess liés à un fichier .htpasswd. Voici le code du .htaccess :

Code: [Select]
AuthUserFile /***/***/www/***/.htpasswd
AuthGroupFile /dev/null
AuthName "Veuillez vous identifier"
AuthType Basic
require valid-user

Cela fonctionne !
Lorsque je demande à accéder à un dossier dans lequel j'ai mis ce fichier .htpasswd, on me demande un login/mot de passe, ça marche.

Le petit détail que j'aimerais régler est le suivant.
J'aimerais garder ce système d'authentification pour accéder à la liste complète des fichiers présents dans le répertoire.
MAIS j'aimerais aussi que si je donne un lien direct vers un fichier dans ce dossier protégé, et bien qu'il ne soit pas nécessaire de donner un login/mot de passe.

Exemple pour que ce soit plus clair :

Dans mon dossier /Images je possède toutes mes images jpg, png et mêmes des zip avec des photos.
Grâce au .htpasswd, je peux empêcher quiconque de voir la liste complète des fichiers et de les télécharger "à vue" sans mon accord.
Mais lorsque je poste un message sur un forum ou lorsque j'envoie un mail, j'aimerais par exemple utiliser une image jpg qui est présente dans ce répertoire et donc qu'elle soit accessible publiquement uniquement si l'on connait le chemin et le nom exact du fichier.

Est-ce possible ?

Merci à vous ! :)


Jim Love:love:LL
C'est en se plantant que l'on construit ses racines....


ConneXion

Offline Jim Lovell

  • Global Moderator
  • Legend
  • *****
  • Posts: 1530
  • Country: Belgium be
  • Karma: 31
    • Mon site
Reply #1 - 08 November 2012, 20:26:39
Ps : j'aimerais aussi savoir si depuis mon fichier .htaccess que je possède à la racine de mon serveur s'il est possible de restreindre l'accès via mot de passe à plusieurs dossier à la fois ?
Comme ça je n'ai qu'un seul fichier .htaccess pour tous mes dossiers protégés, je ne dois pas en ajouter un à chaque fois dedans ;)


Jim Love:love:LL
C'est en se plantant que l'on construit ses racines....


ConneXion

Offline SolarLiner

  • Global Moderator
  • Legend
  • *****
  • Posts: 2769
  • Country: France fr
  • Karma: 55
  • a été remercié par Le Créateur
Reply #2 - 08 November 2012, 20:51:44
Je ne pense pas qu'on puisse laisser passer un accès direct. Soit tu protèges totalement ton dossier, soit tu le protèges pas !
La raison est que le client web va chercher le fichier sur ton server, en descendant la structure (ex: dansteph.com ->orbiter.dansteph.com -> orbiter.dansteph.com/forum -> orbiter.dansteph.com/forum/read.php). Donc fatalement il va se heurter à l'acces du dossier "forum" qui est protégé par un .htpsswd (admettons). Donc pour moi pas possible. Une solution serai de mettre tes images dans ton dossier, et de restreindre un sous-dossier avec les images importantes que personne sauf toi ne peut aller voir, dans aucun cas. Je me demande ce qu'elles montrent, tes photos cachées :badsmile: )

Après pour limiter plusieurs dossiers un un coup je ne sais pas, et chercher alors qu'une simple copie suffit ne serai pas judicieux, surtout quand tu ne trouve pas vite la solution :)


« Last Edit: 08 November 2012, 23:30:59 by SolarLiner »

Offline DanSteph

  • Administrator
  • Legend
  • *****
  • Posts: 15407
  • Karma: 256
  • Hein, quoi !?
    • FsPassengers
Reply #3 - 08 November 2012, 22:11:58
C'est possible de planquer complètement des dossiers et d'accéder au contenu.

Y a des tonnes de possiblités mais la sécurité c'est un tout, si tu t'amuse à tout planquer mais que ton httpd.conf contient des failles c'est raté. Même chose avec php.ini et bien d'autres joyeusetés encore. Faut encore voir du coté des pack à installer comme APF et d'autres et finalement avoir une machine à jours. (Ca fait quatres jours que je suis dessus et je commence à voir le bout)

Enfin bref, je t'engage à rechercher sur google déjà avec des mots clés genre "ovh sécuriser serveur" "sécuriser http.conf" "sécuriser php" et des trucs du genre.

Dan

« Last Edit: 08 November 2012, 23:30:59 by DanSteph »

Offline Jim Lovell

  • Global Moderator
  • Legend
  • *****
  • Posts: 1530
  • Country: Belgium be
  • Karma: 31
    • Mon site
Reply #4 - 08 November 2012, 23:03:45
Merci pour vos réponses ! ;)

Finalement je pense avoir trouvé un bon compromis : lorsque j'utilise dans mon htaccess ceci :

Code: [Select]
Options -Indexes

Cela désactive le listing des fichiers. Ca m'arrange car personne n'y a accès sauf moi en FTP et sur le navigateur lorsque je connais l'URL exacte d'un fichier.
Je pense que je vais un peu jongler avec ces deux notions de htpasswd et d'indexage, y'a sûrement de beaux scripts à faire pour établir l'équilibre entre ces 2 solutions ;)

Quote
SolarLiner a écrit:
Je me demande ce qu'elles montrent, tes photos cachées :badsmile: )


Si tu savais ! :badsmile:
Bof en fait pour la majeure partie des photos de vacances, de beaux paysages mais que je n'aimerais pas voir 'scannés' par des botnets extérieurs comme ce fut le cas lors de la fermeture de mon serveur.


« Last Edit: 08 November 2012, 23:30:59 by Jim Lovell »
Jim Love:love:LL
C'est en se plantant que l'on construit ses racines....


ConneXion

Offline DanSteph

  • Administrator
  • Legend
  • *****
  • Posts: 15407
  • Karma: 256
  • Hein, quoi !?
    • FsPassengers
Reply #5 - 08 November 2012, 23:16:12
Quote
Jim Lovell a écrit:
Finalement je pense avoir trouvé un bon compromis : lorsque j'utilise dans mon htaccess ceci :

Code: [Select]
Options -Indexes

Met le dans de http.conf et il sera pour tout les sites du serveur et plus besoin de le mettre dans des htaccess. (qu'on fini toujours par oublier)

La sécurité doit être stricte par défaut et et éventuellement tu te sert des .ht* pour ouvrir un peu pour chaque site. Vaut mieux qu'un oubli maintienne les choses fermées plutôt qu'ouvertes ;)

Dan



Message modifié ( 08-11-2012 23:24 )

« Last Edit: 08 November 2012, 23:30:59 by DanSteph »

Offline Jim Lovell

  • Global Moderator
  • Legend
  • *****
  • Posts: 1530
  • Country: Belgium be
  • Karma: 31
    • Mon site
Reply #6 - 08 November 2012, 23:29:15
En effet !

C'est beaucoup mieux ainsi ;) Je n'ai pas accès au httpd.conf mais j'ai placé ce petit paramètre dans le .htaccess qui se trouve à la racine de mon site web, du coup tout est caché pour chaque dossier.


« Last Edit: 08 November 2012, 23:30:59 by Jim Lovell »
Jim Love:love:LL
C'est en se plantant que l'on construit ses racines....


ConneXion

Offline DanSteph

  • Administrator
  • Legend
  • *****
  • Posts: 15407
  • Karma: 256
  • Hein, quoi !?
    • FsPassengers
Reply #7 - 08 November 2012, 23:30:59
Quote
Jim Lovell a écrit:
C'est beaucoup mieux ainsi ;) Je n'ai pas accès au httpd.conf mais j'ai placé ce petit paramètre dans le .htaccess qui se trouve à la racine de mon site web, du coup tout est caché pour chaque dossier.

Ah donc t'as pas un serveur, sorry, j'ai cru.



Message modifié ( 08-11-2012 23:43 )

« Last Edit: 08 November 2012, 23:30:59 by DanSteph »