Étape 5: Rendre votre page Web plus sûr
Afin de créer le fichier qui stockera les mots de passe nécessaires pour accéder à notre contenu à accès restreint, nous allons utiliser un utilitaire appelé htpasswd. Cela se trouve dans le paquet apache2-utils . Celui-ci a été installé à l’étape 1.
/etc/apache2/.htpasswd pi de pi $ sudo htpasswd - c
(On vous demandera de fournir et confirmez un mot de passe pour l’utilisateur)
Nouveau mot de passe :
Retapez le nouveau mot de passe :
Ajout de mot de passe pour le pi de l’utilisateur
Si nous considérons le contenu du fichier, nous pouvons voir le nom d’utilisateur et le mot de passe crypté pour chaque enregistrement :
pi $ cat /etc/apache2/.htpasswd
pi: $xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx /
Configuration de contrôle d’accès dans la définition de l’hôte virtuel
Commencez par ouvrir le fichier hôte virtuel que vous souhaitez ajouter une restriction. Pour notre exemple, nous allons utiliser le fichier 000-default.conf qui tient de l’hôte virtuel par défaut installé par le paquet apache de Raspbian :
sudo nano /etc/apache2/sites-enabled/000-default.conf
A l’intérieur, avec les commentaires dépouillés, le fichier devrait ressembler à ceci :
ServerAdmin webmaster
DocumentRoot/var/www
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combiné
L’authentification est effectuée sur une base par répertoire. Pour configurer l’authentification, vous aurez besoin cibler le répertoire que vous souhaitez restreindre avec un bloc. Dans notre exemple, nous allons limiter la racine du document entier, mais vous pouvez modifier cette liste pour seule cible un répertoire spécifique au sein de l’espace web. Dans ce bloc de répertoire, spécifier que nous voulons mettre en place l’authentification de base. Pour le AuthName, choisissez un nom de domaine qui sera affiché à l’utilisateur lors d’une demande d’informations d’identification. Utilisez la directive AuthUserFile à point Apache dans le fichier de mot de passe, que nous avons créé. Enfin, nous exigerons un utilisateur valide pour accéder à cette ressource, ce qui signifie que toute personne peut vérifier leur identité avec un mot de passe ne sera autorisé dans :
ServerAdmin webmaster
DocumentRoot/var/www
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combiné
AuthType Basic
AuthName « limitée de contenu »
AuthUserFile /etc/apache2/.htpasswd
Besoin d’utilisateur valide
Enregistrez et fermez le fichier lorsque vous avez terminé. Redémarrez Apache pour mettre en oeuvre votre stratégie de mot de passe :
sudo service apache2 restart
Le répertoire que vous avez spécifié doit maintenant être protégé par mot.