基础认证简介:

在某些情况下,我们希望对服务器上的一些资源进行限制,例如服务器 /fakerealm 路径下的所有资源或域,必须先进行身份验证然后才能访问资源。

客户端以 : 连接用户名和密码后,再经 Base64 编码,通过 Authorization 请求头发送该密文至服务端进行验证,每次请求都需要重复发送该密文;

可见Basic认证过程简单,安全性也低,存在泄露个人账号信息以及其他诸多安全问题,最好在实现了Transport Layer Security (TLS)的情况下去使用。

对于这个需求我们可以通过 HTTP Basic authentication 协议来完成,Nginx 使用 ngx_http_auth_basic_module 模块支持 HTTP基本身份验证功能 。

1. 安装

yum -y install httpd

2. 添加配置

server {listen 80;server_name  www.demo.com;#..其它配置项目省略location ~ ^/fakerealm {auth_basic "authentication"; auth_basic_user_file /etc/nginx/realmdir/htpasswd;}#..其它配置项目省略
}

其中有几个注意点:

  1. auth_basic:随便填,有就行,会显示在输入用户名密码的弹框中;
  2. auth_basic_user_file:告诉服务器去哪个文件中匹配访问者输入的用户名和密码;

如果是配合 HTTPS 使用,一般会将 80 端口的 HTTP 请求转发到 443 的 HTTPS 请求中,所以上述配置应该写在 HTTPS 的 443 配置中:

配合HTTPS

另外,也可以全局配置基础认证,然后排除一些域。即该端口下,除被排除的域,所有的请求都需要输入用户名和密码进行认证,详细配置见官方文档;

3. 添加账户

// 进入相关文件夹
cd /etc/nginx/realmdir// 文件名:htpasswd,用户名:user 密码password
htpasswd -bdc htpasswd user password

其中 htpasswd 需要和上一步中的文件名匹配,意思是在 htpasswd 这个文件中搜索账户是否匹配;

可以在一个文件中配置多个账户:

添加多个账户

4. 重启Nginx

nginx -s -reload

效果:

效果

官方文档:

https://docs.nginx.com/nginx/admin-guide/security-controls/configuring-http-basic-authentication/


http://www.taodudu.cc/news/show-1912743.html

相关文章:

  • Cookie、Session、Token、RefreshToken
  • JSCore浅析及其在iOS上的使用
  • 编程语言的动态性(Dart和OC对比)
  • iOS:Universal Link
  • AFN中的鉴权
  • openGL ES 教程(二):渲染管线
  • MySQL(2)----DDL语句之增、删、改、查操作
  • MySQL(3)-----DML数据库操作(上)
  • 线性表的基本运算
  • MySQL(4)-----DML数据库操作(下)
  • MySQL(1)----帮助使用
  • MySQL(6)-----数据类型
  • (1)封装JSON数据的三种方式
  • (2)从文件中解析JSON数据
  • (1)I/O流对象-----FileInputStream与FileOutputStream
  • MyBatis(一)------目录
  • MyBatis(二)------使用JDBC编程问题总结
  • MySQL(5)-----DQL语句的基本查询与高级查询
  • MySQL(7)-----常用约束
  • MySQL(8)-----truncate清空表和字段自增
  • MySQL(9)-----多表创建及描述表关系(需求)
  • (1)Spring框架----通俗易懂的IoC原理
  • MySQL(10)-----多表创建及描述表关系(一对多的分析和实现)
  • MySQL(11)-----多表创建及描述表关系(多对多的分析和实现)
  • MySQL(12)-----多表查询(内连接和外连接)
  • MySQL(13)-----多表查询(子查询)
  • MySQL(14)-----运算符和优先级
  • (1)关于File类你知道多少
  • (2)I/O流对象-----FilterInputStream与FilterOutputStream
  • (3)I/O流对象-----复制图片/文件/视频的几种I/O流方式

