Vous pouvez avoir une page sensible que vous protégerez ensuite avec le mot de passe. Ceci est également connu sous le nom d’authentification de base.
La bonne nouvelle est que c’est possible et c’est super facile.
Pourquoi protéger la page Web avec un mot de passe ?
Eh bien, il pourrait y avoir de nombreuses raisons, y compris.
- Contiennent des données sensibles sur la page
- La page n’est pas prête et vous ne voulez pas rendre la page visible publiquement mais la partager avec quelqu’un
Quoi qu’il en soit, explorons comment vous pouvez protéger.
Exigence
Prenons un exemple ; Je veux protéger /client
sur lab.geekflare.com, ce qui signifie que si quelqu’un y accède https://lab.geekflare.com/client
Je devrais demander un mot de passe.
apache
Commençons par Apache d’abord.
La première a choisi que nous devions créer est un fichier de mots de passe dans lequel toutes les informations d’identification seront transformées. Le nom du fichier serait .htpasswd
et vous pouvez le placer n’importe où sur le serveur. Je vais le créer sous /etc/httpd/conf
dossier
- Vous pouvez créer le fichier avec le
touch
le commandant
touch /etc/httpd/conf/.htpasswd
- Ajoutons l’utilisateur qui serait autorisé à accéder à / client. Nous devons utiliser
htpasswd
commande pour cela.
htpasswd /etc/httpd/conf/.htpasswd geekflare
- La dernière section geekflare, est le nom d’utilisateur. Modifiez cela avec ce que vous voulez et appuyez sur Entrée.
- Entrez le mot de passe et vous verrez une confirmation que l’utilisateur a été ajouté.
[[email protected] html]# htpasswd /etc/httpd/conf/.htpasswd geekflare
New password:
Re-type new password:
Adding password for user geekflare
[[email protected] html]#
Si vous écrivez le fichier, vous remarquerez que le mot de passe est stocké dans un format crypté. C’est bon!
[[email protected] html]# cat /etc/httpd/conf/.htpasswd
geekflare:$apr1$EHvl0Bc5$nh4u0w3.Cj3wzPT7XUXqW1
[[email protected] html]#
Ensuite, nous devons demander à Apache de protéger l’URI que nous voulons.
- Modifiez le fichier httpd.conf ou le fichier de configuration que vous utilisez pour l’instance Apache. J’utilise l’installation par défaut donc j’utilise /etc/httpd/conf/httpd.conf
- Ajoutez ce qui suit n’importe où dans le fichier
<Directory "/var/www/html/client">
Options Indexes FollowSymLinks
AuthType Basic
AuthName "Protected Content for Client"
AuthUserFile /etc/httpd/conf/.htpasswd
Require valid-user
</Directory>
Si vous avez déjà /var/www/html/client
Directory directive, puis au lieu d’ajouter une nouvelle section, vous devez simplement ajouter ce qui suit dans la directive existante.
AuthType Basic
AuthName "Protected Content"
AuthUserFile /etc/httpd/conf/.htpasswd
Require valid-user
- Redémarrez Apache
service httpd restart
- essayez d’accéder à la page / client, et il devrait demander un mot de passe.
- Saisissez les informations d’identification que vous avez définies précédemment pour afficher le contenu.
Élégant .htaccess méthodes ?
Bien sûr, vous pouvez implémenter l’authentification de base via .htaccess
fichier ainsi. Vous devez toujours générer des informations d’identification à l’aide de htpasswd
comme expliqué ci-dessus. Une fois terminée, vous pouvez ajouter ce qui suit dans le dossier respectif .htaccess
fichier.
AuthType Basic
AuthName "Protected Content"
AuthUserFile /etc/httpd/conf/.htpasswd
Require valid-user
La beauté est que vous n’avez pas besoin de remplacer Apache.
Nginx
Implémentons l’authentification de base dans Nginx en suivant.
Nous prenons l’aide d’Apache Utils pour générer les informations d’identification. Si Apache HTTP n’est pas installé sur le serveur, vous devez installer les utilitaires séparément comme ci-dessous. En cas de doute, vous pouvez procéder htpasswd
pour voir si cela fonctionne. Si ce n’est pas le cas, vous savez que vous devez l’installer.
CentOS / RHEL 8
dnf install httpd-tools
CentOS / RHEL 7
yum install httpd-tools
Ubuntu
apt-get install apache2-utils
- Créons les informations d’identification comme nous l’avons fait dans Apache.
htpasswd -c /etc/nginx/.htpasswd chandan
- Ne pas oublier de remplacer Chandan avec le vrai nom d’utilisateur que vous voulez
Ensuite, nous devons configurer Nginx, de sorte qu’il limite l’URI particulier avec le mot de passe.
- Supposons que nous devions protéger
/admin
URI - Ajoutez ce qui suit dans
nginx.conf
ou tout autre fichier de configuration Nginx actif
location /admin {
auth_basic "Admin Area";
auth_basic_user_file /etc/nginx/.htpasswd;
}
- Redémarrer Nginx
Que faire si vous devez empêcher la diffusion de l’ensemble du site Web via Nginx ?
Facile!
Ajoutez ce qui suit dans nginx.conf ou dans le fichier de configuration actif sous location / {
directif
auth_basic "Admin Area";
auth_basic_user_file /etc/nginx/.htpasswd;
SiteGround
La plateforme d’hébergement a évolué. Il existe de nombreuses plaques-formes qui permettent des outils pratiques, et SiteGround est l’un d’eux.
Si vous utilisez SiteGround pour héberger votre site Web, vous pouvez facilement protéger l’URL depuis leur console d’administration. Supposons que vous utilisez WordPress et avez besoin de protéger /wp-admin
.
- Connectez-vous à SiteGround et accédez au site sur lequel vous devez activer l’authentification de base.
- Cliquez sur Sécurité >> URL protégées >> Utilisateurs
- Entrez le nom et le mot de passe pour créer les informations d’identification
Ensuite, nous protégeons wp-admin avec les informations d’identification que nous venons de créer.
- Aller à l’onglet URL
- Entrez wp-admin dans le chemin et cliquez sur protéger
- Cliquez sur Gérer l’accès et attribuez l’utilisateur que vous venez de créer
Essayez d’accéder à la page et SiteGround vous invitera à saisir les informations d’identification.
Facile, n’est-ce pas ?
WordPress
Vous utilisez WordPress et protégez-vous par mot de passe un article, une page, une catégorie, un rôle ou l’ensemble du site en particulier ?
Sûr !
« Rencontrer PPWP (Plugin WordPress de protection par mot de passe)
Installez le plugin et configurez la manière dont vous souhaitez protéger les ressources WordPress. Cela fonctionne avec les constructeurs de page tel que Elementor, Divi, Castor.
Alternativement, si vous avez besoin d’une simple publication ou d’une page protégée par mot de passe, vous pouvez profiter de la fonctionnalité WP intégrée. Vous n’avez besoin d’aucun plugin pour cela.
- Accédez à la publication ou à la page pour laquelle vous souhaitez activer un mot de passe.
- Dans la section de publication, cliquez sur Modifier à côté de la visibilité : Public
- Sélectionnez Mot de passe protégé et entrez le mot de passe.
- Cliquez sur OK et vous êtes prêt !
Besoin de plus de moyens pour sécuriser WordPress ? Regarde ça guide.
cPanel
Si vous êtes sur l’hébergement mutualisé, alors vous aurez probablement cPanel. La bonne nouvelle est que cPanel propose un utilitaire Directory Privacy; à partir de là, vous pouvez définir un mot de passe pour l’annuaire.
- Connectez-vous à cPanel
- Rechercher la confidentialité de l’annuaire
- Sélectionnez le dossier que vous souhaitez protéger. Comme ci-dessous, j’ai sélectionné un dossier appelé chandan, qui est sous public_html
- Créez l’utilisateur qui doit être autorisé et enregistré
- Une fois terminée, vous remarquerez que le dossier a un verrou
Et c’est tout. Le répertoire est maintenant protégé par mot de passe. Comme vous pouvez le voir ci-dessus, j’ai testé sur Hébergement A2et cela fonctionne très bien.
Conclusion
J’espère que ce qui précède vous aidera à protéger certains URI, dossier avec le mot de passe en utilisant l’authentification de base. Si vous recherchez une sécurité de site Web complète, vous envisagez de mettre en œuvre WAF.