1. 程式人生 > >ldap第二天-yum安裝LDAP + phpLDAPadmin

ldap第二天-yum安裝LDAP + phpLDAPadmin

inux object session oot pass 錯誤 ldapadd 1.8 tex

1、安裝LDAP服務器和客戶端,migrationtools工具包

yum install -y openldap-servers openldap-clients migrationtools

2、設置openldap管理員密碼

slappasswd
New password: 123456 Re-enter new password: 123456

會返回加密的密碼字符串,保存好這個字符串
{SSHA}GPEzYwuXyEjXetnjC7uKXydXoERcF3HB

3、更改openldap配置

查看安裝了哪些文件

rpm -ql openldap
rpm -ql openldap-servers

修改配置

vim /etc/openldap/slapd.d/cn\=config\/olcDatabase\={2}hdb.ldif

olcSuffix: dc=mypaas,dc=com
olcRootDN: cn=Manager,dc=mypaas,dc=com  #管理賬號的用戶名
olcRootPW: {SSHA}GPEzYwuXyEjXetnjC7uKXydXoERcF3HB    #管理賬號的用戶名

4、更改監控認證配置

vim /etc/openldap/slapd.d/cn\=config\/olcDatabase\={1}monitor.ldif

olcAccess: {0}to * by dn.base="
gidNumber=0+uidNumber=0,cn=peercred,cn=extern al,cn=auth" read by dn.base="cn=Manager,dc=mypaas,dc=com" read by * none

和 cn\=config\/olcDatabase\={2}hdb.ldif 文件中的 olcRootDN 相同

5、設置DB Cache

cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown -R ldap:ldap /var/lib/ldap/

6、測試配置文件

slaptest -u 

末尾出現configfile testing successed 說明成功了

7、啟動OpenLDAP和開機啟動

systemctl start slapd.service
systemctl enable slapd.service

8、導入模板

ls /etc/openldap/schema/*.ldif | xargs -I {} sudo ldapadd -Y EXTERNAL -H ldapi:/// -f {} 

三、安裝Web管理服務

1、 安裝httpd服務器

yum install httpd -y

2、修改配置文件httpd.conf

vim /etc/httpd/conf/httpd.conf 

找到AllowOverride一行,修改none為all

<Directory />
    AllowOverride all
    Require all denied
</Directory>

如果想修改端口號,修改Listen 80一行

3、啟動服務,測試頁面

systemctl start httpd.service
systemctl enable httpd.service
curl http://127.0.0.1/

4、安裝phpldapadmin

yum install phpldapadmin
(如果找不到軟件包,重新設置一下yum源)
yum localinstall http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

5、修改配置文件

vim /etc/phpldapadmin/config.php

找到並取消下面幾行的註釋

$servers->setValue(‘server’,’host’,’127.0.0.1’);
$servers->setValue(‘server’,’port’,389);
$servers->setValue(‘server’,’base’,array(‘dc=mypaas,dc=com’));   # array裏加上openldap配置文件中設置的olcSuffix
$servers->setValue(‘login’,’auth_type’,’session’);
$servers->setValue(‘login’,’attr’,’dn’); 

把這一行註釋掉

#$servers->setValue(‘login’,’attr’,’uid’);

6、修改訪問配置文件,允許任意ip訪問

vim /etc/httpd/conf.d/phpldapadmin.conf
添加一行指令,允許這個IP段訪問

技術分享圖片

Require ip 192.168.0  #指定可訪問的ip段(不填不能訪問到這個管理工具

7、創建基礎目錄
在/etc/openldap目錄下添加base.ldif文件

cd /etc/openldap/
vim base.ldif

dn: dc=mypaas,dc=com
o: ldap
objectclass: dcObject
objectclass: organization
dc: mypaas

1. 創建1個管理員賬號

[root@localhost ~]# vim test.ldif

dn: dc=mypaas,dc=com
objectclass: dcObject
objectclass: organization
o: SYS.Inc
dc: mypaas

dn: cn=Manager,dc=mypaas,dc=com
objectclass: organizationalRole
cn: Manager

[root@localhost ~]# ldapadd -x -D "cn=Manager,dc=mypaas,dc=com" -W -f test.ldif

驗證

[root@localhost ~]# ldapsearch -x -b dc=mypaas,dc=com(objectClass=*)

2. 創建1個具有部門屬性的員工

編輯ldif文件

[root@localhost ~]# vim test2.ldif

dn: ou=it,dc=mypaas,dc=com
ou: it
objectClass: organizationalUnit

dn: cn=test1,ou=it,dc=mypaas,dc=com
ou: it
cn: test1
sn: t1
objectClass: inetOrgPerson
objectClass: organizationalPerson

#這裏其實是先創建1個部門”it”,再在”it”部門創建了1個員工,實際上是兩條命令。

插入數據庫

[root@localhost ~]# ldapadd -x -D "cn=Manager,dc=mypaas,dc=com" -W -f test2.ldif

驗證

[root@localhost ~]# ldapsearch -x -b dc=mypaas,dc=com(objectClass=*)

8、重啟httpd服務

systemctl restart httpd.service

9、訪問web管理端

訪問 http://ip/phpldapadmin
登陸用戶名:cn=Manager,dc=mypaas,dc=com

四、常見問題

1、httpd 無法啟動

先用systemctl status httpd 查看一下日誌
1、提示端口號是否沖突,修改httpd.conf端口號
2、提示沒有權限:檢查selinux,防火墻是否關閉或者正確配置防火墻

2、phpldapadmin 用戶名密碼提示錯誤

檢查/etc/phpldapadmin/config.php 中的參數是否正確配置

3、phpldapadmin創建子條目時,模板不能選中

未導入openldap的schema文件,執行下[1.8節]的命令試試

ldap第二天-yum安裝LDAP + phpLDAPadmin