centos 7 部署LDAP服務


172.21.251.111 server
172.21.251.112 node

{SSHA}gGQUjzyJX+Oi7ZJCURCVmqq2UmtVWHZd
一、環境准備
關閉 selinux firewalld
setenforce 0
systemctl stop firewalld.service
systemctl disable firewalld.service
二、OPENLDAP服務搭建
1、安裝LDAP服務器和客戶端,migrationtools工具包
yum install -y openldap-servers openldap-clients migrationtools
2、設置openldap管理員密碼
slappasswd
然后根據提示輸入密碼:
New password: 123456
Re-enter new password: 123456
會返回加密的密碼字符串,保存好這個字符串
{SSHA}f13zZnx/b4LQ/ErM+Rf9VSVEJqIE7yHM
3、更改openldap配置
查看安裝了哪些文件(如果熟悉目錄結構可以略過)
rpm -ql openldap
rpm -ql openldap-servers
修改配置
vim /etc/openldap/slapd.d/cn\=config\/olcDatabase\={2}hdb.ldif
找到olcSuffix,修改為你的dc,如:
dc=mypaas,dc=com
下一行olcRootDN, 修改為你的用戶名,如:
cn=Manager,dc=mypaas,dc=com
在文件末尾添加一行,設置剛才的密碼:
olcRootPW: {SSHA}f13zZnx/b4LQ/ErM+Rf9VSVEJqIE7yHM
4、更改監控認證配置
vim /etc/openldap/slapd.d/cn\=config\/olcDatabase\={1}monitor.ldif
修改 olcAccess 中的dn.base=”cn=xxxxxxx”這行為剛才設置的用戶名,如:
dn.base=”cn=Manager,dc=mypaas,dc=com”
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
如果想修改端口號,修改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
取消Order Deny,Allow的注釋
7、創建基礎目錄
在/etc/openldap目錄下添加base.ldif文件
cd /etc/openldap/
vim base.ldif
在文件中添加以下內容
dn: dc=mypaas,dc=com
o: ldap
objectclass: dcObject
objectclass: organization
dc: mypaas
(dc 修改為你自己的內容)
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節]的命令試試

 


導入帳號:
vim /etc/openldap/base.ldif
dn: dc=wangqing,dc=com
o: ldap
objectclass: dcObject
objectclass: organization
dc: wangqing

ldapadd -f base.ldif -x -D cn=Manager,dc=wangqing,dc=com -w123456

 

Alias /phpldapadmin /usr/share/phpldapadmin/htdocs
Alias /ldapadmin /usr/share/phpldapadmin/htdocs

<Directory /usr/share/phpldapadmin/htdocs>
<IfModule mod_authz_core.c>
# Apache 2.4
Require local
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
Require ip 172.0.0.0/8
</IfModule>
<IfModule !mod_authz_core.c>
</IfModule>
</Directory>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM