Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1689856
  • 博文数量: 206
  • 博客积分: 1450
  • 博客等级: 上尉
  • 技术积分: 2285
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-11 11:38
个人简介

学习永无止境!!

文章分类

全部博文(206)

文章存档

2022年(5)

2019年(3)

2018年(8)

2017年(32)

2016年(7)

2015年(13)

2014年(44)

2013年(24)

2011年(6)

2010年(17)

2009年(46)

2008年(1)

分类: 嵌入式

2014-03-06 11:12:46

有时候需要对某些web资源做权限验证。 在lighttpd中可以这样做。
1. 激活mod_auth模块,在/etc/lighttpd/lighttpd.conf中去掉mod_auth模块前面的#
2. 下载apache相关模块

  1. # emerge -av app-admin/apache-tools

3. 生成密码文件

  1. # cd /var/lib/lighttpd/

  2. # htdigest -c lighttpd.user.htdigest 'some text' username

其中some text是在密码提示框的标题中要显示的内容,lighttpd.user.htdigest是密码文件的文件名
执行过htdigest后,输入两边这个用户的密码后,就可以生成lighttpd.user.htdigest这个密码文件了
4. 配置lighttpd.conf文件
添加

  1. auth.debug = 0

  2. auth.backend = "htdigest"

  3. auth.backend.htdigest.userfile = var.statedir + "/lighttpd.user.htdigest"

auth.debug 是调试级别,0表示不调试,1表示记录’auth-ok’验证成功的信息, 2表示所有详细的调试信息
在需要验证的虚机上添加以下内容

  1. auth.require = ( "" =>

  2. (

  3. "method" => "digest",

  4. "realm" => "some text",

  5. "require" => "user=username"

  6. )

  7. )

auth.require后的空引号表示虚机中所有路径都需要验证,如果只是部分需要验证,那么就指定具体路径
5. 重启lighttpd,使配置生效

注意:realm处必须使用双引号才可以,否则不支持携带空格的realm。
例如:htdigest -c test "xxL Configuration" root
使用多个username时,可以去掉-c选项。
htdigest实际就是执行:
 hash=`echo -n "root:xxL Configuration:$new_pw" | md5sum | cut -b -32`
  echo "root:xxL Configuration:$hash" > /configure/lighttpd-htdigest.user

阅读(1462) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~