以下字段值都是通过手工修改域架构完成,等有时间写个修改域架构的小软件,实现自动扩展(其实也比较简单,就是在架构里添加属性,并添加到对应类别就可以了)
Smtp验证时日志显示:postfix/smtpd[4920]: warning: SASL authentication failure: could not verify
使用authtest –s login 用户,看是否可以查到用户。
出现这个问题很可能的原因是ldap搜寻失败,这时需要看vim /etc/authlib/authldaprc里的LDAP_BASEDN,它搜索时默认不搜索父目录和子目录,所以需要指定实际路径。
其中的一些字段映射需要通过扩展域架构或映射到未使用的字段,添加用户时需要更新该字段的值。(稍候写一个软件来实现活动目录用户的添加,包括更新:用户邮箱,邮箱路径,大小限制,加密的密码等需要的字段)
LDAP_URI ldap://10.10.126.23
LDAP_PROTOCOL_VERSION 3
LDAP_BASEDN ou=mail,dc=bj,dc=test,dc=com //如果写这个路径,用户需要在mail这个OU下
LDAP_BINDDN cn=testadmin,ou=mail,dc=bj,dc=test,dc=com //testadmin用户所在的OU,这个用户是用来查进ldap查询和操作的,需要委派mail这个OU的对应操作权限
LDAP_BINDPW testadmin //testadmin这个用户的密码
LDAP_TIMEOUT 5
LDAP_MAIL cn //这个是查询时提交上去的值,我改成cn,这样提交就会变成cn=用户,basedn
//LDAP_DOMAIN bj.test.com //这个如果不为空的话提交查询上去会变成cn=用户@bj.test.com,在WINDOWS域里会查不到
LDAP_GLOB_UID vmail //这个是postfix用户
LDAP_GLOB_GID vmail //这个是postfix用户
//LDAP_HOMEDIR homeDirectory
LDAP_HOMEDIR company //使用adsi手工给用户的company添加值,这样查询用户时就获取到了用户的home目录,否则需要扩展域架构
//LDAP_MAILDIR mailbox
LDAP_MAILDIR company
LDAP_DEFAULTDELIVERY defaultDelivery
//LDAP_MAILDIRQUOTA quota //这个也需要扩展域架构,否则注释掉变成为空
LDAP_MAILDIRQUOTA comment //我映射到了comment字段
LDAP_FULLNAME cn //这里应该改成DisplayName
LDAP_CLEARPW street //CLEARPW和CRYPTPW需要存在一个,否则验证不通过,这个字段是用户的密码,courier-authlib会在这里验证,因此需要存在值,并且和这个用户的域密码一致
//LDAP_CRYPTPW userPassword
LDAP_DEREF never
LDAP_TLS 0