内容要点:

一、背景描述

二、操作步骤

一、背景描述

1、我们配置好Nginx 服务后,为了安全,可以为Nginx设置访问密码,以保证我们的的数据安全。

2、Nginx为我们提供了 ngx_http_auth_basic_module 模块,该模块可以让我们自己实现对Web内容的访问能控制,访问用户必须输入正确的用户名和密码后才能进行访问

二、操作步骤

1、安装htpasswd。

htpasswd是Apache服务器中生成用户认证的一个工具

#yum install -y httpd-tools

扩展:htpasswd参数

•  -c 创建passwdfile.如果passwdfile 已经存在,那么它会重新写入并删去原有内容.

• -n 不更新passwordfile,直接显示密码

• -m 使用MD5加密(默认)

• -d 使用CRYPT加密(默认)

• -p 使用普通文本格式的密码

• -s 使用SHA加密

• -b 命令行中一并输入用户名和密码而不是根据提示输入密码,可以看见明文,不需要交互

• -D 删除指定的用户

2、设置用户名和密码

htpasswd 安装成功后,就可以设置用户名和密码,通过如下命令进行设置

#htpasswd  -bc /etc/nginx/conf.d/.nginxpasswd nginx zabbix-nginx
#含义是在 /etc/nginx/conf.d/ 目录下生成密码文件,并生成用户名为 nginx,密码为zabbix-nginx 的用户信息

3、修改nginx配置

Nginx的默认端口为80,因为我们要为整个Nginx站点开启验证,找到端口为80的Server添加如下两行内容

auth_basic "Please enter the user name and password"; #这里是验证时的提示信息

auth_basic_user_file /etc/nginx/htpasswd;

Nginx使用htpasswd配置访问密码_nginx

保存退出,重新启动Nginx,此时访问比必须输入正确的用户名和密码才能访问。

补充:nginx常用命令

nginx -s stop  # 快速关闭
nginx -s quit  # 优雅地关闭,指的是完成服务后退出
nginx -s QUIT 进程ID  # 优雅地关闭
nginx -t   # 检查配置文件格式是否配置正确
nginx -s reload  # 重新加载配置文件