Présentation d’un procédure simple afin de déployer un couple identifiant et mot de passe sur le répertoire de travail /var/www/html du paquet Apache2. L’ensemble de la procédure est faite sous Raspbian version 9 (Stretch)
Version de l’os
cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 9 (stretch)"
NAME="Raspbian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"
ID=raspbian
ID_LIKE=debian
PRETTY_NAME="Raspbian GNU/Linux 9 (stretch)"
NAME="Raspbian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"
ID=raspbian
ID_LIKE=debian
Génère un utilisateur nommé « myuser », le mot de passe désiré va être demandé
sudo htpasswd -c /etc/apache2/.htpasswd myuser
Remplacement du 000-default.conf par défault par celui ci-dessous, le mot de passe sera demandé lors de l’accès au dossier racine /var/www/html
sudo nano /etc/apache2/sites-enabled/000-default.conf
#Configuration complète
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory "/var/www/html">
AuthType Basic
AuthName "Restricted Content"
AuthUserFile /etc/apache2/.htpasswd
Require valid-user
</Directory>
</VirtualHost>
#Configuration complète
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory "/var/www/html">
AuthType Basic
AuthName "Restricted Content"
AuthUserFile /etc/apache2/.htpasswd
Require valid-user
</Directory>
</VirtualHost>
On test la config avant de redémarrer apache
sudo apache2ctl configtest
On redémarre pour prendre en compte la nouvelle configuration et on affiche le status du service apache2
sudo systemctl restart apache2 && sudo systemctl status apache2