摘要:1. 生成密码htpasswd文件(二选一) 什么是 htpasswd ? htpasswd 是开源 http 服务器 apache httpd 的一个命令工具,用于生成 http 基本认证的密码文件。 加密方式有什么区别? MD5:使用MD5加密密码。在Windows, Netware 和TPF上,这是默认的加密方式。 crypt:使用crypt()加密密码。在除
1. 生成密码htpasswd文件(二选一) 什么是 htpasswd ?
htpasswd 是开源 http 服务器apache httpd的一个命令工具,用于生成 http 基本认证的密码文件。
加密方式有什么区别?MD5:使用MD5加密密码。在Windows, Netware 和TPF上,这是默认的加密方式。
crypt:使用crypt()加密密码。在除了Windows, Netware和TPF的平台上,这是默认的。 虽然它在所有平台上可以为htpasswd所支持, 但是在Windows, Netware和TPF上不能为httpd服务器所支持。
SHA:使用SHA加密密码。 它是为了方便转入或移植到使用LDAP Directory Interchange Format (ldif)的Netscape而设计的。
plain:不加密,使用纯文本的密码。虽然在所有平台上 htpasswd 都可以建立这样的密码, 但是httpd后台只在Windows, Netware和TPF上支持纯文本的密码。
为什么要做成在线的?如果我们不使用apache服务器,例如使用nginx等,可能手头没有这个命令行工具,就无法生成密码文件,有了在线版的可以方便服务器管理员使用。
(1) 在线htpasswd生成器
(2) 离线(本地)生成htpasswd
a.通过htpasswd命令生成用户名及对应密码数据库文件。
//创建认证信息,wyl 为认证用户名 [root@bgs-5p173-wangwenting ~]# htpasswd -c /usr/local/nginx/passwd.db wyl //输入认证密码 New password: ******* //再次输入认证密码 Re-type new password: ******** Adding password for user wyl //修改网站认证数据库权限 [root@bgs-5p173-wangwenting ~]# chmod 400 /usr/local/nginx/passwd.db //修改网站认证数据库属主和属组 [root@bgs-5p173-wangwenting ~]# chown root:root /usr/local/nginx/passwd.db //可以看到通过htpasswd生成的密码为加密格式 [root@bgs-5p173-wangwenting ~]# cat /usr/local/nginx/passwd.db wyl:r5IXRXWSmlBk6
2. 配置Nginx主机文件
//主配置文件中http字段中添加以下语句 [root@bgs-5p173-wangwenting ~]# vim /usr/local/nginx/conf/nginx.conf user root; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } server { listen 12171; server_name localhost; client_max_body_size 151m; location / { auth_basic "s1"; #虚拟主机认证命名 auth_basic_user_file /usr/local/nginx/passwd.db; #虚拟主机用户名密码认证数据库 #proxy_pass http://10.0.0.10:9011; #nginx 访问 root html; index index.html index.htm; } } server { listen 12172; server_name localhost; client_max_body_size 151m; location / { auth_basic "s1"; #虚拟主机认证命名 auth_basic_user_file /usr/local/nginx/passwd.db; #虚拟主机用户名密码认证数据库 proxy_pass http://10.0.0.10:8088; #hadoop 访问 } }
3. 修改htpasswd文件权限
sudo chown root:www-data htpasswd sudo chmod 640 htpasswd
授权失败会导致 服务器500的错误
4. 重启Nginx服务器
// 测试重启配置文件是否正确 # nginx -t nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful // 平滑重启 # nginx -s reload
5. 访问添加权限限制Web,如图:
相关文章推荐
虚拟主机的专业参数,分别都是什么意思?2022-09-09
中非域名注册规则是怎样的?注册域名有什么用处? 2022-01-10
HostEase新年活动促销 美国/香港主机全场低至五折2021-12-28
HostGator下载完整备份教程分享2021-12-28
Flink中有界数据与无界数据的示例分析2021-12-28