美文网首页
OpenLDAP 服务端配置(二): 允许用户自行修改密码

OpenLDAP 服务端配置(二): 允许用户自行修改密码

作者: 木木小刀 | 来源:发表于2020-03-04 01:16 被阅读0次

    默认配置下, 用户无法自行修改密码, 需另行配置

    1. 修改slapd.conf文件
    #找到下面几条,去掉前面的井号
    modulepath /usr/lib/openldap
    modulepath /usr/lib64/openldap
    modeleloda ppolicy.la
    
    1. 在database config前面加上两个字段
    access to attrs=userPassword
     by self write
     by anonymous auth
     by dn="cn=admin,dc=domain,dc=com" write
     by * node
    
    access to *
     by self write
     by dn="cn=admin,dc=domain,dc=com" write
     by * none
    
    1. 配置文件末尾添加:
    overlay ppolicy
    ppolicy_default cn=admin,dc=domain,dc=com
    
    1. 然后重新生成数据库配置文件
    rm -rf /etc/openldap/slapd.d/*
    [root@ll ~]$ slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d
    config file testing succeeded
    
    1. 增加 acl 规则
      在配置文件 /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{2\}bdb.ldif 中最后增加acl规则:
    olcAccess: {0}to attrs=userPassword by self write by dn.base="cn=admin,dc=domain,dc=com" write by anonymous auth by * none
    olcAccess: {1}to * by dn.base="cn=admin,dc=domain,dc=com" write by self write by * read
    
    1. 修改文件校验值
      上述文件内容改了, 文件校验值就会发生变化, 需要修改文件中第二行的校验值
    # 安装工具包
    yum install -y perl-Archive-Zip
    # 截取除了文件前两行以外的内容
    tail -n +3 /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{2\}bdb.ldif  \
          > /tmp/temp.ldif
    # 计算校验值
    crc32 /tmp/temp.ldif
    # 将crc32 输出的校验值更新到原ldif 文件的第2行中
    
    1. 修改权限, 并重启服务
    chown -R ldap:ldap /etc/openldap/*
    chown -R ldap:ldap /var/lib/ldap
    /etc/init.d/slapd restart
    

    相关文章

      网友评论

          本文标题:OpenLDAP 服务端配置(二): 允许用户自行修改密码

          本文链接:https://www.haomeiwen.com/subject/epodlhtx.html