Configurer l’authentification par mot de passe avec Apache sur Ubuntu 18.04/20.04/22.04 LTS

configurer le mot de passe pour apache Debian Ubuntu 18.04 20.04 22.04 LTS

Apache est le serveur web le plus populaire et le plus utilisé au monde. Il offre de nombreuses fonctionnalités puissantes, notamment des modules chargeables dynamiquement, une prise en charge robuste des médias et une intégration étendue avec d’autres logiciels populaires. Dans ce guide, nous allons démontrer comment configurer l’authentification par mot de passe sur un serveur web Apache configuré sur Ubuntu 18.04/20.04/22.04 LTS.

Essentiels

Avant de commencer ce guide, vous aurez besoin des éléments suivants :

  • Accès à un compte utilisateur avec des privilèges sudo.
  • Apache installé sur Ubuntu 18.04/20.04/22.04 LTS.

Étape 1 : Création d’un fichier de mots de passe

Avant de pouvoir configurer l’authentification par mot de passe, nous devons créer un fichier de mots de passe auquel Apache peut se référer lorsqu’un utilisateur tente d’accéder à une ressource à accès restreint.

Nous utiliserons l’utilitaire htpasswd pour créer ce fichier. Cet utilitaire peut créer des mots de passe cryptés, que nous allons stocker dans le fichier.

Pour créer le fichier et commencer à ajouter des utilisateurs, tapez :

$ sudo htpasswd -c /etc/apache2/.htpasswd <username>

Un mot de passe vous sera demandé pour l’utilisateur. Saisissez un mot de passe sécurisé, puis confirmez-le. L’indicateur -c indique à l’utilitaire qu’il s’agit du premier utilisateur que nous créons dans le fichier.

Pour les utilisateurs suivants, vous pouvez omettre l’indicateur -c. Cela ajoutera l’utilisateur au fichier existant au lieu de l’écraser :

$ sudo htpasswd /etc/apache2/.htpasswd <username>

Lorsque vous avez fini d’ajouter des utilisateurs, vous pouvez vérifier le contenu du fichier en tapant :

$ cat /etc/apache2/.htpasswd

Étape 2 : Configuration d’Apache

Maintenant que nous avons créé le fichier de mots de passe, nous pouvons configurer Apache pour qu’il s’y réfère.

Pour ce faire, il faut modifier le fichier de configuration du répertoire dont on veut restreindre l’accès. Il peut s’agir du répertoire racine du serveur, ou d’un sous-répertoire.

Par exemple, si nous voulions restreindre l’accès au répertoire racine, nous modifierions le fichier suivant :

$ sudo nano /etc/apache2/sites-enabled/000-default.conf

Si nous voulions restreindre l’accès à un sous-répertoire, nous éditerions le fichier correspondant dans le répertoire sites-enabled.

Nous devons ajouter le bloc de configuration suivant au fichier. Ce bloc doit être placé entre les balises qui font référence au répertoire dont nous limitons l’accès :

<Directory /var/www/html>
    AuthType Basic
    AuthName "Restricted Content"
    AuthUserFile /etc/apache2/.htpasswd
    Require valid-user
</Directory>

La directive AuthType indique à Apache quel type d’authentification nous utilisons. Dans ce cas, nous utilisons l’authentification de base.

La directive AuthName fournit un nom pour la zone d’authentification. Ce nom sera affiché dans la boîte de dialogue d’authentification présentée à l’utilisateur.

La directive AuthUserFile indique à Apache où chercher les informations d’identification de l’utilisateur. Dans ce cas, nous utilisons le fichier que nous avons créé à l’étape 1.

La dernière directive, require valid-user, indique à Apache que l’utilisateur doit fournir des informations d’identification valides pour accéder à la ressource restreinte.

Lorsque vous avez terminé, enregistrez et fermez le fichier.

Étape 3 : Redémarrer Apache

Maintenant que nous avons configuré Apache pour qu’il se réfère à notre fichier de mots de passe, nous devons redémarrer le serveur pour activer les changements.

Nous pouvons le faire en tapant :

$ sudo systemctl restart apache2

Conclusion

À ce stade, Apache doit être configuré pour exiger des informations d’identification valides pour l’accès au répertoire spécifié. Lorsqu’un utilisateur tente d’accéder au répertoire, il doit voir un popup comme celle-ci :

auth username password

Si l’utilisateur saisit des informations d’identification valides, l’accès lui est accordé. Sinon, il verra un message d’erreur.

Laisser un commentaire