Categories: DevOpsShell编程

Nginx配置Basic Auth登录认证

Http Basic Auth验证可以对网站的资源进行部分或者全部限制性访问,当然也可以进行地域或者IP限制访问,这在某些特定的场景下是非常快捷的方式。
本文只讨论在nginx中配置Basic Auth,其他服务器稍有差异。

nginx中如何配置Basic Auth

location / {
    auth_basic           "closed site";
    auth_basic_user_file conf/htpasswd;
}

参考ngx_http_auth_basic_module

Basic Auth文件

从上面的配置中可以发现,需要一个conf/htpasswd文件,文件的内容格式如下:

# comment
name1:password1
name2:password2:comment
name3:password3

如何生成Basic Auth用户密码

用户密码的生成需要借助工具,apache2-utils(Debian,Ubuntu)或httpd-tools(RHEL / CentOS / Oracle Linux
具体操作如下:

$ apt-get install apache2-utils
$ sudo htpasswd -c /etc/apache2/.htpasswd user1

当您访问状态页面时,系统会提示您登录:

如果提供的名称和密码与密码文件不匹配,则会出现错误。401 (Authorization Required)

使用场景

  • 站点不对搜索引擎开发
  • 站点调试信息,只对开发者开发
  • 站点资源简单的用户验证
5.0
01
什么是彩虹表(Rainbow Table)
如何在WordPress中批量发布你的草稿?
嘻嘻

嘻嘻IT: 笔者是一个工作七八年的程序猿老鸟,从事涉及的技术栈主要包括PHP、Linux、Devops等,喜欢研究新技术,尝试新技术,提升技术自动化和开发效率,致力于write less,do more! 技术每年都会层出不穷,领域划分的越来越细,不可能学习所有的东西,保持对技术的好奇心,理解技术中核心思想,做一个有深度,有思想的开发!

Share
Published by
嘻嘻

Recent Posts

SEOJuice一款AI内链优化工具

SEOJuice是一款创新的工…

17小时 ago

全球货币导航网页上线了!

o在全球化的今天,货币兑换和国…

1天 ago

bash字符串拼接

在编程中,字符串的拼接是一个非…

1天 ago

Bash Case详解

Bash case 语句通常用…

1天 ago