LDAP系列二創建用戶

一:創建用戶

1:概述

默認情況下在slapd.conf文件中配置有超級管理員賬號,除了這個賬號外,我們還可以添加其他的管理員賬號,並控制相應的權限,比如只讀,可寫。Ldap新增用戶,可以通過客戶端工具實現,也可以通過命令來實現。我這裏主要通過ldapadd命令來實現。

目前ldapadd命令只支持ldif格式文件,生成LDIF格式文件

往openldap數據庫存放數據,有多種方式:1. 手動編輯;2. 用工具生成

手動編輯這裏不介紹。工具生成指的是用migrationtools腳本來產生ldif文件

2:安裝migrationtools

2.1安裝

yum -y install migrationtools

2.2確認是否安裝完成

yum list installed | grep migrationtools

3:創建linux用戶組和用戶

3.1創建用戶組和用戶(密碼設置爲123456)

groupadd ldapgroupxu

useradd -g ldapgroupxu ldapuserxu

passwd ldapuserxu

 

3.2驗證是否創建成功

4:修改migrationtools配置文件

cd     /usr/share/migrationtools 可以看到很多的文件

vim   migrate_common.ph(修改前先備份下)

這裏改爲自己需要修改的即可。

5:將系統用戶生成ldif文件

備註:其實ldap用戶和linux系統用戶我理解沒有什麼關係,這裏這麼弄只是爲了用工具生成固定格式的ldif文件,後期可以不用建linux用戶,自己編輯ldif文件即可。

5.1生成符合ldap格式的ldif文件

cd  /usr/share/migrationtools 在這個目錄下執行下面兩句,可以看到,生成了兩個文件

./migrate_passwd.pl /etc/passwd passwd.ldif

./migrate_group.pl /etc/group group.ldif

 

5.2修改整理ldif文件,刪除系統賬號與不需要的賬號以及用戶組

這裏只留下自己創建的即可。

6:導入所屬組和密碼文件

6.1導入組LDIF 文件至OpenLDAP 目錄樹中,生成用戶組

ldapadd -x -W -D "cn=ldapadmin,dc=example,tongdc=com" -f group.ldif

ldapadd -x -W -D " uid=ldapadmin,dc=example,dc=com" -f group.ldif

這個時候會報錯,是因爲group.ldif中的ou=Group沒有,所以需要創建

6.2通過客戶端工具創建ou

我這裏使用的是ldapadmin工具來創建的。

 

然後再次運行

 

6.3通過ldif文件導入,生成ou

創建ldap的根項目

新建一個ldapbase.ldif文件

內容爲

dn: dc=example,dc=com

dc: example

objectClass: top

objectClass: domain

 

dn: ou=Group,dc= example,dc=com

objectClass: organizationalUnit

ou: Group

 

dn: ou=People,dc=example,dc=com

objectClass: organizationalUnit

ou: People

 

上傳到/usr/share/migrationtools目錄

執行以下命令

ldapadd -x -W -D " uid=ldapadmin,dc=example,dc=com "  -f ldapbase.ldif

 

6.4導入用戶LDIF 文件至OpenLDAP 目錄樹中,生成用戶

ldapadd -x -W -D " uid=ldapadmin,dc=example,dc=com " -f passwd.ldif

 

運行命令前創建ou= People

7:連接ldap

進入後提示

然後測試鏈接  如果成功就OK了..  真的是這樣麼???    NO....

 

錯誤一: 當你測試鏈接成功以後點擊OK.  然後雙擊這個綠色的小房子會報錯!!提示 "ldap error 無此對象"

 

錯誤二:當你使用命令通過ldif文件導入OU的時候會提示 "ldap_add: No such object (32)"

 

 

 

報錯與解決:

其實這兩個錯的是同一個問題引起的.  你在配置文件裏面添加了 suffix "dc=enfinium,dc=local"   但是啓動服務後,ldap並沒有給你創建根項目.所以在ldif文件中要配置創建根項目的語句

7.1創建ldap的根項目

新建一個ldapbase.ldif文件

內容爲

dn: dc=example,dc=com

dc: example

objectClass: top

objectClass: domain

 

dn: ou=Group,dc=example,dc=com

objectClass: organizationalUnit

ou: Group

 

dn: ou=People,dc=example,dc=com

objectClass: organizationalUnit

ou: People

 

上傳到/usr/share/migrationtools目錄

執行以下命令

ldapadd -x -W -D " uid=ldapadmin,dc=example,dc=com "  -f ldapbase.ldif

 

可以通過-c參數,強制添加,就可以了

ldapadd -x -c -W -D "uid=ldapadmin,dc=example,dc=com" -f ldapbase.ldif

ldapsearch -x -H ldap://***:389 -b  "uid=90001019,cn=person,dc=example,dc=com" -D "uid=ldapadmin,dc=example,dc=com" -w  *****

7.2如果上面的步驟執行完成後,連接仍然報錯。需要執行以下步驟

service slapd start

  rm -rf /etc/openldap/slapd.d/*

  slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d

  chown -R ldap:ldap /etc/openldap/slapd.d/

  service slapd restart

修改權限

chown -R ldap.ldap /etc/openldap/*

chown -R ldap.ldap /var/lib/ldap/*

 

 

 

至此ldap的用戶已創建成功,下面就是權限控制了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章