nginx安全: 配置http基本验证(Basic Auth)(nginx 1.18.0)
一,http基本验证的作用:
1,http基本身份验证会从浏览器弹出登录窗口,
简单明了,容易理解,
对于面向终端用户的前台来说,不够友好,
但对于内部员工操作的后台还是很有用,通常作为一层安全措施应用。
2,
在这里为例子,我们新建一个站:
域名: admin.lhdtest.com
登录名: admin
密码: 12345678
这里仅作为演示,生产环境不能使用这种极简单的密码
说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest
对应的源码可以访问这里获取: https://github.com/liuhongdi/
说明:作者:刘宏缔 邮箱: 371125307@qq.com
二,生成供测试的站内文件
1,生成网站的目录
[root@centos8 ~]# mkdir -p /data/site/admin/html
2,生成网站的index页面
[root@centos8 ~]# vi /data/site/admin/html/index.html
页面html代码:
<html>
<head>
</head>
<body>
welcome to admin.lhdtest.com
</body>
</html>
三,配置nginx的http基本验证
1,在nginx.conf中检查是否有对conf.d目录的支持
如不存在,添加它
include /usr/local/soft/nginx-1.18.0/conf/conf.d/*.conf;
说明:生产环境中,为了管理方便,会把每个server放到专用的conf文件中,
不要混在一起而全写到nginx.conf中,修改和查找都不方便
2,创建网站的server文件
[root@centos8 conf.d]# vi admin.conf
内容:
server {
auth_basic "lhdtest.com admin";
auth_basic_user_file /usr/local/soft/nginx-1.18.0/conf/conf.d/admin.pwd;
listen 80;
server_name admin.lhdtest.com;
root /data/site/admin/html;
index index.html index.shtml index.htm;
access_log /data/nginx/logs/admin.access_log;
error_log /data/nginx/logs/admin.error_log;
}
2,生成密码:
如果找不到htpasswd命令,
可以用dnf安装这个包:
[root@centos8 conf.d]# dnf install httpd-tools
生成密码:
#-n:Don't update file; display results on stdout
#-b:Use the password from the command line
#-m:Force MD5 encryption of the password
[root@centos8 conf.d]# htpasswd -nbm admin 12345678
admin:$apr1$nkxLxBPa$EGa.u5yKuQ08m6g/8bGb9.
写入到密码文件
[root@centos8 conf.d]# vi admin.pwd
内容:
admin:$apr1$nkxLxBPa$EGa.u5yKuQ08m6g/8bGb9.
3,重启nginx
[root@centos8 conf.d]# systemctl stop nginx
[root@centos8 conf.d]# systemctl start nginx
4,测试效果
看截图,输入正确的用户名和密码即可进入网站

四,查看nginx的版本
[root@centos8 soft]# /usr/local/soft/nginx-1.18.0/sbin/nginx -v
nginx version: nginx/1.18.0
nginx安全: 配置http基本验证(Basic Auth)(nginx 1.18.0)的更多相关文章
- nginx优化:配置gzip压缩页面提高访问速度(nginx1.18.0)
一,为什么nginx要使用gzip 1,压缩的作用: 页面使用gzip压缩之后, 页面大小可以压缩到原来的1/7左右, 传输速度和页面打开时间都可以大幅度提高, 有利于用户访问页面体验的提升 2,Ng ...
- 在NGINX上配置HTTPS---血的教训--要重启NGINX
重启,不是重载!!! 是STOP & START 而不是RELOAD!!! 纠结了好几天...(难道有的NGINX上不用重启????) 你妹的,上次也是,,PHP-FPM,将一个PHP的程序连 ...
- Web架构之Nginx基础配置
目录 1.Nginx 虚拟主机 1.1.基于域名的虚拟主机 1.2.基于端口的虚拟主机 1.3.基于IP的虚拟主机 2.Nginx include 3.Nginx 日志配置 3.1.访问日志 3.2. ...
- linux-centerOs6.8安装nginx与配置
一:安装nginx 1.安装gcc(命令:yum install gcc)备注:可以输入gcc -v查询版本信息,查看是否自带安装 2.安装pcre(命令:yum install pcre-devel ...
- 【第六课】Nginx常用配置下详解
目录 Nginx常用配置下详解 1.Nginx虚拟主机 2.部署wordpress开源博客 3.部署discuz开源论坛 4.域名重定向 5.Nginx用户认证 6.Nginx访问日志配置 7.Ngi ...
- 转:NGNIX模块开发——nginx的配置系统
From:http://tengine.taobao.org/book/chapter_02.html nginx的配置系统 nginx的配置系统由一个主配置文件和其他一些辅助的配置文件构成.这些配置 ...
- 轻量级HTTP服务器Nginx(常用配置实例)
轻量级HTTP服务器Nginx(常用配置实例) 文章来源于南非蚂蚁 Nginx作为一个HTTP服务器,在功能实现方面和性能方面都表现得非常卓越,完全可以与Apache相媲美,几乎可以实现Apa ...
- nginx.conf 配置解析之文件结构
nginx.conf配置文件结构如下: ...... #主要定义nginx的全局配置 events{ #events(事件)块:主要配置网络连接相关 } http{ #http块:代理缓存和日志定义绝 ...
- Nginx安装配置|Nginx反向代理|Nginx支持HTTPS|Nginx重定向
Nginx安装配置 可以直接看到最下面的HTTPS. Nginx安装 我的系统如下: No LSB modules are available. Distributor ID: Ubuntu Desc ...
随机推荐
- Centos6.5 离线 Openssh 升级
目录 OpenSSH 升级 一.基于 Dropbear 设置备用 ssh 服务器 二. Openssh 更新 2.1 ssh配置 备份 2.2 openssh 升级 Openssl 升级(由于Open ...
- 解读Java NIO Buffer
从jdk1.4开始,java中引入了nio包,提供了非阻塞式的网络编程模型,提供网络性能.nio中核心组件有三个:channel.buffer.selector.这里主要探讨buffer的概念和使用. ...
- TCP连接问题之CLOSE_WAIT和TIME_WAIT过多
参考博文 https://dengqsintyt.iteye.com/blog/2086485 Timeout waiting for connection异常排查:https://blog.csdn ...
- golang 协程学习
协程数据传递问题 func TestGoroutineData(t *testing.T) { var wg sync.WaitGroup wg.Add(1) i := 0 go func(j int ...
- SpringValid优雅校验入参
一.简介 后台业务入口类Controller,对于入参的合法性校验,可以简单粗暴的写出一堆的 if 判断,如下: @RestController @RequestMapping("user& ...
- 有关图的连通性的Tarjan算法
割点与桥 在一个无向连通图中,若将某个点及其相连的边删除后,图就不连通了,则这样的点被称为割点. 在一个无向连通图中,若将某条边删除后,图就不连通了,则这样的边被称为割边,即桥. 在一张图中求出割点或 ...
- ZooKeeper 【不仅仅是注册中心,你还知道有哪些?】
什么是 ZooKeeper Apache ZooKeeper 是一个开源的实现高可用的分布式协调服务器.ZooKeeper是一种集中式服务,用于维护配置信息,域名服务,提供分布式同步和集群管理.所有这 ...
- 树莓派3B+安装64位ubuntu系统和docker工具
想在树莓派3B上安装一些64位应用(例如64位JDK),因此首先要安装64位的操作系统,今天咱们就一起来实战: 原文地址:https://blog.csdn.net/boling_cavalry/ar ...
- webservice了解一下!!
(1)什么是webservice? webservice是一种可以跨编程语言和跨平台进行远程调用的一种技术,是同步进行. webservice主要分为两种,一种是基于浏览器的瘦客户端应用程序,一种是基 ...
- Spring与Junit测试整合
一.引入spring测试包:text包 二.@RunWith:指定spring对junit提供的一个运行器 @ContextConfiguration: locations指定spring配置文件位 ...