lors de l’install de dolibarr je met les droits sur tous les fichiers et répertoires à 777 pour ne pas avoir d’erreurs lors de l’utilisation.
Mais je pense que ce n’est peut-etre pas la meilleure solution.
Si jamais vous avez des infos à ce sujet (quels droits utiliser dans quel rep ?) ça serait cool.
Je viens de tester en ajoutant un fichier .htaccess dans le repertoire documents avec comme contenu ceci :
Options -Indexes
Effectivement ça permet de cacher l’arborescence, mais cela n’empeche pas la récuperation des données, je viens de tester avec un aspirateur de site, j’ai eu la total (avec fichier log en prime time)
J’ai ajouté un fichier robots.txt à la racine du serveur web avec comme contenu ceci :
pour tous les robots
User-agent: *
Pour le robot vscooter (Photo Finder de Alta-Vista)
User-Agent: vscooter « TelePort Pro »
Pour le robot Google Advense
User-agent: Mediapartners-Google*
Disallow: /cgi-bin/
Disallow: /bolibarr/
ce fichier empeche les moteurs de recherche de fouiller votre repertoire
Le top serait d’avoir dans le fichier .htaccess ceci :
<Files « * »>
Order Deny,Allow
Deny from all
</Files>
et modifier dolibarr pour que lorsque l’on récupere un fichier dans documents cela se fasse via un programme php avec session actif (si besoin j’ai une procédure pour ça, rester à l’implémenter dans dolibarr)
Voici pour information comment mon installation est configurée.
Il est possible qu’il y ait des erreurs grossières (je suis un amateur).
Donc les critiques sont bienvenues.
Dolibarr 2.5.0 stable
sur Ubuntu 8.10, installation LAMP +- l’installation par défaut de ubuntu,
sur un vieux PC qui tourne 24h/24.
Ce PC est chez moi, derrière un routeur qui forwarde le port 80 sur ce vieux PC.
J’y accède depuis mon bureau, en ville.
Mon but est de tester dolibarr pour voir si cet excellent
logiciel peut aider à éviter les ruptures de stock de réactifs
dans notre laboratoire hospitalier.
La gestion des stocks est extrèmement pénible ici à cause de très
importants délais de livraison (nous sommes à Saint Pierre et
Miquelon).
La configuration Apache:
Voici le début du fichier /etc/apache2/sites-available/default:
VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/dolibarr/htdocs/
<Directory /\>
Options FollowSymLinks
AllowOverride None
</Directory\>
<Directory /var/www/dolibarr/htdocs/\>
Options -Indexes FollowSymLinks MultiViews
AllowOverride None
Order deny,allow
deny from all
allow from 192.168.0.0/24
allow from 198.165.88.0/24 198.165.89.0/24 198.165.90.0/24 198.165.91.0/24 198.165.92.0/24 198.165.93.0/24 198.165.94.0/24 198.165.95.0/24
</Directory\>
L’accès n’est autorisé que pour une plage d’adresse qui
correspond à Saint-Pierre et Miquelon.
Il n’y a aucun fichier .htaccess, nulle part.
Je n’ai pas testé d’aspirateurs de site, mais ils ne devraient
pas fonctionner à cause du -Indexes dans la config générale.
Dans le cadre d’un intranet, pourquoi pas, c’est une solution. Cela limite l’accès aux fichiers, mais je pense que ça ne regle pas l’accès direct, un utilisateur de ton reseau (non connecté à Dolibarr) pourra accèder aux fichiers en indiquant le chemin dans l’URL. Ca limite mais ce n’est pas du 100% sécure
si je puis me permettre la limitations des plages d’ip au sein d’apache sur internet c’est pas la panacée.
2 raisons principales :
c’est un check sur une couche applicative facilement contournable.
tu dois reload ton apache pour chaque changement d’ou un impact de production à chaque modification.
la solution : utilise le firewall netfilter/iptable pour faire ta restriction sur la plage d’adresse IP:
ca ne regle pas l’access direct et sans liaison applicative il n’y a pas de moyen de limiter les acces aux fichiers.
Pour un tres petit nombres gerer les .htaccess c’est fesable mais tres lourd
SAchant que en plus mettre une authentification sans couche ssl c’est un peu useless.
Je vais essayer de trouver le temps d’ecrire un mémo la dessus cette semaine et de le post dans le coin.
Le serveur web apache est exécuté par le user apache (cf. la commande ps).
Le répertoire documents/propale appartient au user apache (cf. la commande ls), et a pour permissions « rw », c’est à dire lecture et écriture, pour son propriétaire (apache).
Mais il n’a pas l’autorisation de parcourir le répertoire (déjà au niveau de « documents », comme tu l’as posté avant) : il n’a pas « x » (pour un répertoire c’est la faculté de le parcourir, pour un fichier de l’exécuter/lancer).
Tu peux essayer de passer ton répertoire documents et ses sous-répertoires en rwx :
sudo chmod u=rwx -R documentset recommencer ton opération dans Dolibarr.
Autrement, tu dois avoir des log apache quelque part dans /var/log/apache2 (ou qqch de proche sur ton CentOS). Entre access.log et surtout error.log, essaie de voir s’il n’y a pas des informations complémentaires pour te mettre sur la voie, si rwx n’a pas résolu ton cas.[/size]