php ngx_http_auth_basic_module,nginx认证模块ngx_http_auth_basic_module

ngx_http_auth_basic_module模块基于“HTTP Basic Authentication“协议完成用户认证。

模块指令:

auth_basic

auth_basic_user_file

这两个指令的应用范围:http,server,location,limit_except

示例:

location / {

auth_basic           "closedsite";

auth_basic_user_fileconf/htpasswd;

}

auth_basic指令:

语法:auth_basic string | off;

默认:auth_basic off;

开启/关闭基于“HTTP Basic Authentication”协议的用户/密码认证。

auth_basic_user_file指令:

语法:auth_basic_user_file file;

默认:--

用于指定保存用户名和密码的文件,注意文件权限,chmod 400 file。

文件格式为:

name1:password1

name2:password2:comment

name3:password3

支持的密码类型:用crypt()函数加密,工具有htpasswd、openssl passwd

使用基于md5的密码算法的Apache变体(apr1)

使用htpasswd实现nginx的认证安装htpasswd,htpasswd是apache提供的密码生成工具

yuminstall httpd-tools -y

htpasswd用法

$ htpasswd -h

htpasswd:illegal option -- h

Usage:

htpasswd[-cimBdpsDv] [-C cost] passwordfile username

htpasswd-b[cmBdpsDv] [-C cost] passwordfile username password

htpasswd-n[imBdps] [-C cost] username

htpasswd-nb[mBdps] [-C cost] username password

-c  Createa new file.

-n  Don'tupdate file; display results on stdout.

-b  Usethe password from the command line rather than prompting for it.

-i  Readpassword from stdin without verification (for script usage).

-m  ForceMD5 encryption of the password (default).

-B  Forcebcrypt encryption of the password (very secure).

-C  Setthe computing time used for the bcrypt algorithm

(higheris more secure but slower, default: 5, valid: 4 to 31).

-d  ForceCRYPT encryption of the password (8 chars max, insecure).

-s  ForceSHA encryption of the password (insecure).

-p  Donot encrypt the password (plaintext, insecure).

-D  Deletethe specified user.

-v  Verifypassword for the specified user.

创建用户密码文件

[roger@test ~]$ htpasswd -c/etc/nginx/passwd.db xiaoming ###新创建密码文件

New password:

Re-type new password:

Adding password for user xiaoming

[roger@test ~]$ htpasswd/etc/nginx/passwd.db xiaoli ###添加新的用户

New password:

Re-type new password:

Adding password for user xiaoli

[roger@test ~]$ cat/etc/nginx/passwd.db        ###查看文件内容格式

xiaoming:$apr1$OlmGwtmd$kG6fmWrQzCWEJGT/uWXsJ.

xiaoli:$apr1$UNkIjCHM$5h6Gigl1q.IZbq6yODzAv1

配置nginx

location / {

auth_basic           "welcome";

auth_basic_user_file /etc/nginx/passwd.db;

}访问相关内容的时候将会认证

a0074d33f9639845c09dc4bd6e5f5a84.png

使用对应的用户名密码可以登录访问。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值