LDAP基礎
LDAP的歷史
LDAP v1 在 1994年3月由密西根大學發布,當初設計是為了作為訪問X.500目錄的輕型方法,但是后來逐漸發展成提供存取目錄能力.
LDAP v2 在1995年3月發布,在1996年4月,包含Microsoft,Netscape等40多家企業宣布支持LDAP,因此LDAP得到極大的推廣.
LDAP v3 也是現在使用的版本,是在1997年12月發布,在信息模塊,命名模板,功能模型,安全模型等等方面均有加強.
LDAP是什么,干什么用?
LDAP是Lightweight Directory Access Protocol的縮寫,中文意思是目錄服務的協議,并且以樹狀結構來存儲數據.
主要用來存儲企業人員信息和組織架構,進行統一認證管理.
同時可以與第三方應用集成,實現針對企業內部的人員或部門訪問權限管理.
LDAP主要解決的問題?
- 企業人員權限與賬戶安全管理.
- 企業內部的數據,應用,資源的訪問權限管理.
- 人員信息集中管理.
- 解決企業人員流動權限變更不及時
1 導致企業數據丟失
2 應用訪問權限外泄
3 重要文件泄露.
LDAP目錄數據結構
數據傳輸安全
在LDAP中提供了基于SSL/TLS的通訊安全保障。SSL/TLS是基于PKI信息安全技術,是當前Internet上廣泛采用的安全服務。LDAP通過StartTLS方式啟動TLS服務,可以提供通訊中的數據保密性、完整性保護;通過強制客戶端證書認證的TLS服務,同時可以實現對客戶端身份和服務器端身份的雙向驗證。
LDAP 屬性(Attribute)
屬性 | 解釋 |
---|---|
CN | 人名或者組名 |
OU | 組織單位 |
O | 組織名稱 |
DC | 域名 |
UID | 用戶登入名 |
C | 國家名稱 |
ST | 省的名稱 |
LDAP VS AD
LDAP與MS-AD的關系
一個公式就可以表達
Active Directory = LDAP服務器+LDAP應用(Windows域控)
Active Directory先實現一個LDAP服務器,然后自己先用這個LDAP服務器實現了自己的一個具體應用(域控).
第一手的用戶體驗
經過多年的使用體驗,不同公司的歷練.做了簡單的對比具體如下
LDAP | MS-AD | |
---|---|---|
操作體驗 | 繁瑣 | 簡單 |
支持IT系統數量 | 多 | 少 |
系統穩定性 | 低 | 高 |
集成IT系統難度 | 高 | 低 |
費用 | 免費 | 貴的要死 |
最喜歡用的團隊 | 技術團隊 | 老板/IT |
Best Practices for LDAP
OPENLDAP主要應用場景
遇到煩惱
公司有很多IT系統,例如:企業郵箱,github,jenkins,grafna,zabbix,vpn,HR系統,用友,金蝶,文件系統,aws,aliyun,cmdb,jira,confluence....等等.
在新員工入職時,要做的惡心事情.
- 要根據員工的職位,確認開通IT系統的權限.
- 在對應的IT系統中添加賬戶,設置密碼.
- 各種渠道通知到新員工,IT系統權限和IT系統訪問地址.
在老員工離職時,上面的事又要做一遍.
在正常工作時,很多員工因各種奇葩原因忘記密碼,來找你重置,修改.
在員工升職,調換崗位.又是一通修改和刪除.
有木有很崩潰?這還不夠,一個員工需要手動操作N次,每天會有0-N個員工,如果出現誤操作,導致數據泄露.這口鍋直接背起.有木有感覺不會再愛了.
改變(解決方案)
說了那么多痛點,其實解決方案很簡單,有個認證管理中心就可以解決了.那就是LDAP
人員部門目錄結構設計(最佳實例)
OpenLDAP的主主同步
企業身份認證中心,sla很重要,一定要做高可用.
環境:
node1: 192.168.1.1
node2: 192.168.1.2
node1 配置:
index objectclass,entryCSN,entryUUID eq
overlay syncprov
syncprov-checkpoint 100 10
syncprov-sessionlog 100
serverID 1
syncrepl rid=yufu
provider=ldap://192.168.1.2
bindmethod=simple
binddn="cn=admin,dc=yufuid,dc=com"
credentials=123456
searchbase="dc=yufuid,dc=com"
schemachecking=off
type=refreshAndPersist
retry="60 +"
mirrormode on</pre>
node2 配置:
vim /etc/openldap/alapd.conf
index objectclass,entryCSN,entryUUID eq
overlay syncprov
syncprov-checkpoint 100 10
syncprov-sessionlog 100
serverID 2
syncrepl rid=yufu
provider=ldap://192.168.1.1
bindmethod=simple
binddn="cn=admin,dc=yufuid,dc=com"
credentials=123456
searchbase="dc=yufuid,dc=com"
schemachecking=off
type=refreshAndPersist
retry="60 +"
mirrormode on</pre>
擴展知識:
X500協議:
該標準旨在擁有一個分布全球的目錄,并且帶有標準訪問接口。X.500目錄標準極其復雜。
作為其設計操作平臺的OSI網絡協議也比現在通常使用的傳輸控制協議,Internet 協議(TCP/IP)套件復雜得多。
X.500標準最初由CCITT于1990 年作為《X.500藍皮書建議》發布并由ISO于1991年作為《ISO / IEC 9594:目錄》發布。從那時起,X.500已經得到發展和增強,并在1993年和1997年兩次更新。