GNU/Linux >> Tutoriels Linux >  >> Linux

Comment configurer l'authentification par mot de passe avec Apache sur Ubuntu 18.04

Le serveur Web Apache est gratuit, open source et l'un des serveurs Web les plus utilisés au monde. Il vous permet de diffuser le contenu sur le Web.

N'importe quel utilisateur peut accéder à votre application via Internet lorsqu'elle est hébergée sur un serveur Web Apache. Dans certains cas, vous devrez peut-être sécuriser votre application afin que seuls les utilisateurs authentifiés puissent accéder à l'application. Vous pouvez protéger votre application au niveau du serveur en utilisant Apache htpasswd. Cet utilitaire vous permet de limiter l'accès à un site Web spécifique à la personne limitée qui ne dispose que des informations de connexion.

Dans ce tutoriel, nous allons vous montrer comment configurer l'authentification par mot de passe avec Apache sur Ubuntu 18.04.

Prérequis

  • Un nouveau VPS Ubuntu 18.04 sur la plate-forme cloud d'Atlantic.net.
  • Un mot de passe root configuré sur votre serveur.

Étape 1 - Créer un serveur cloud Atlantic.Net

Tout d'abord, connectez-vous à votre serveur Atlantic.Net Cloud. Créez un nouveau serveur en choisissant Ubuntu 18.04 comme système d'exploitation avec au moins 1 Go de RAM. Connectez-vous à votre serveur cloud via SSH et connectez-vous à l'aide des informations d'identification mises en évidence en haut de la page.

Une fois que vous êtes connecté à votre serveur Ubuntu 18.04, exécutez la commande suivante pour mettre à jour votre système de base avec les derniers packages disponibles.

apt-get update -y

Étape 2 - Installer le serveur Web Apache

apt-get install apache2 apache2-utils -y

Une fois installé, démarrez le service Apache et autorisez-le à démarrer après le redémarrage du système avec la commande suivante :

systemctl start apache2
systemctl enable apache2

Maintenant, ouvrez votre navigateur Web et accédez à l'URL http://your-server-ip. Vous devriez voir votre page Web Apache par défaut dans l'écran suivant :

Étape 3 - Créer un fichier de mot de passe Apache

Tout d'abord, vous devrez créer un fichier de mots de passe qu'Apache pourra utiliser pour authentifier les utilisateurs. Vous pouvez créer un fichier .htpasswd caché dans le répertoire /etc/apache2 pour un utilisateur nommé user1 à l'aide de l'utilitaire htpasswd :

htpasswd -c /etc/apache2/.htpasswd user1

Fournissez le mot de passe souhaité, comme indiqué ci-dessous :

New password:
Re-type new password:
Adding password for user user1

La commande ci-dessus créera un fichier .htpasswd avec les informations d'identification de l'utilisateur. Vous devrez utiliser ces informations d'identification pour accéder à votre site Web.

Étape 4 - Créer un exemple de site Web

Dans cette section, nous allons créer un exemple de structure de répertoires et de fichier index.html à des fins de test.

Tout d'abord, créez un répertoire pour votre site Web avec la commande suivante :

mkdir /var/www/html/example.com

Ensuite, créez un fichier index.html dans votre répertoire Web avec la commande suivante :

nano /var/www/html/example.com/index.html

Ajoutez le contenu suivant :

<html>
<title>Password Protected Apache Website.</title>
<h1>This website is password protected.</h1>
</html>

Enregistrez et fermez le fichier lorsque vous avez terminé. Ensuite, changez la propriété de votre répertoire Web en www-data :

chown -R www-data:www-data /var/www/html/example.com

Étape 5 - Configurer l'authentification de base Apache

Ensuite, vous devrez créer un fichier de configuration d'hôte virtuel Apache pour votre site Web et définir l'authentification de base.

nano /etc/apache2/sites-available/example.conf

Ajoutez les lignes suivantes :

<VirtualHost *:80>
  ServerAdmin [email protected]
  ServerName  example.com
  DocumentRoot /var/www/html/example.com
  DirectoryIndex index.html
  ErrorLog ${APACHE_LOG_DIR}/error.log
  CustomLog ${APACHE_LOG_DIR}/access.log combined
  <Directory "/var/www/html/example.com">
      AuthType Basic
      AuthName "Restricted Content"
      AuthUserFile /etc/apache2/.htpasswd
      Require valid-user
  </Directory>
</VirtualHost>

Enregistrez et fermez le fichier lorsque vous avez terminé.

Une brève explication de chaque directive est spécifiée ci-dessous :

  • Administrateur du serveur :Adresse e-mail de l'administrateur du serveur.
  • Nom du serveur :Nom de domaine que le serveur utilise pour s'identifier.
  • DocumentRoot :Spécifiez le chemin de votre application.
  • Index des répertoires :spécifiez une page par défaut à afficher lors de l'accès à un répertoire.
  • Type d'authentification :Type d'authentification.
  • AuthName :Spécifiez le message à afficher sur la page de mot de passe.
  • AuthUserFile  :spécifiez l'emplacement du fichier d'informations d'identification de l'utilisateur.
  • Exiger  :Spécifiez les utilisateurs qui peuvent accéder à cette région du serveur.

Ensuite, vérifiez Apache pour toute erreur de syntaxe avec la commande suivante :

apachectl -t

Vous devriez obtenir le résultat suivant :

Syntax OK

Ensuite, activez le fichier d'hôte virtuel Apache pour votre site Web avec la commande suivante :

a2ensite example.conf

Ensuite, redémarrez le service Apache pour mettre en œuvre les modifications :

systemctl restart apache2

Étape 6 – Vérifier l'authentification par mot de passe Apache

À ce stade, votre site Web est sécurisé avec l'authentification de base Apache.

Pour le vérifier, ouvrez votre navigateur Web et tapez l'URL http://example.com. Il vous sera demandé de fournir un nom d'utilisateur et un mot de passe pour accéder à votre site Web, comme indiqué ci-dessous :

Indiquez votre nom d'utilisateur et votre mot de passe et cliquez sur Connexion bouton. Vous devriez voir la page par défaut de votre site Web dans l'écran suivant :

Conclusion

Dans le guide ci-dessus, nous avons appris à créer un site Web protégé par mot de passe avec Apache sur Ubuntu 18.04. Vous pouvez désormais protéger facilement votre site Web par mot de passe avec Apache - testez-le dès aujourd'hui avec un plan d'hébergement VPS d'Atlantic.Net ! Pour plus d'informations, vous pouvez consulter la documentation officielle d'Apache sur Apache Auth.


Linux
  1. Comment configurer un serveur FTP avec VSFTPD sur Ubuntu 20.04

  2. Comment configurer un serveur FTP avec VSFTPD sur Ubuntu 18.04

  3. Comment configurer un serveur de messagerie avec Mail-in-a-Box sur Ubuntu

  4. Comment installer un serveur de messagerie avec PostfixAdmin sur Ubuntu 20.04

  5. Comment configurer l'authentification par mot de passe Apache sur Ubuntu 18.08 ?

Comment installer InvoiceNinja sur le serveur Ubuntu 18.04 avec Apache/Nginx

Comment installer InvoiceNinja sur le serveur Ubuntu 20.04 avec Apache/Nginx

Comment installer phpMyAdmin avec Apache sur Ubuntu 22.04 LTS

Comment installer Drupal sur un serveur Ubuntu 20.04 avec Apache

Procédure :configuration initiale du serveur Ubuntu 15.04

Configuration initiale du serveur avec Ubuntu 18.04