Nginx配置基础认证相关推荐

  1. Nginx配置单项SSL以及双向SSL

    Https安全协议的由来? 在实现 HTTPS协议前,我们需要了解 SSL 协议,但其实我们现在使用的更多的是 TLS 加密通讯协议. 那么TLS是怎么保证明文消息被加密的呢?在OSI七层模型中,应用 ...

  2. Nginx相关基础配置详解

    一.I/O类型及与其相关概念: 1.1同步和异步:synchronous, asynchronous  [关注的是消息通知机制] 同步:调用发出不会立即返回,但一旦返回就可以返回最终结果: 异步:调用 ...

  3. Nginx配置Basic Auth登录认证的实现方法

    这篇文章主要介绍了Nginx配置Basic Auth登录认证的实现方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 有时候我们通过nginx搭建了一台文件服务器, 一般 ...

  4. nginx配置SSL实现服务器/客户端双向认证

    http://blog.csdn.net/kunoy/article/details/8239653 本人不才,配置了两天,终于搞出来了,结合网上诸多博文,特此总结一下! 配置环境: Ubuntu 1 ...

  5. 十八.搭建Nginx服务器、配置网页认证、基于域名的虚拟主机、ssl虚拟主机

    配置要求: client:192.168.4.10 proxy:192.168.4.5(eth0) 192.168.2.5(eth1) web1:192.168.2.100 web2:192.168. ...

  6. nginx配置反向代理验证ssl证书 双向认证

    适用于公司内部一些业务系统对安全性要求比较高,业务系统只允许公司内部人员访问,而且要求浏览器要安装证书登录,对公司入职有需求的人员开通证书,流失的人员注销证书. 修改openssl配置参数 vim / ...

  7. Nginx配置双重用户认证

    Nginx双重用户认证: 适用于一些网站的重要页面(比如:管理员登录的后台管理页面),双重认证的效果就是在打开重要页面输入账号密码登录之前先验证一次用户双重认证的用户名和密码. 接下来以上一篇文章介绍 ...

  8. Nginx配置HTTPS客户端认证

    Nginx配置HTTPS客户端认证 最近折腾自己个人网站,有一个私人模块,只能自己访问,使用登录授权方式虽然也能达到目的,但每次都要登录,且密码也不一定安全.想起学HTTPS的时,有一个客户端证书的概 ...

  9. nginx 配置 https双向认证

    参考文章: https://blog.csdn.net/xiangguiwang/article/details/76400805 https://blog.csdn.net/qq_37049781/ ...

  10. Nginx配置ssl双向认证

    最近公司项目需要配置双向认证,使用的是阿里云Linux服务器以及nginx,对应的ssl证书也使用的是阿里云的免费证书.特此记录配置流程. CA与自签名 # 制作CA私钥 openssl genrsa ...

最新文章

  1. Kubernetes 整体架构图
  2. 1-6-RHEL7用户管理和如何恢复root密码
  3. Wecoach陈隽永:如何打造一款完美的智能硬件App?
  4. NiosII中Flash的使用(转)
  5. win7 VS2008 编译luabind-0.9.1 动态库 静态库
  6. typescript获取数据库数据_肿瘤药敏多组学数据库(GDSC)的数据介绍和获取
  7. 一个简单的Angular search UI实现
  8. Firewoks——层与蒙版
  9. iOS 13.2正式版放出 支持AirPodsPro
  10. Flutter布局锦囊---简单的应用栏
  11. linux中断--进程上下文和中断上下文
  12. 2019-05-22 Java学习日记 day12
  13. hadoop+hbase安装
  14. visio 2003 怎么样画括号
  15. mysql-cluster安装与配置
  16. C语言学习:除去剪切板内容的换行与回车
  17. DNS云学堂 | 快速定位DNS解析异常问题,牢记这四种DNS状态码
  18. python获取当天日期
  19. 解决spine升级3.8版本后与cocos不兼容。
  20. 压缩文件密码丢了怎么办 <1>

热门文章

  1. MyCat分库分表入门示例
  2. 再谈mysql之执行计划explain
  3. Springcould(二)之搭建服务注册中心Eureka集群
  4. luoguP1991无线通讯网
  5. python 字符串编码 str和unicode 区别以及相互转化 decode('utf-8') encode('utf-8')
  6. Python面试题之python是一种什么语言及优缺点
  7. zepto在整个屏幕中左滑动右滑动
  8. 基于大并发抽奖的队列实现
  9. Java多线程问题之同步器CyclicBarrier
  10. [WebApi] 捣鼓一个资源管理器--服务器端分割压缩图片