linux运维学习笔记:nginx系列之02:nginx 身份验证基于IP和用户名

linux运维学习笔记:nginx系列之02:nginx 身份验证基于IP和用户名

作者:周少言
2017年 12月 日 星期 ,于北京

声明:本博客是本人周少言在某培训机构学习期间所写,其中参考借鉴了他人的博客,本文将会选择性给出相关链接,如有侵权,恳请告知。本文如有错误,恳请告知,欢迎交流。

参考连接

基于IP 验证

本实验安装nginx的主机IP为 192.168.22.43
vim /usr/local/nginx/conf/nginx.conf
针对server与针对http
譬如在server模块中添加一句
deny 192.168.22.42;

如果限制比较多可以在server模块下添加一句:
include /usr/local/nginx/conf/blockip.conf;
然后编辑该自定义配置文件
vim /usr/local/nginx/conf/blockip.conf
deny 192.168.22.42;

重启生效,在192.168.22.42这台主机上访问192.168.22.43
service nginx reload

基于用户名密码验证

  • nginx后台为了安全性,需要配置htpasswd进行登录验证。
    htpasswd是apache的一个模块,所有需要先安装apache服务。
    yum -y install httpd
    或者
    yum -y install httpd-tools
    创建用户,生成密码文件
htpasswd -c /usr/local/nginx/conf/htpasswd zhangsan
htpasswd -m /usr/local/nginx/conf/htpasswd lisi
cd /usr/local/nginx/conf ; ls

其中/usr/local/nginx/passwd文件就是自定义的密码文件,要被nginx配置文件调用

  • 找到 nginx 配置文件,因为要对整个站点开启验证,所以在配置文件中的第一个server修改如下:
server {
   listen 80;
   server_name  localhost;
   .......
 
  location / {
 auth_basic "Nginx";  
 auth_basic_user_file /usr/local/nginx/conf/htpasswd;
 autoindex on;
 }

以上的修改是直接在location / { } 模块下修改,这将会是全目录加密。

然后重启 nginx:
service nginx reload

  • 去验证。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容