nginx用户认证配置( Basic HTTP authentication)

ngx_http_auth_basic_module模块实现让访问着,只有输入正确的用户密码才允许访问web内容。web上的一些内容不想被其他人知道,但是又想让部分人看到。nginx的http auth模块以及Apache http auth都是很好的解决方案。

默认情况下nginx已经安装了ngx_http_auth_basic_module模块,如果不需要这个模块,可以加上 --without-http_auth_basic_module 。

nginx basic auth指令

语法:     auth_basic string | off;
默认值:     auth_basic off;
配置段:     http, server, location, limit_except

默认表示不开启认证,后面如果跟上字符,这些字符会在弹窗中显示。

语法:     auth_basic_user_file file;
默认值:     —
配置段:     http, server, location, limit_except

用户密码文件,文件内容类似如下:

 

1

2

ttlsauser1:password1

ttlsauser2:password2:comment

 

nginx认证配置实例

 

 

1

2

3

4

5

6

7

8

9

10

11

12

13

server{

       server_name  www.ttlsa.com ttlsa.com;

 

        index index.html index.php;

        root /data/site/www.ttlsa.com;      

 

        location /

        {

                auth_basic "nginx basic http test for ttlsa.com";

                auth_basic_user_file conf/htpasswd;

                autoindex on;

        }

}

备注:一定要注意auth_basic_user_file路径,否则会不厌其烦的出现403。

生成密码

可以使用htpasswd,或者使用openssl

 

1

2

3

# printf "ttlsa:$(openssl passwd -crypt 123456)\n" >>conf/htpasswd

# cat conf/htpasswd

ttlsa:xyJkVhXGAZ8tM

账号:ttlsa
密码:123456

reload nginx

 

1

# /usr/local/nginx-1.5.2/sbin/nginx -s reload

效果如下:



http_auth_basic_module

 

完成~

时间: 2024-09-20 08:53:25

nginx用户认证配置( Basic HTTP authentication)的相关文章

Nginx用户认证配置方法详解(域名/目录)_nginx

Nginx可以为某一个域名单独加用户认证,具体做法如下: 1. 生成用户认证的用户名和密码: 复制代码 代码如下: #wget -c soft.vpser.net/lnmp/ext/htpasswd.sh;bash htpasswd.sh 根据提示输入: 用户名:密码:文件名: 脚本会自动生成认证文件,auth.conf内容如下: 复制代码 代码如下: /usr/local/nginx/conf/auth.conf 2. 为Nginx添加auth认证配置 下面以某域名下面的auth目录为例,在域

Nginx用户认证配置方法(域名/目录)详解

Nginx可以为某一个域名单独加用户认证,具体做法如下: 1. 生成用户认证的用户名和密码:  代码如下 复制代码 #wget -c soft.vpser.net/lnmp/ext/htpasswd.sh;bash htpasswd.sh 根据提示输入: 用户名: 密码: 文件名: 脚本会自动生成认证文件,auth.conf内容如下:  代码如下 复制代码 /usr/local/nginx/conf/auth.conf 2. 为Nginx添加auth认证配置 下面以某域名下面的auth目录为例,

Nginx中的用户认证配置及阻止用户使用代理访问的方法_nginx

nginx用户认证配置( Basic HTTP authentication)ngx_http_auth_basic_module模块实现让访问着,只有输入正确的用户密码才允许访问web内容.web上的一些内容不想被其他人知道,但是又想让部分人看到.nginx的http auth模块以及Apache http auth都是很好的解决方案. 默认情况下nginx已经安装了ngx_http_auth_basic_module模块,如果不需要这个模块,可以加上 --without-http_auth_

Apache与Nginx登录认证配置详解(可认证目录)

一.Apache认证 认证的类型:Basic Digest摘要 认证方法:A.容器认证:<Directory> --</Directory> B.隐藏文件认证创建.htaccess文件 方法一.容器认证 A.进入配置文件vi /etc/httpd/conf/httpd.conf B.配置:大约在531行附近配置如下:  代码如下 复制代码 <Directory "/var/www/html/mrtg"> AllowOverride None##不允许

nginx中目录加密与添加用户认证配置

    有时候为了安全,我们不希望暴漏我们网站的后台地址,所以一般我们都把后台的地址隐藏.比如说一些开源的cms,如果是通过http://www.你的域名/admin.php?m=admin这样访问的话,我们一般把admin.php改成别的不容易被猜测的文件名,但是对于一些cms,则不能这样改,因为有很多地方用到了这个写死的路径,比如wordpress,后台访问的路径一般都是http://www.你的域名/wp-admin/或者http://www.你的域名/wp-login.php,wp-ad

Nginx上配置Basic Authorization登录认服务证的教程_nginx

关于Basic Authorization在HTTP中,Basic Authorization基本认证是一种用来允许Web浏览器或其他客户端程序在请求时提供用户名和口令形式的身份凭证的一种登录验证方式. 在发送之前是以用户名追加一个冒号然后串接上口令,并将得出的结果字符串再用Base64算法编码.例如,提供的用户名是Aladdin.口令是open sesame,则拼接后的结果就是Aladdin:open sesame,然后再将其用Base64编码,得到QWxhZGRpbjpvcGVuIHNlc2

Apache服务器攻略 用户认证简单配置方案集

Apache是目前流行的Web服务器,可运行在linux.Unix.Windows等操作系统下,它可以很好地解决"用户名+密码"的认证问题.Apache用户认证所需要的用户名和密码有两种不同的存贮方式:一种是文本文件:另一种是MSQL. Oracle.MySQL等数据库.下面以Linux的Apache为例,就这两种存贮方式,同时能对Windows的 Apache用户认证作简要的说明.下面我们来介绍下通过文本认证而实现的方式. 建立用户的认证授权需要三个步骤: 1.建立用户库 2.配置服

nginx环境下配置ssl加密(单双向认证、部分https)_nginx

nginx下配置ssl本来是很简单的,无论是去认证中心买SSL安全证书还是自签署证书,但最近公司OA的一个需求,得以有个机会实际折腾一番.一开始采用的是全站加密,所有访问http:80的请求强制转换(rewrite)到https,后来自动化测试结果说响应速度太慢,https比http慢慢30倍,心想怎么可能,鬼知道他们怎么测的.所以就试了一下部分页面https(不能只针对某类动态请求才加密)和双向认证.下面分节介绍. 默认nginx是没有安装ssl模块的,需要编译安装nginx时加入--with

70.5. ProFTPD + MySQL / OpenLDAP 用户认证

准备工作 下载ProFTPD : ftp://ftp.proftpd.org/distrib/source/proftpd-1.2.7.tar.gz 下载 mod_sql : http://www.lastditcheffort.org/~aah/proftpd/mod_sql/ 下载mod_ldap-2.8.10 : http://www.horde.net/~jwm/software/mod_ldap/ 70.5.1. Proftpd + MySQL tar xvzf proftpd-ver