# Nginx 基础的身份验证

# HTTP基本身份验证:

这是最简单的身份验证方法,它要求用户提供用户名和密码以访问受保护的资源。配置示例:

location /secure {
    auth_basic "Restricted Area";
    auth_basic_user_file /etc/nginx/.htpasswd;
}

auth_basic_user_file参数指定存储用户名和密码散列的文件的路径。您可以使用htpasswd`命令创建此文件。

# 安装apache2-utils软件包:

$ sudo apt-get update
$ sudo apt-get install apache2-utils

# 运行htpasswd命令创建密码文件

$ sudo htpasswd -c /etc/nginx/.htpasswd user1

# 去掉-c来新增用户

$ sudo htpasswd /etc/nginx/.htpasswd user2

# HTTP摘要身份验证:

摘要身份验证比基本身份验证更安全,因为它不传输明文密码。配置示例:

location /secure {
    auth_digest "Restricted Area";
    auth_digest_user_file /etc/nginx/.htdigest;
}

与基本身份验证不同,auth_digest需要使用htdigest命令创建的文件。htdigest是一个用于创建HTTP摘要身份验证文件的命令行工具。HTTP摘要身份验证是一种比基本身份验证更安全的身份验证方法,因为它不传输明文密码,而是传输密码的散列值。以下是关于如何使用htdigest的基本信息:

# 安装apache2-utils软件包:

$ sudo apt-get update
$ sudo apt-get install apache2-utils

# 运行htdigest命令创建密码文件

$ htdigest -c filename fbbmore.com user1

# #### 去掉-c来新增用户

$ htdigest filename fbbmore.com user2