hello大家好,我是城鄉(xiāng)經(jīng)濟(jì)網(wǎng)小晟來為大家解答以上問題,如何使用ldap,LDAP搭建統(tǒng)一認(rèn)證服務(wù))很多人還不知道,現(xiàn)在讓我們一起來看看吧!
(資料圖片)
LDAP主要用來解決統(tǒng)一認(rèn)證的問題,比如我們經(jīng)常使用的nextcloud、proxmox、Linux主機(jī)等,均支持配置LDAP。通過部署LDAP,我們開發(fā)的眾多網(wǎng)站和搭建的服務(wù)可以實(shí)現(xiàn)統(tǒng)一的用戶管理,實(shí)現(xiàn)不同系統(tǒng)的統(tǒng)一認(rèn)證,用戶密碼的統(tǒng)一修改等。LDAP是以樹狀結(jié)構(gòu)的目錄數(shù)據(jù)庫為基礎(chǔ)的服務(wù),所以和我們文件夾類似的結(jié)構(gòu),以下是各個目錄部分的名稱。
屬性名
英文名稱
中文名
備注
DN
Distinguished Name
識別名
表示條目在目錄樹中從根出發(fā)的絕對路徑,是條目的唯一標(biāo)識
DC
Domain Name
域名
OU
Organizational Unit
組織單元
最多可以有四級,每級最長32個字符,可以為中文
CN
Common Name
用戶名
LDAP的搭建和使用
slapd是服務(wù)端程序,ldap-utils是工具集(ladpmodify,ldapadd等)
apt install slapd ldap-utils
dpkg-reconfigure slapd
由于部分應(yīng)用需要memberOf支持,所以我們在一開始就要添加該模塊,這樣后續(xù)用到時候方便直接使用。該部分參考鏈接完成。
首先需要新建三個文件,可以新建一個目錄,分別是memberof_config.ldif、refint1.ldif、refint2.ldif。特別注意的是,在做這些之前,需要獲取幾個參數(shù)。
新建memberof_config.ldif,注意修改olcDatabase和olcModulePath為上面查詢得結(jié)果。
# vim memberof_config.ldifdn: cn=module,cn=configcn: moduleobjectClass: olcModuleListolcModuleLoad: memberofolcModulePath: /usr/lib/ldapdn: olcOverlay={0}memberof,olcDatabase={1}mdb,cn=configobjectClass: olcConfigobjectClass: olcMemberOfobjectClass: olcOverlayConfigobjectClass: topolcOverlay: memberofolcMemberOfDangling: ignoreolcMemberOfRefInt: TRUEolcMemberOfGroupOC: groupOfNamesolcMemberOfMemberAD: memberolcMemberOfMemberOfAD: memberOf
新建refint1.ldif。
# vim refint1.ldifdn: cn=module{1},cn=configadd: olcmoduleloadolcmoduleload: refint
新建refint2.ldif,同樣需要注意修改olcDatabase和上面查詢得db結(jié)果一致。
# vim refint2.ldifdn: olcOverlay={1}refint,olcDatabase={1}mdb,cn=configobjectClass: olcConfigobjectClass: olcOverlayConfigobjectClass: olcRefintConfigobjectClass: topolcOverlay: {1}refintolcRefintAttribute: memberof member manager owner
運(yùn)行下面命令,配置memberof模塊。
ldapadd -Q -Y EXTERNAL -H ldapi:/// -f memberof_config.ldif
運(yùn)行下面命令加載和配置refint模塊。
ldapmodify -Q -Y EXTERNAL -H ldapi:/// -f refint1.ldifldapadd -Q -Y EXTERNAL -H ldapi:/// -f refint2.ldif
先添加兩個節(jié)點(diǎn),分別用于存放用戶和用戶組。新建配置文件add_nodes.ldif。注意修改dn的值為你自己的。
# vim add_nodes.ldifdn: ou=people,dc=zhushurui,dc=cnobjectClass: organizationalUnitou: Peopledn: ou=groups,dc=zhushurui,dc=cnobjectClass: organizationalUnitou: Groups
執(zhí)行以下命令使得配置生效。注意修改dc,輸入密碼后執(zhí)行成功。
ldapadd -x -D cn=admin,dc=zhushurui,dc=cn -W -f add_nodes.ldif
添加一個用戶,首先生成用戶密碼。
slappasswd -h {SHA} -s my_secret_password
結(jié)果如下:
{SHA}M6XDJwA47cNw9gm5kXV1uTQuMoY=
新建配置文件add_user.ldif如下,添加用戶,特別注意修改你的dn。
# vim add_user.ldifdn: uid=john,ou=people,dc=zhushurui,dc=cncn: John DoegivenName: Johnsn: Doeuid: johnuidNumber: 5000gidNumber: 10000homeDirectory: /home/johnmail: [emailprotected]: topobjectClass: posixAccountobjectClass: shadowAccountobjectClass: inetOrgPersonobjectClass: organizationalPersonobjectClass: personloginShell: /bin/bashuserPassword: {SHA}M6XDJwA47cNw9gm5kXV1uTQuMoY=
執(zhí)行以下命令,添加用戶,需要修改dc和cn為你管理員的賬號,默認(rèn)情況只需要修改dc即可,然后輸入你的管理員密碼。
ldapadd -x -D cn=admin,dc=zhushurui,dc=cn -W -f add_user.ldif
新建配置文件add_group.ldif,添加用戶組,特別注意修改你的dn和member。
# vim add_group.ldifdn: cn=mygroup,ou=groups,dc=zhushurui,dc=cnobjectClass: groupofnamescn: mygroupdescription: All usersmember: uid=john,ou=people,dc=zhushurui,dc=cn
執(zhí)行以下命令,添加用戶組,同樣需要修改dc和cn。輸入密碼后添加成功。
ldapadd -x -D cn=admin,dc=zhushurui,dc=cn -W -f add_group.ldif
接下來查詢用戶,看是否已經(jīng)有memberof模塊配置了。
ldapsearch -x -LLL -H ldap:/// -b uid=john,ou=people,dc=zhushurui,dc=cn dn memberof
phpldapadmin可以用來管理ldap,執(zhí)行以下命令安裝軟件。
apt install phpldapadmin
這時候可以通過訪問http://ip/phpldapadmin/訪問,我們需要修改配置文件。
vim /etc/phpldapadmin/config.php
注意設(shè)置成以下幾個。第一條表示不給匿名用戶登錄,第二話設(shè)置只允許管理員登錄,第三句話修改登錄頁默認(rèn)填充的用戶名,第四句話讓phpldapadmin識別默認(rèn)的dn。
$servers->setValue("login","anon_bind",false);$servers->setValue("login","allowed_dns",array("cn=admin,dc=zhushurui,dc=cn"));$servers->setValue("login","bind_id","cn=admin,dc=zhushurui,dc=cn");$servers->setValue("server","base",array("dc=zhushurui,dc=cn"));
一開始先使用模板Generic: Organisational Unit新建People和Groups兩個節(jié)點(diǎn),分別用于新建用戶和用戶組。在Users下面新建用戶使用inetOrgPerson,在Groups下面新建用戶組使用groupOfNames就可以自動添加memberof模塊支持。也可以參考第四部分新增一個用戶模板,后續(xù)可以通過復(fù)制的形式新增用戶。
嘗試后不推薦用,好像字段不全等問題,執(zhí)行下列命令安裝。
apt install ldap-account-manager
訪問http://ip/lam即可登錄系統(tǒng)。然后根據(jù)下面的動圖完成初始化配置。初始化密碼是lam。
配置服務(wù)器設(shè)置。
配置賬號。
-- Write by PercyC
2021年12月14日
?
本文就為大家講解到這里,希望對大家有所幫助。
標(biāo)簽:














