serveur_hebergement:apache2:proteger_une_page_web

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
serveur_hebergement:apache2:proteger_une_page_web [2022/06/01 13:54] – [Configuration de Apache] fateserveur_hebergement:apache2:proteger_une_page_web [2023/08/08 14:00] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
 ====== Protéger une page web ====== ====== Protéger une page web ======
  
-On va voir dans cet article comment protéger l’accès à une page web (phpsysinfo par exemple) par mot de passe car toutes les interfaces web n’ont pas toujours de fonction native pour protéger l’accès.+On va voir dans cet article comment protéger l’accès à une page web (phpsysinfo par exemple) par mot de passecar toutes les interfaces web n’ont pas toujours de fonction native pour protéger l’accès.
  
 ===== Création du fichier Digest ===== ===== Création du fichier Digest =====
Ligne 7: Ligne 7:
 On va utiliser une authentification Digest qui permettra de sécuriser la connexion le temps de l’échange de l'identifiant et du mot de passe, contrairement à l’authentification Basic qui laisse passer le mot de passe en clair. On va utiliser une authentification Digest qui permettra de sécuriser la connexion le temps de l’échange de l'identifiant et du mot de passe, contrairement à l’authentification Basic qui laisse passer le mot de passe en clair.
  
-Tout d’abord, il faut activer le module Digest de Apache si ce n’est déjà fait. Pour l’activer, tapez la commande+Tout d’abord, il faut activer le module Digest d’Apache si ce n’est déjà fait. Pour l’activer, tapez la commande
 <code bash>a2enmod auth_digest</code> <code bash>a2enmod auth_digest</code>
  
Ligne 25: Ligne 25:
 Maintenant que notre fichier htdigest est créé, il faut dire à Apache de l’utiliser. Maintenant que notre fichier htdigest est créé, il faut dire à Apache de l’utiliser.
  
-===== Configuration de Apache =====+===== Configuration d’Apache =====
  
 Allez dans le répertoire /etc/apache2/sites-enabled/ et ouvrez votre fichier de configuration Apache. (/var/www/phpsysinfo par exemple)  Allez dans le répertoire /etc/apache2/sites-enabled/ et ouvrez votre fichier de configuration Apache. (/var/www/phpsysinfo par exemple) 
  
 Petite parenthèse. Si le répertoire que vous voulez protéger ne se trouve pas dans le DocumentRoot indiqué dans le fichierde config, il faudra utiliser un Alias. Il vous suffit de rajouter la ligne <code apache>Alias /nomdel'alias répertoiredel'alias</code> Petite parenthèse. Si le répertoire que vous voulez protéger ne se trouve pas dans le DocumentRoot indiqué dans le fichierde config, il faudra utiliser un Alias. Il vous suffit de rajouter la ligne <code apache>Alias /nomdel'alias répertoiredel'alias</code>
-Ca donnerai par exemple <code apache>Alias /phpsysinfo /var/www/phpsysinfo</code>. Il faut que l'utilisateur Apache ai accès à ce répertoire également. Fin de la parenthèse.+Ca donnerait par exemple <code apache>Alias /phpsysinfo /var/www/phpsysinfo</code>. Il faut que l'utilisateur Apache ait accès à ce répertoire également. Fin de la parenthèse.
  
 Ajoutez les lignes suivantes dans votre virtualhost pour protéger l'accès à tout le site : Ajoutez les lignes suivantes dans votre virtualhost pour protéger l'accès à tout le site :
Ligne 46: Ligne 46:
 <code apache><Location /phpsysinfo> <code apache><Location /phpsysinfo>
  AuthType Digest  AuthType Digest
- AuthName "Phpsysinfo"+ AuthName "Realm"
  AuthDigestDomain /var/www/phpsysinfo/ https://www.exmple.fr/phpsysinfo  AuthDigestDomain /var/www/phpsysinfo/ https://www.exmple.fr/phpsysinfo
  AuthDigestProvider file  AuthDigestProvider file
Ligne 53: Ligne 53:
  </Location></code>  </Location></code>
  
-Quelques info sur ce bloc :+Quelques infos sur ce bloc :
  
       * Location indique le répertoire concerné        * Location indique le répertoire concerné 
Ligne 67: Ligne 67:
 Si tout a fonctionné, en rentrant l’utilisateur et le mot de passe configuré plus haut, vous aurez accès au contenu. Si tout a fonctionné, en rentrant l’utilisateur et le mot de passe configuré plus haut, vous aurez accès au contenu.
  
-===== Pensez à protéger l’accès http et https =====+===== Pensez à rediriger les  connexions http vers https =====
  
-Dans mon cas, toutes les connexions http sont redirigées vers le https (voir ici comment faire), donc je n’ai besoin que de modifier le fichier de configuration SSL. Si ce n’est pas votre cas, il vous faudra faire la même modification sur le fichier 000-default.conf, sinon l’interface sera protégée quand on y accède en https mais sera sans aucune protection quand on y accède en http+Dans mon cas, toutes les connexions http sont redirigées vers le https, donc je n’ajoute la protection que dans le vhost du port 443. Si vous ne redirigez pas les connexions http vers https l’interface sera sans aucune protection quand on y accède en http.
-Idem si vous accéder à votre interface via un nom de domaine. Si vous n’avez pas de redirection https pensez bien à rajouter cette modif dans le vhost du port 80 ET dans le vhost du port 443.+
  
  • serveur_hebergement/apache2/proteger_une_page_web.1654091656.txt.gz
  • Dernière modification : 2023/08/08 14:01
  • (modification externe)