May 12, 200718 yr Bonsoir à tous. Je viens d'installer un serveur Apache. Je ne l'ai pas encore sécuriser car il reste pour l'instant uniquement en local (Faut dire aussi que j'ai du mal a comprendre comment faire je suis débutant sous linux (ubuntu) et sur ce style de manipulation). Pour l'instant j'ai juste installé Phpmyadmin+PHP+Mysql+Apache2. Je regarde les tutos sur le site du zero notamment celui sur les htaccess et htpasswd. Mon dossier qui devra etre proteger est le dossier "admin" Je fais les manipulations suivantes: sudo gedit /var/www/admin/.htaccess J'entre dans le nouveau fichier : AuthName "Page d'administration protégée" AuthType Basic AuthUserFile "/var/www/admin/.htpasswd" Require valid-user Puis je fais: sudo gedit /var/www/admin/.htpasswd Et j'entre : ecortex:$1$zKH0e3QV$xzMdzPGZnlt8WPqlyEG97/ Dans le dossier il y a une page qui ne sert a rien, juste un index pour voir si on m'affichera quelque chose avant de l'atteindre. Je vais donc dans ma barre d'adresse firefox et met: http://127.0.0.1/admin/ Ma page s'affiche directement, aucune apparution de message demandant quelque chose... Comment sécuriser mon dossier? Merci d'avance. Edited May 12, 200718 yr by ecortex
May 12, 200718 yr vérifiez les directives "AllowOverride" de la conf d'apache Il faut au moins "AuthConfig" et pas "None"
May 12, 200718 yr dans la configuration d'apache (par défaut httpd.conf) et il faut chercher les directives "AllowOverride" pour les modifier
May 12, 200718 yr Author je ne trouve pas ce fichier... Faut t'il faire quelque chose de particulier pour l'avoir? EDIT: J'ai cru voir qu'il fallait avoir ssl. Je suis donc passé sur la doc' Ubuntu et il m'ont dis d'installé les paquets : open-ssl ca-certificates Je fais donc : ecortex@ecortex-desktop:~$ sudo apt-get install open-ssl ca-certificates Lecture des listes de paquets... Fait Construction de l'arbre des dépendances Lecture de l'information d'état... Fait E: Impossible de trouver le paquet open-ssl Comment faire?
May 12, 200718 yr Author je le trouve pas... Je trouve ce fichier en conf : /etc/apache2/apache2.conf mais aucun AuthConfig dedans...
May 13, 200718 yr Author NameVirtualHost * <VirtualHost *> ServerAdmin webmaster@localhost DocumentRoot /var/www/ <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all # This directive allows us to have apache2's default start page # in /apache2-default/, but still have / go to the right place #RedirectMatch ^/$ /apache2-default/ </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog /var/log/apache2/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/access.log combined ServerSignature On Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory> </VirtualHost> Qu'est ce que je dois changé dedans? Je ne comprend strictement rien au fichier...
May 13, 200718 yr Changez la directive AllowOverride du répertoire concerné... <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all # This directive allows us to have apache2's default start page # in /apache2-default/, but still have / go to the right place #RedirectMatch ^/$ /apache2-default/ </Directory> devient : <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all # This directive allows us to have apache2's default start page # in /apache2-default/, but still have / go to the right place #RedirectMatch ^/$ /apache2-default/ </Directory>
May 13, 200718 yr Author cela signifie quoi AllowOverride? Dans ce meme document on peut y placé un code pour pas que le sgens puisse telecharger les htaccess. Ou le mettre? AccessFileName .httpdoverride <Files ~ "^\.ht"> Order allow,deny Deny from all Satisfy All </Files> J'essai des maintenant. ça marche ! MERCI ! Pourrais tu m'aider a placer la commande pour que l'on puisse telecharger mais htaccess et htpasswd? J'ai aussi d'autre code que j'ai vu dans la doc d'ubuntu comme : Empêcher Apache de suivre les liens symboliques Options -FollowSymLinks Désactiver l'exécution de scripts CGI Options -ExecCGI Restreindre l'accès aux seuls fichiers du répertoire web <Directory /> Order Deny,Allow Deny from all Options None AllowOverride None </Directory> <Directory /var/www/> Order Allow,Deny Allow from all </Directory> Pour ce dernier cela voudra dire qu'une personne se connectant au serveur ne pourra pas faire autre chose que voir les fichier de mon site c'est ça? Edited May 13, 200718 yr by ecortex
May 13, 200718 yr http://httpd.apache.org/docs/2.2/mod/core.html#allowoverride AccessFileName .httpdoverride<Files ~ "^\.ht"> Order allow,deny Deny from all Satisfy All </Files> pas bon, les .htaccess seront plus pris en compte... il faut laisser cette portion de conf par défaut : AccessFileName .htaccess<Files ~ "^\.ht"> Order allow,deny Deny from all Satisfy All </Files> Dans la conf par défaut, les .htaccess et .htpasswd sont déjà protégés et non téléchargeables
May 13, 200718 yr Author Oki merci je savais pas ! Restreindre l'accès aux seuls fichiers du répertoire web CODE <Directory /> Order Deny,Allow Deny from all Options None AllowOverride None </Directory> <Directory /var/www/> Order Allow,Deny Allow from all </Directory> Et pour celui la? car mon pere a vraiment peur que les gens puisse pénétré dans mon ordinateur puis se connecté en réseau. En tout cas je t remercie vraiment pour ta gentillesse et ton ecoute face a un gros débutant comme moi! Bon aprem à toi en tout cas.
May 13, 200718 yr ne faites écouter apache que sur votre interface réseau locale dans ce cas, voire même loopback (127.0.0.1) Le but est de pouvoir accéder à apache seulement depuis votre machine ?
May 13, 200718 yr Dans ce cas plusieurs solutions s'offrent à vous : l'accès par IP, en remplaçant : <Directory /var/www/> Order Allow,Deny Allow from all </Directory> par : <Directory /var/www/> Order Deny,Allow Deny from All Allow from IP1 Allow from IP2 Allow from IP3 </Directory> les IP1 à 3 étant à remplacer par l'adresse IP de vos amis Ou via .htaccess + .htpasswd, et dans ce cas une demande de login + mot de passe sera faite lors de l'accès. Quels tests avez-vous déjà fait ? qu'est-ce que cela donne ?
May 13, 200718 yr Author J'ai essayé avec le .htaccess et .htpasswd et cela marche impecc' Le dossier admin requiert désormais mot de pass et login. A votre avis suis je pret pour rerouter le port 80 de ma machine? Ou ais je encore des points a sécuriser? Merci a vous en tout cas !
May 13, 200718 yr tant qu'aucun répertoire n'est accessible sans mot de passe, et que apache est à jour... (2.2.4 ou 2.0.59 ou 1.3.37) ça ira je pense
May 13, 200718 yr Author Merci pour vos conseil ! Merci encore c'est vraiment super sympa de votre part!
June 19, 200718 yr Bonjour, je rencontre également un soucis avec .htaccess et .htpasswd, j'ai changé d'antivirus (je n'ai plus AVAST) je charge sur le serveur en mode ASCII via filezilla, j'utilise IE7 et je suis sûr de mon mot de passe, et impossible de me connecter, que dois-je faire ? Merci à tous
Archived
This topic is now archived and is closed to further replies.