.hatcces

wilou -  
Toon51 Messages postés 261 Statut Membre -
Salut. Toujours sous la Mandrake 9 j'ai installé un site web et j'ai essayé de mettre un .htacces sur un des repertoires du site afin d'en bloquer l'acces. Je l'avais deja fait sur www.free.fr et je n'avais eu aucun prob (j'avais suivi les indications de free pour la mise en pratique : 1 fichier .htacces à la racine du répertoire que l'on veut protéger et un autre contenant les login ainsi que les password). Par contre le meme fichier .htacces sur mon serveur web (mandrake) : aucun succès. Y aurait-il un autre moyen de proteger un repertoire sous Mandrake??? Ou peut-être y a t-il un parametrage particulier a faire sous apache??? Si oui lequel??? Merci d'avance...

2 réponses

  1. kalamit
     
    Salut,
    Effectivement, y'a un truc à modifier dans le httpd.conf, mais me demande pas quoi, j'en sais rien du tout !
    Sinon, il ne faut pas suivre la methode de free qui est un peu particuliere... Le mot de passe est normalement à crypter.

    Kalamit,
    La nuit, tous les chats sont gris. Pas les poulets ! :@)
    0
  2. Toon51 Messages postés 261 Statut Membre 20
     
    Bonjour a toi Wilou,

    Dans un premier temps, le principe de fonctionnement(de ce que j'en ai compris):

    -Tu place un fichier .htaccess dans le répertoir que tu veux protéger
    -Tu indique a ton serveur que ce dossier est protégé.

    Un Exemple avec Apache:

    Dans ton répertoir html (dans la redhat var/www/html), il s'agit du rep contenent la page d'index;

    1- Tu crée un répertoir a protéger.
    genre ../html/toto
    2-Tu crée ton fichier .htacces
    ../html/toto/.htacces

    avec comme contenu :
    AuthType Basic <== Type d'authentification.Il en existe surement d'autres
    AuthUserFile /etc/httpd/conf/toto.passwd <= contient les mots de pass, à mettre dans le dossier ou se trouve httpd.conf
    require valid-user
    satisfy any

    je ne sais pas a quoi servent les dernieres commandes, je ne voudrai pas dire plus de bétises.

    3-Dans le fichier de config du serveur apache, il faut ajouter

    Dans la configuration de apache (souvent /etc/apache/httpd.conf) il faut ajouter une section pour ta zone toto.

    Ceci permettra de dire à apache qu'il doit refuser tout le monde et demander un login/mot de passe pour cette zone.
     
    <Directory "/var/www/toto/">
        deny from all
        AllowOverride AuthConfig
        Order deny,allow
    </Directory>
     
    Pour générer le mot de passe, une syntaxe est :
     
    htpasswd -bc /etc/httpd/conf/toto.passwd USER PASSWORD
     
    Ceci à pour effet de créer un nouveau fichier ( -c ) et d'autoriser à directement encoder le mot de passe en ligne de commande ( -b ).
    Par exemple, pour créer le 1ier utilisateur qui aura le droit d'utiliser vqadmin :
     
    htpasswd -bc /etc/httpd/conf/toto.passwd administrateur monmotdepasse
     
    Pour créer les utilisateurs suivants, il faut enlever le suffixe -c sous peine d'à chaque fois écraser le ficher précédent.
     
    Pour finir, on relance apache pour que la configuration soit prise en compte :
     
    apachectl stop
    apachectl start

    Voilà ce que j'en ai compris et testé.

    Voili voilou.
    0