用户工具


相比mediawiki,dokuwiki有很多优点,安装简单,dokuwiki的数据是以文件的形式存储的,文件放在data/pages/下,不需要用的数据库,数据移动简单。权限管理强大,acl权限列表控制控制页面级别的访问。

现在来配置Dokuwiki通过连接LDAP服务器进行认证登陆 

一、配置所需环境: 
1、 安装完成并且配置正确的LDAP服务器。 
2、  确保服务器PHP已安装LDAP扩展(php-ldap)。 
3、下载并安装最新的dokuwiki,并进行安装。
wget http://download.dokuwiki.org/out/dokuwiki-382d0ca15f9eeceea6bc3c0c5a145a62.tgz
tar zxvf dokuwiki-382d0ca15f9eeceea6bc3c0c5a145a62.tgz 
chmod 777 -R dokuwiki
二、配置Dokuwiki采用LDAP认证登陆。 
1、安装dokuwiki,配置管理员账户
 、访问 http://203.195.187.200/dokuwiki/install.php
、配置管理员账号

2、启用LDAP 插件
、用管理员账户登录
、点击  管理――>插件管理器。  勾选authldap选项。 

3、 配置LDAP 插件
 、点击  管理――>配置设置――>认证设置
修改:
认证后台管理方式
密码加密方法
超级用户 - 不论 ACL 如何设置,都能访问所有页面与功能的用户组/用户
管理员 - 能访问相应管理功能的用户组/用户
、点击  管理――>配置设置――>插件设置
修改:
您的 LDAP 服务器。填写主机名 (localhost) 或者完整的 URL (ldap://server.tld:389)
LDAP 服务器端口 (如果上面没有给出完整的 URL)
何处查找用户账户。例如 ou=People, dc=server, dc=tld
何处查找用户组。例如 ou=Group, dc=server, dc=tld
用于搜索用户账户的 LDAP 筛选器。例如 (&(uid=%{user})(objectClass=posixAccount))
用于搜索组的 LDAP 筛选器。例如 (&(objectClass=posixGroup)(|(gidNumber=%{gid})(memberUID=%{user})))
使用的协议版本。您或许需要设置为 3

配置完成后 ./conf/local.php应该是这个样子
$conf['title'] = 'my_wiki';
$conf['lang'] = 'zh';
$conf['license'] = 'cc-by-sa';
$conf['useacl'] = 1;       # 启动acl
$conf['autopasswd'] = 0;
$conf['authtype'] = 'authldap';  # 启动ldap
$conf['passcrypt'] = 'md5';
$conf['superuser'] = 'fangqiang'; # 指定超级管理员账号  也可以是@admin(admin组中所有成员都是超级管理员)   
$conf['manager'] = 'user1'; #指定普通管理员账号
$conf['disableactions'] = 'register';
$conf['plugin']['authldap']['server'] = 'your-IP';
$conf['plugin']['authldap']['usertree'] = 'ou=People,dc=1v,dc=cn';
$conf['plugin']['authldap']['grouptree'] = 'ou=group,dc=1v,dc=cn';
$conf['plugin']['authldap']['userfilter'] = '(&(uid=%{user})(objectClass=posixAccount))';
更多:http://wenku.baidu.com/link?url=rqKrQde6qbqKJgCijV3SCGLN-vplOVuJbwttE2gRWudSY4J6vl95pM6FA6GJrlojhZmIFj6KG5MI8UlE5ppFsJpGAnx6jtl9ulZjWo8xaxq

4、更精细的权限控制,用管理员登陆。右上角的管理――访问控制列表(ACL)管理器。
然后添加相应的规则,这些规则会被映射到./conf/local.php文件中

三  、配置邮件

  • 下载Swiftmail插件
  • 管理――配置设置――通知设置{1 启用订阅支持;2 填写mailfrom}
  • 管理――配置设置――Swiftmail{1 smtp_host;2 auth_user;3 auth_pass}
  • auth_user 要和上面的 mailfrom 相同


更多权限见:https://www.dokuwiki.org/zh:acl