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

 更新时间:2016年01月11日 09:40:32   投稿:goldensun  
这篇文章主要介绍了Nginx中的用户认证配置及阻止用户使用代理访问的方法,用户认证部分用到了自带的ngx_http_auth_basic_module模块,需要的朋友可以参考下

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
用户密码文件,文件内容类似如下:

ttlsauser1:password1
ttlsauser2:password2:comment
nginx认证配置实例

server{
  server_name www.jb51.net jb51.net;
 
  index index.html index.php;
  root /data/site/www.jb51.net;  
 
  location /
  {
    auth_basic "nginx basic http test for jb51.net";
    auth_basic_user_file conf/htpasswd; 
    autoindex on;
  }
}

备注:一定要注意auth_basic_user_file路径,否则会不厌其烦的出现403。
生成密码
可以使用htpasswd,或者使用openssl

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

账号:ttlsa
密码:123456
reload nginx

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

效果如下:

201611193910616.jpg (474×193)

完成~


Nginx阻止用户代理
些时候,需要阻止某些用户代理访问网站,比如ab,wget,curl等等,这就需要使用到$http_user_agent变量。
修改nginx.conf

if ($http_user_agent ~* (Wget|ab) ) {
 return 403;
}
 
if ($http_user_agent ~* LWP::Simple|BBBike|wget) {
   return 403;
}

重启nginx

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

相关文章

  • windows下nginx的安装使用及解决80端口被占用nginx不能启动的问题

    windows下nginx的安装使用及解决80端口被占用nginx不能启动的问题

    这篇文章主要给大家介绍了关于windows下nginx的安装使用,以及如何解决80端口被占用导致nginx不能启动的问题,文中介绍的非常详细,对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。
    2017-04-04
  • Nginx配置动态代理后通过curl访问报403问题

    Nginx配置动态代理后通过curl访问报403问题

    本文主要介绍了Nginx配置动态代理后通过curl访问报403问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • 详解Nginx + Tomcat 反向代理 负载均衡 集群 部署指南

    详解Nginx + Tomcat 反向代理 负载均衡 集群 部署指南

    Nginx是一种服务器软件,也是一种高性能的http和反向代理服务器,本篇文章主要介绍了Nginx + Tomcat 反向代理 负载均衡 集群 部署指南,有兴趣的可以了解一下。
    2016-12-12
  • nginx try_files指令的实现示例

    nginx try_files指令的实现示例

    try_files用于指定文件的查找规则,可以配置多个规则,会按顺序执行查找规则,本文主要介绍了nginx try_files指令的实现示例,具有一定的参考价值,感兴趣的可以了解一下
    2024-07-07
  • nginx开启ws访问和4层负载的编译参数示例

    nginx开启ws访问和4层负载的编译参数示例

    这篇文章主要为大家介绍了nginx开启ws访问和4层负载的编译参数,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • Nginx配置SSL证书出错解决方案

    Nginx配置SSL证书出错解决方案

    这篇文章主要介绍了Nginx配置SSL证书出错解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • Nginx 过滤静态资源文件的访问日志的实现

    Nginx 过滤静态资源文件的访问日志的实现

    这篇文章主要介绍了Nginx 过滤静态资源文件的访问日志的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • 如何在nginx中配置缓存静态文件

    如何在nginx中配置缓存静态文件

    本篇文章主要介绍了如何在 nginx 中缓存静态文件配置,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • nginx负载功能+nfs服务器功能解析

    nginx负载功能+nfs服务器功能解析

    这篇文章主要介绍了nginx负载功能+nfs服务器,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-02-02
  • Nginx服务器中浏览器本地缓存和虚拟机的相关设置

    Nginx服务器中浏览器本地缓存和虚拟机的相关设置

    这篇文章主要介绍了Nginx服务器中浏览器本地缓存和虚拟机的相关设置,是Nginx服务器搭建过程中的基本配置,需要的朋友可以参考下
    2015-08-08

最新评论