IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

Interdire l'accès à un fichier


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 607
    Par défaut Interdire l'accès à un fichier
    Bonjour

    Je cherche à interdire l'accès à un fichier.

    J'ai essayé ceci dans le .htaccess :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <Files "test.php">
    order deny,allow
    deny from all
    </Files>

    Ceci moins catégorique dans /etc/apache2/apache2.conf (c'est du debian) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <Files "chemin vers le fichier">
    order deny,allow
    deny from all
    Allow from 192.168.2.1
    </Files>
    Rien n'y fait

    nb : la configuration indique bien .htaccess (extrait de /etc/apache2/apache2.conf)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AccessFileName .htaccess
    Modérateur Mageia/Mandriva Linux
    Amicalement VOOotre
    Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
    Mes tutoriels : xrandr, algorigramme et C, xml et gtk...

  2. #2
    Membre Expert

    Homme Profil pro
    Ingénieur Hospitalier
    Inscrit en
    Juillet 2004
    Messages
    993
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Hospitalier
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 993
    Billets dans le blog
    1
    Par défaut
    Salut est tu sur de l'appliquer sur le bon domaine? as tu plusieurs domaines gérés ou un seul? idéalement il faut le mettre dans ton vhost si tu as un seul domaine à gérer dans debian idéalement dans ton fichier vhost par défaut :

    Debian de 6 à 9
    Code sh : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    sudo nano /etc/apache2/sites-available/000-default.conf

    et a l’intérieur d'un conteneur DirectoryDe plus les chemins ne possède normalement pas de quotes (note que les " " ne sont pas utilisé depuis apache 2.2 pour le path)

    Code sh : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    ...
    <Directory /var/www/html>
        <Files test.php>
            Order allow,deny
            Deny from all
            allow from 192.168.2.1
        </Files>
    </Directory>
    ...
    Je ne te garantie rien .

  3. #3
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 607
    Par défaut
    Ça n'a pas marché.

    Une remarque : le chemin vers le fichier test, il faut le mettre depuis la racine de l'ordinateur ou depuis la racine du site (dans l'exemple /var/www/html). J'ai mis la racine de l'ordinateur, c'est peut-être mon problème.
    Modérateur Mageia/Mandriva Linux
    Amicalement VOOotre
    Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
    Mes tutoriels : xrandr, algorigramme et C, xml et gtk...

  4. #4
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 670
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 670
    Par défaut
    Citation Envoyé par troumad Voir le message
    J'ai essayé ceci dans le .htaccess :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <Files "test.php">
    order deny,allow
    deny from all
    </Files>
    j'ai testé cela dans le répertoire du fichier concerné et ça bloque bien ce fichier
    est ce que dans les réglages d'Apache vous avez bien autorisé cela avec "AllowOverride All" par exemple ?

  5. #5
    Membre Expert

    Homme Profil pro
    Ingénieur Hospitalier
    Inscrit en
    Juillet 2004
    Messages
    993
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Hospitalier
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 993
    Billets dans le blog
    1
    Par défaut
    Salut troumad
    Citation Envoyé par troumad
    Une remarque : le chemin vers le fichier test, il faut le mettre depuis la racine de l'ordinateur ou depuis la racine du site (dans l'exemple /var/www/html). J'ai mis la racine de l'ordinateur, c'est peut-être mon problème.
    Lorsque tu dit la racine de l'ordinateur, tu parle de ton dossier /home/USERNAME/site si tu as référencé un site directement dans ta home dans ce cas il faut que tu met aussi les droits qui vont avec.

    Droit apaches2 : On ajoute ton utilisateur au group apache2 www-data et on change les droits avec ton nom d'utilisateur.
    Code sh : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    sudo adduser USERNAME www-data
    sudo chown USERNAME:USERNAME /home/USERNAME/DOSSIER

    Si ton site utilise les liens symboliques il faut la directive qui va bien à l'intérieur mieux vaux le faire à partir du dossier vers un dossier site contenue dans le www site tu compte géré plusieurs domaines.
    Code sh : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    cd /var/www/html
    sudo mkdir mondomain.com | sudo chown www-data:www-data /var/www/html/mondomain.com
    cd /mondomain.com
    sudo ln -s ~/mondomain.com/* .
    Comme le dit si bien @mathieu la directive AllowOverride All la régle que tu as mit s'applique a un fichier test.php situé à la base du site défini dans le chemin de ton conteneur <Directory chemin/vers/domain.com

  6. #6
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 607
    Par défaut
    Le problème pourrait venir delà configuration générale de apache ?
    Sinon les fichiers appartiennent à mon utilisateur. Pas au groupe www-data. Mais les problèmes de droits empêcheraient la lecture mais ne bloqueraient pas une interdiction ?

    Pour ce qui est des problèmes de groupe je préfère les régler à coup de :
    vi /etc/group
    Modérateur Mageia/Mandriva Linux
    Amicalement VOOotre
    Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
    Mes tutoriels : xrandr, algorigramme et C, xml et gtk...

  7. #7
    Membre Expert

    Homme Profil pro
    Ingénieur Hospitalier
    Inscrit en
    Juillet 2004
    Messages
    993
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Hospitalier
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 993
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par troumad
    Le problème pourrait venir delà configuration générale de apache ?
    Sinon les fichiers appartiennent à mon utilisateur. Pas au groupe www-data. Mais les problèmes de droits empêcheraient la lecture mais ne bloqueraient pas une interdiction ?
    Oui tu as raison, si tu n'a pas d'erreur 500 ou autres erreurs restrictives, les droits devrait être bon.

    Citation Envoyé par troumad
    Pour ce qui est des problèmes de groupe je préfère les régler à coup de :
    vi /etc/group
    Je met souvent nano, je le fait car souvent vim trouble un certain nombre d'utilisateur .

    Tu devrait vérifié si tu n'a pas une exception de relevé dans les logs d'apaches des fois qu'une piste nous permet d'y voir plus clair.
    Code sh : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    sudo tail -15 /var/log/apache2/error.log

Discussions similaires

  1. Interdire l'accès à des fichiers en URL directe
    Par LeonCosnyd dans le forum Sécurité
    Réponses: 5
    Dernier message: 25/02/2011, 16h28
  2. Interdire l'accès aux fichiers dans certains cas
    Par ant0inep dans le forum Langage
    Réponses: 1
    Dernier message: 04/10/2010, 16h04
  3. Interdire l'accès au fichier si non connecté
    Par nico3141 dans le forum Sécurité
    Réponses: 0
    Dernier message: 19/02/2010, 13h56
  4. Réponses: 14
    Dernier message: 03/10/2007, 17h37
  5. interdire l'accés à un fichier en tapant son url
    Par Le fut dans le forum Apache
    Réponses: 1
    Dernier message: 13/03/2007, 13h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo