一、应用场景
在浏览器中,输入http://www.100.com/whoami_/,弹出对话框要求验证用户名、密码。
http://www.100.com 本地设置了Host,并非真正的www.100.com,-_-!
/whoami_/ 数据库管理PHPMyAdmin目录,所以目录的安全级别要求很高。
二、编辑Hpptd.conf文档
# vim /etc/httpd/conf/httpd.conf # 请先确定以下几行是存在的 AccessFileName .htaccess <Files ~ "^\.ht"> Order allow,deny Deny from all Satisfy All </Files> # 在不受影响的地方加入下面这一段: <directory "/var/www/html/whoami_/"> AllowOverride AuthConfig Order allow,deny Allow from all </Directory> #重新启动httpd服务 # service httpd restart
三、创建.htaccess文档
# vim /var/www/html/whoami_/.htaccess
# 只要加入底下几行即可
authname "Protect Directroy"
authtype basic
authuserfile /var/www/apache.passwd
require user taisha discuz
- AuthName:提示语.
- AuthType:认证的类型,这里仅列出Apache预设的类型,即[basic]
- AuthUserFile:这里保护目录所使用的账户、密码的设置文件,文件的账号不限在/etc/passwd出现的用户,可以随意设置,另外这个文件不要放在apache可以浏览到的目录内,避免被窃取。
- require:后面包括了允许访问的账号,多账号使用空格分隔;如果要让apache.passwd中的所有账号都能够访问,可以设置成 require valid-user
四、创建apache.passwd文档
命令:htpasswd [-cmdD] 密码文件路径 使用者账户
选项与参数:
- -c:建立密码文件,如果密码文件已经存在,则原本的资料会删除,所以如果只是新增使用者(密码文件已存在),不用加-c参数;
- -m:不使用预设的Crypt加密,改用md5方式加密密码;
- -d:使用更复杂的SHA方式加密;
- -D:删除使用者
# htpasswd -c /var/www/apache.passwd taisha # htpasswd /var/www/apache.passwd discuz