科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件基于用户的访问控制-FreeBSD 技术文摘

基于用户的访问控制-FreeBSD 技术文摘

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

更严格、有效的控制方法还是基于用户和对应的口令对浏览客户进行控制。这使得对这个目录进行强制性的保护,浏览器用户必须输入合法的用户名和正确的口令才能浏览网页。

来源:早雪网 2008年5月20日

关键字: 技巧 操作系统 FreeBSD

  • 评论
  • 分享微博
  • 分享邮件
    其他认证方式
  
  Apache使用AuthType指定加密的方式,AuthType设为Basic时为使用命令htpasswd 创建口令文件并进行口令加密。然而这种方式有两个缺点,一个为浏览器将在Internet上使用明文发送用户名和口令信息,另一个是htpasswd的口令文件为普通文本文件,这样当用户数目较多时,查找用户的效率就很低。

  为了弥补安全性的缺点,可以将AuthType设置为 Digest,这样就会使用Digest鉴别方式进行认证,此时认证口令文件要使用AuthDigestFile来规定,而口令文件必须使用另一个加密程序htdigest 产生和维护,而hdigest的使用方法和htpasswd相同。在Digest认证方式下,浏览器不会直接发送口令的明文信息,而是在传输口令之前先使用MD5算法进行编码处理。注意,不是所有类型的浏览器都支持Digest类型的鉴别方式的,只有在浏览器和服务器同时都支持Digest方式时,这种认证才可行。

  AuthType为Basic时,是使用系统加密方法,一般是使用DES算法,但在FreeBSD下有可能是使用的MD5算法,但除非管理员希望在不同系统间共享口令文件,否则不必考虑他们使用的到底是何种算法。需要与其他系统兼容时,可以重新安装DES算法。但在系统使用时重新安装加密算法,就无法重建整个口令文件,因此不推荐在系统使用过程中更换认证算法,而应该在系统安装时就确定使用的认证算法。

  为了减少用户数量较多时服务器的处理开销,就必须使用数据库技术,这是因为数据库使用了索引技术,对数据的查找就比较快速。Unix下最简单的数据库为使用系统提供的DB(或DBM)库进行创建数据库文件的技术,Apache 服务器中使用模块mod_auth_db.so对这种数据库口令文件提供支持。htpasswd产生的文本文件在有几百个用户时就会花费相当大的服务器开销,而DBM格式的认证方式可以高效的支持上万个用户。

  BSD风格的Unix系统通常使用DB库,而其他Unix通常使用DBM库。因此其他Unix使用的命令和设置中应该为dbm而非db。

  为了支持这种认证方式,应载入mod_auth_db.so模块,使用Ports Collection安装的Apache服务器缺省情况就支持这个模块而不需要改动。可以让Apache同时支持多种认证方式,而不会发生冲突。

  此外,配置文件中的认证方式也需要改变,首先要创建数据库文件,这会在通过使用dbmmanage命令第一次增加用户时创建。

# dbmmanage /usr/local/etc/users adduser user1 pass123

  这个命令将创建/usr/local/etc/usersdbm数据库文件,并使用pass123为口令在数据库中增加用户user1。然后就可以针对现有的数据库文件,增加、删除和查看用户信息了:

# dbmmanage /usr/local/etc/httpd/usersdbm delete user2# dbmmanage /usr/local/etc/httpd/usersdbm view
 
  在拥有了数据库文件和用户数据之后,就可以使用这种认证方式了:

AuthName DBMTestAuthType BasicAuthDBUserFile /usr/local/etc/usersdbmrequire  valid-user

  可以使用dbmmanage命令也可以用来管理组,例如将user1加入group1组,但必须添加用户的同时进行设置,需要使用dhmmanage的另一个参数:

  # dbmmanage /usr/local/etc/users adduser user1 pass123 group1

  这样就能使用AuthDBGroupFile和require group1进行认证管理。

  除了使用DBM之外,Apache还可以配置成与匿名ftp认证方式类似的方式,或者使用mSql、Oracle 等SQL数据库进行认证,或者使用Kerboros、LDAP服务器进行认证,这些认证方式更为强大,能使Web 认证与其他网络服务的认证方式相统一。但是这些额外的认证方式必须使用相应的认证模块进行支持。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章