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 ...
随机推荐
- Blocks(POJ 3734)
原题如下: Blocks Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 8020 Accepted: 3905 Desc ...
- Django 中 a href标签 使用方法 跳转页面(Django四)
上次我已经用Django启动了一个登录模板页面 具体过程见:Django启动我的第一个模板页面 但问题是我们只能通过监听的端口访问这一个页面,不能通过页面的一些连接跳转到其他页面如下,我们不能点击注册 ...
- wsl 修改默认安装路径
如果已经装了,先删除 mklink /j C:\Users\XXXX\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rh ...
- Java常见重构技巧 - 去除不必要的!=null判断空的5种方式,很少有人知道后两种
常见重构技巧 - 去除不必要的!= 项目中会存在大量判空代码,多么丑陋繁冗!如何避免这种情况?我们是否滥用了判空呢?@pdai 常见重构技巧 - 去除不必要的!= 场景一:null无意义之常规判断空 ...
- [算法]美团春招笔试题C-求有趣子序列数(DP)
题目 输入n,以及长度为n的数组元素 输出数组的非空子序列中有多少个"有趣序列"mod 998244353,有趣序列指所有元素满足arr[i]%i == 0, i从0记. 例: 输 ...
- [BJDCTF2020]EzPHP
[BJDCTF2020]EzPHP 解码:http://794983a5-f5dc-4a13-bc0b-ca7140ba23f3.node3.buuoj.cn/1nD3x.php 源代码: <? ...
- [0CTF 2016]piapiapia(反序列逃逸)
我尝试了几种payload,发现有两种情况. 第一种:Invalid user name 第二种:Invalid user name or password 第一步想到的是盲注或者报错,因为fuzz一 ...
- Ubuntu中发生git Connection refused
今天在提交代码的时候: ssh: connect to host github.com port 22: Connection refused fatal: 无法读取远程仓库. 请确认您有正确的访问权 ...
- a标签包裹div的问题
示例代码 1 <a href="#"> 2 <div> 3 <a href="#"></a> 4 </di ...
- AngularJS 路由和模板实例及路由地址简化方法
最近一同事在学习AngularJS,在路由与模板的学习过程中遇到了一些问题,于是今天给她写了个例子,顺便分享出来给那些正在学习AngularJS的小伙伴们. 话说这AngularJs 开发项目非常的爽 ...