Searching...
2012年3月5日 星期一

OpenLDAP 安裝紀錄

這是一篇安裝openldap的紀錄~除非真的無聊~不然不用看了....

1. 安裝openldap及ldap認證module
yum install openldap-servers openldap-devel openldap openldap-clients nss_ldap

2. 複製範本至/etc/openldap內
cp /usr/share/openldap-servers/slapd.conf.obsolete slapd.conf

3. 創建要存放ldap的目錄
mkdir /var/lib/ldap/niu

4. 複製DB_CONFIG
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/niu/DB_CONFIG

5. 編輯slapd.conf設定檔
vim /etc/openldap/slapd.conf
去除mark標誌(看是裝哪個版本的os)
x32: # modulepath /usr/lib/openldap => modulepath /usr/lib/openldap
x64: # modulepath /usr/lib64/openldap => modulepath /usr/lib64/openldap

去除ppolicy.la的mark標誌 (用於密碼更改原則)
# moduleload ppolicy.la => moduleload ppolicy.la
去除syncprov.la的mark標誌 (用於同步)
#moduleload syncprov.la => moduleload syncprov.la
新增TLS連線設定
TLSCipherSuite HIGH:MEDIUM:+SSLv2:+SSLv3:RSA
TLSCACertificateFile /etc/openldap/cacerts/server.pem
TLSCertificateFile /etc/openldap/cacerts/server.pem
TLSCertificateKeyFile /etc/openldap/cacerts/server.pem
TLSVerifyClient allow

新增ACL規則
access to attrs=userPassword
by self write
by anonymous auth
by dn.base="cn=Manager,ou=admin,dc=niu,dc=edu,dc=tw" write
by * none


access to *
by * read
by dn.base="cn=Manager,ou=admin,dc=niu,dc=edu,dc=tw" write

修改DB設定
database bdb
suffix "dc=niu,dc=edu,dc=tw"
checkpoint 1024 15
rootdn "cn=Manager,ou=admin,dc=niu,dc=edu,dc=tw"

修改root密碼
rootpw (使用slappasswd產生,rootpw後按一個tab即可)
修改DB存放目錄
directory /var/lib/ldap/niu
新增log設定 (loglevel說明)
loglevel 256
新增ppolicy設定
overlay ppolicy
ppolicy_default "cn=NoExpirePassword,ou=Policies,dc=niu,dc=edu,dc=tw"
ppolicy_use_lockout
ppolicy_hash_cleartext

新增同步設定
主:
serverID 1

syncrepl rid=001
provider=ldap://client ldap server
bindmethod=simple
binddn="cn=Manager,ou=admin,dc=niu,dc=edu,dc=tw"
credentials=pw
searchbase="dc=niu,dc=edu,dc=tw"
schemachecking=on
type=refreshAndPersist
retry="60 +"


mirrormode on

overlay syncprov
syncprov-checkpoint 100 10
syncprov-sessionlog 100


副:
serverID 2

syncrepl rid=001
provider=ldap://master ldap server
bindmethod=simple
binddn="cn=Manager,ou=admin,dc=niu,dc=edu,dc=tw"
credentials=pw
searchbase="dc=niu,dc=edu,dc=tw"
schemachecking=on
type=refreshAndPersist
retry="60 +"


mirrormode on

overlay syncprov
syncprov-checkpoint 100 10
syncprov-sessionlog 100


6. 編輯 /etc/sysconfig/iptables,允許ldap協定通過
-A INPUT -m state --state NEW -m tcp -p tcp --dport 389 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 636 -j ACCEPT


7. 重新啟動iptables
service iptables restart

8. 重新產生openldap設定檔
slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d
PS: 如果跳出沒有此DB則先匯入DB
slapadd -l ldif檔案 -f /etc/openldap/slapd.conf
chown -R ldap.ldap /var/lib/ldap/niu

9. 設定log
vim /etc/rsyslog.conf
加入
# save OpenLDAP log #### edited by cowman 2012-02-21
local4.* /var/log/ldap/ldap.log

重新啟動rsyslog服務
service rsyslog restart

10. 重新啟動openldap
service slapd restart

0 意見:

張貼留言