《LINUX教程:OpenLDAP安装及设置普通用户修改自己密码》要点: 本文介绍了LINUX教程:OpenLDAP安装及设置普通用户修改自己密码,希望对您有用。如果有疑问,可以联系我们。
前言: ?在安装使用、openldap的过程中踩过很多坑,有的是自己没理解明白,有的是别人表述不明确,此次就从安装开始,简单权限设置、以及双主,后面包含与confluence、jira,gitlab的关联~ 一、安装openldap ?此前编译安装过,踩过不少坑,最后还是选择用yum安装来的方便. ?`yum install openldap openldap-servers openldap-clients openldap-devel compat-openldap` ? ?openldap后端的数据库是Berkeley DB,所以这个也得安装,当时编译安装时,对这个数据库的版本有恨严格的要求,坑很大.. ?`yum install db4 db4-utils`
?虽说openldap已经提供了足够的命令来创立,搜索,修改数据,但是依然不及web页面显示来的直观,此处我们使用phpldapadmin. ?``` ?wget http://sourceforge.net/projects/phpldapadmin/files/phpldapadmin-php5/1.2.3/phpldapadmin-1.2.3.zip/download
?unzip phpldapadmin-1.2.3.zip ?cp -R phpldapadmin-1.2.3 /var/www/html/phpldapadmin ?cd /cd/www/html/phpldapadmin/config ?cp config.php.example config.php ?``` ?和大多数php应用一样,得本身复制出一个配置文件.记得修改php的timezone哟.这也算是一个小坑.
?` ?yum install php php-ldap php-fpm nginx ?sed -i '/; date.timezone/a date.timezone =Asia/Shanghai' /etc/php.ini ` ?下面是我使用的nginx的设置装备摆设文件 ?``` ?vim /etc/nginx/conf/phpldapadmin.conf ?server{ ? ? listen? ? ? 80; ? ? server_name? ldap.xxx.com;
? ? location / { ? ? ? ? index index.html index.php; ? ? ? ? root /var/www/html/phpldapadmin;
? ? if (!-e $request_filename) { ? ? ? ? ? ? rewrite ^/(.*)? /index.php?$1 last; ? ? ? ? } ? ? }
?
? ? location ~ .php$ { ? ? ? ? root /var/www/html/phpldapadmin; ? ? ? ? fastcgi_pass? 127.0.0.1:9000; ? ? ? ? fastcgi_index? index.php; ? ? ? ? fastcgi_param? SCRIPT_FILENAME? $document_root$fastcgi_script_name; ? ? ? ? include? ? ? ? fastcgi_params; ? ? }
?} ?``` ?接下来就启动nginx、启动php-fpm ?``` ?service nginx start ?service php-fpm start ?```
?继续配置openldap.网上有好多教程都是配置slapd.conf 文件但是,yum安装的默认/etc/openldap/下是没有这个文件的,因为新版的吧一个文件分成了多个.不习惯的可以继续配置本来的slapd.conf文件,然后通过命令将其变成slapd.d/目录下的多个配置文件.
?首先生成管理员暗码. ?slappasswd ?输入两次得到一个暗码,我的这个暗码是1234 ?{SSHA}7Wi/7NzFL/b6y+a7jZsDos5ax3HK0gUZ ?修改数据库配置文件,设置域名,暗码等 ?``` ?vim /etc/openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif
?olcSuffix: dc=xxx,dc=com ?#这个主要设置目录树根的域名. ?oclRootDN: cn=admin,dc=xxx,dc=com ?#这个是设置管理员dn,xxx可以换成本身的域名~
?#然后在这歌配置文件的最后一行加入设置管理员暗码的条目~ ?olcRootPW: {SSHA}7Wi/7NzFL/b6y+a7jZsDos5ax3HK0gUZ ?```
2、指定监控权限 ``` ?vim /etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldif ?dn.base="cn=admin,dc=com" ?#改动其末日域名 ``` 3、设置数据库缓存 ``` ?cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG ?chown -R ldap:ldap /var/lib/ldap
?#测试配置文件是否有错,得到`testing succeeded`表现没问题 ?slaptest -u ``` 4、启动openldap ?`service slapd start`
此时就可以访问phpldapadmin.web页面了 用户名:cn=admin,dc=ldap,dc=com 暗码:1234
?不过此处还有一坑,web页面会有一个提示,然后没有目录树的根,原因是根节点还没有被创建.操作如下: ?``` ?vim base.ldif ?#以下为base.ldif内的内容 ?dn: dc=xxx,dc=com ?o: ldap ?objectclass: dcObject ?objectclass: organization ?``` ?然后加入用户 ?`ldapmodify -x -D "cn=admin,dc=luojilab,dc=com" -W -f base.ldif` ?如果提示`adding new entry "dc=xxx,dc=com"`就表现成功了~
再拜访web页面就没问题啦~~
openldap设置普通用户修改自己暗码
当我们接入jira或者wiki等等,普通用户肯定有修改暗码的需求,为了实现此功能,就得在openldap配置文件中加入权限,允许普通用户自己修改暗码.
前面已经做过的操作,此处不再阐明. 修改slapd.conf文件 ``` #找到下面几条,去掉前面的井号 modulepath /usr/lib/openldap modulepath /usr/lib64/openldap modeleloda ppolicy.la ``` 在database config前面加上两个字段 ``` access to attrs=userPassword ?by self write ?by anonymous auth ?by dn="cn=admin,dc=com" write ?by * node
access to * ?by self write ?by dn="cn=admin,dc=com" write ``` 再配置文件末端添加: ``` overlay ppolicy ppolicy_default cn=Captain,ou=pwpolicies,dc=le,dc=com ``` 然后重新生成数据库配置文件 ``` rm -rf /etc/openldap/slapd.d/* [root@ll ~]# slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d config file testing succeeded [root@ll ~]# chown -R ldap.ldap /etc/openldap/* [root@ll ~]# chown -R ldap.ldap /var/lib/ldap [root@ll ~]# /etc/init.d/slapd restart ```
本文永远更新链接地址: 学习更多LINUX教程,请查看站内专栏,如果有LINUX疑问,可以加QQ交流《LINUX教程:OpenLDAP安装及设置普通用户修改自己密码》。 (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|