配置nginx下载服务器并要求输入用户名密码进行身份验证


分类:玩转Internet       作者:Caq98i       发布时间:2023-03-11       更新时间:2023-03-11 阅读量:577    


配置nginx下载服务器并要求输入用户名密码进行身份验证:安装工具组httpd-tools并使用里边的htpasswd工具生成加密的密码文件,然后配置nginx的auth_basic与auth_basic_user_file



① 安装工具组 httpd-tools:

CentOs 使用 yum 安装:

yum  -y install httpd-tools

Debian 或 Ubuntu 系统使用 apt-get 安装:

apt-get install mini-httpd

 

② cd到一个你准备用来存放密码文件的地方,使用 htpasswd 命令生成一个密码文件:

htpasswd -c yanzen.pass  user001

#  在当前工作目录生成一个文件名为yanzen.pass的文件,用户名为 user001 ,执行完上述命令后,会让你输入两次密码。

htpasswd 的参数说明:

-c   指定文件名创建密码文件,如果这个文件已经存在,那么它会被重新写入,原内容被覆盖

-n   不创建更新文件,只将加密后的用户名密码显示在屏幕上

-m   默认采用MD5算法对密码进行加密

-d   采用CRYPT算法对密码进行加密

-p   不对密码进行进行加密,即使用普通文本格式的密码

-s   采用SHA算法对密码进行加密

-b   命令行中一并输入用户名和密码而不是根据提示输入密码,可以看见明文,不需要交互

-D   删除指定的用户

 

③ 修改nginx的配置文件:

  location /dlfile {

    auth_basic "Authorization";

    auth_basic_user_file /www/pass/yanzen.pass;     # 指定密码文件的路径

    alias /download;

    charset utf-8;

    autoindex on;

    autoindex_exact_size off;

    autoindex_localtime on;

}

PS:如果认证是对整个域名进行的,那么应该将 auth_basic 与  auth_basic_user_file 配置在server 块之中。


捐赠通道,感谢!🦀🦀


          support a 🍕


留言与评论







限时特惠促销