Maison >Opération et maintenance >Nginx >Mécanisme d'authentification du serveur Web dans le proxy inverse Nginx

Mécanisme d'authentification du serveur Web dans le proxy inverse Nginx

PHPz
PHPzoriginal
2023-06-10 21:36:131871parcourir

Nginx, en tant que serveur Web hautes performances, peut être utilisé comme serveur proxy inverse pour fournir des services rapides et stables au monde extérieur. Dans le proxy inverse, Nginx doit se connecter au serveur Web interne pour obtenir les ressources demandées, ce qui implique le mécanisme d'authentification du serveur Web.

L'authentification du serveur Web est généralement divisée en deux méthodes : l'authentification de base et l'authentification digest. L'authentification de base signifie que les utilisateurs vérifient leur identité en saisissant leur nom d'utilisateur et leur mot de passe, et le serveur vérifie ces informations avant d'autoriser l'accès aux ressources. L'authentification Digest signifie que lorsqu'un utilisateur demande une ressource, le serveur renvoie des valeurs aléatoires. Le client crypte ces valeurs avant de demander la ressource. Le serveur vérifie l'identité en déchiffrant les informations cryptées fournies par le client.

Dans le proxy inverse, le serveur Web auquel Nginx doit se connecter doit également effectuer les mesures d'authentification ci-dessus. À ce stade, nous pouvons authentifier le serveur Web en définissant la vérification du proxy dans le fichier de configuration Nginx :

  1. Authentification de base :
    # 🎜🎜 #Ajoutez le code suivant sous le segment http de Nginx :
  •      auth_basic "Input your username and password";
         auth_basic_user_file /etc/nginx/conf.d/conf/auth.conf;
auth_basic signifie activer le mécanisme de vérification et inviter l'utilisateur à saisir le nom d'utilisateur et le mot de passe dans dans la zone de saisie, auth_basic_user_file représente le fichier dans lequel le nom d'utilisateur et le mot de passe spécifiés sont stockés. Ici, nous le définissons dans /etc/nginx/conf.d/conf/auth.conf. <p><code>auth_basic表示启用验证机制并在输入框中提示用户输入用户名和密码,auth_basic_user_file则表示指定用户名及密码存放的文件,这里我们设置在/etc/nginx/conf.d/conf/auth.conf中。

  • 在auth.conf文件中先建立一个Password文件:
     htpasswd -c /etc/nginx/conf.d/conf/Password username

其中-c参数表示首次添加用户,username则为用户名,执行以上命令后会让您输入密码,完成后便会在Password文件中生成一个用户及密码。

  • 增加用户:
     htpasswd /etc/nginx/conf.d/conf/Password user2

以上命令为已经存在Password文件的情况下,添加新用户,同样会让您输入密码。

  1. 摘要认证
  • 在Nginx的http段下增加以下代码:
     auth_digest "Please Login";
     auth_digest_user_file /etc/nginx/conf.d/conf/auth_digest.conf;

其中auth_digest表示启用验证机制并在输入框中提示用户输入用户名和密码,auth_digest_user_file则表示指定用户名及密码存放的文件,这里我们设置在/etc/nginx/conf.d/conf/auth_digest.conf中。

  • 在auth_digest.conf文件中增加以下内容:
     user1:PasswordRealm:2da86e1b3a8a5511c400d00737a7a233

其中user1为用户名,PasswordRealm为密码和加密随机数值所对应的领域名组合而成,2da86e1b3a8a5511c400d00737a7a233

Créez d'abord un fichier de mot de passe dans le fichier auth.conf :

rrreee#🎜🎜#Le paramètre -c indique le la première fois, ajoutez un utilisateur, le nom d'utilisateur est le nom d'utilisateur. Après avoir exécuté la commande ci-dessus, il vous sera demandé de saisir le mot de passe. Une fois terminé, un utilisateur et un mot de passe seront générés dans le fichier Mot de passe. #🎜🎜##🎜🎜##🎜🎜#Ajouter un utilisateur : #🎜🎜##🎜🎜#rrreee#🎜🎜#Si le fichier Mot de passe existe déjà, l'ajout d'un nouvel utilisateur vous demandera également de saisir le mot de passe. #🎜🎜#
    #🎜🎜#Digest Authentification#🎜🎜##🎜🎜##🎜🎜##🎜🎜#Ajoutez le code suivant sous la section http de Nginx : #🎜🎜## 🎜 🎜#rrreee#🎜🎜# Parmi eux, auth_digest signifie activer le mécanisme de vérification et inviter l'utilisateur à saisir le nom d'utilisateur et le mot de passe dans la zone de saisie, et auth_digest_user_file signifie spécifier le fichier dans lequel le nom d'utilisateur et le mot de passe sont stockés, ici nous le définissons dans /etc/nginx/conf.d/conf/auth_digest.conf. #🎜🎜##🎜🎜##🎜🎜#Ajoutez le contenu suivant au fichier auth_digest.conf : #🎜🎜##🎜🎜#rrreee#🎜🎜#où user1 est le nom d'utilisateur, PasswordRealm est une combinaison du mot de passe et du nom de domaine correspondant à la valeur aléatoire chiffrée, et 2da86e1b3a8a5511c400d00737a7a233 est le texte chiffré. #🎜🎜##🎜🎜#Ce qui précède explique comment Nginx implémente l'authentification du serveur Web. Grâce aux mesures d'authentification ci-dessus, une protection et un contrôle de sécurité efficaces peuvent être effectués sur le serveur Web pour garantir la sécurité et la stabilité du système. #🎜🎜#

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn