- 簡介
LDAP的概念與DNS類似,都是以階層(hierarchical)概念來進行操作與處理。因此,設計一透合適的階層架構圖(Schema)是非常重要的,Schema可以讓LDAP Client知道該如何存取資訊,以及可以定義哪些人符合擁有哪些權限等等資訊。圖一為我所設計的Schema,圖中個縮寫定義如下:
DIT(Directory Information Tree;目錄資訊樹)
DC(Domain Country;區域網域)
OU(Organization Unit;組織單位)
CN(Common Name;使用者名稱)
DN(Distinguish Name;識別名稱)
圖一 : Schema |
- 安裝LDAP和phpldapadmin
#apt-get install slapd ldap-utils
#apt-get install phpldapadmin apache2 php5 php5-mysql - 設定sldapd
#dpkg-reconfigure slapd
以下為我採用的設定
- Omit OpenLDAP server configuration? No
- DNS domain name? example.com.tw
- Organization name? company (or example)
- Administrator password? (phpldapadmin登入用)
- Database backend to use? HDB
- Remove the database when slapd is purged? Yes
- Allow LDAPv2 protocol? No
Note: db path : /var/lib/ladp - 設定 phpldapadmin
#vim /etc/phpldapadmin/config.php
#指定Host
$servers->setValue('server','host','127.0.0.1');
#指定DIT
$servers->setValue('server','base',array('dc=example,dc=com,dc=tw'));
#指定admin
$servers->setValue('login','bind_id','cn=admin,dc=example,dc=com,dc=tw'); - Connect to phpldapadmin
- WebSite : http://127.0.0.1/phpldapadmin
- 帳號:cn=admin,dc=example›‹,dc=com,dc=tw
- 密碼:執行dpkg-reconfiguration時所設定的那組
phpldapadmin - 安裝並設定 LDAP Client
#apt-get install libpam-ldap nscd
#dpkg-reconfigure ldap-auth-config
注意:LDAP server Uniform Resource Identifier: ldap://{LDAP SERVER}
#auth-client-config -t nss -p lac_ldap
#pam-auth-update
- 如果需要使用者登入時,沒有家目錄要自動建立,則設定以下動作
#vim /etc/pam.d/common-sessionsession required pam_mkhomedir.so umask=0022 skel=/etc/skel
- 重啟Service
/etc/init.d/nscd restart
Reference :
[1] How To Install and Configure OpenLDAP and phpLDAPadmin on an Ubuntu 14.04 Server
沒有留言:
張貼留言