ldap

輕型目錄訪問協議(英文:Lightweight Directory Access Protocol,縮寫:LDAP)是一個開放的,中立的,工業標準的應用協議,通過IP協議提供訪問控制和維護分佈式信息的目錄信息。

OpenLDAP是輕型目錄訪問協議(Lightweight Directory Access ProtocolLDAP)的自由和開源的實現,在其OpenLDAP許可證下發行,並已經被包含在衆多流行的Linux發行版中。

LDAP協議的好處就是你公司的所有員工在所有這些工具裏共享同一套用戶名和密碼,來人的時候新增一個用戶就能自動訪問所有系統,走人的時候一鍵刪除就取消了他對所有系統的訪問權限,這就是LDAP。

參考文檔:https://segmentfault.com/a/1190000014683418

安裝openldap

yum -y install openldap openldap-servers openldap-clients openldap-devel compat-openldap openldap-servers-sql migrationtools

查看版本

slapd -V

[root@test ~]# slapd -V

@(#) $OpenLDAP: slapd 2.4.44 (May 16 2018 09:55:53) $

[email protected]:/builddir/build/BUILD/openldap-2.4.44/openldap-2.4.44/servers/slapd

配置openldap

注意:從OpenLDAP2.4.23版本開始所有配置數據都保存在/etc/openldap/slapd.d/中,不再使用slapd.conf作爲配置文件。

設置openldap的管理員密碼:

[root@test slapd.d]# slappasswd -s admin@123

{SSHA}ptUSB1Mt+E4EvtscPolhiwLIICTLg1yN

上述加密後的字段保存下,等會我們在配置文件中會使用到。

修改olcDatabase={2}hdb.ldif文件

cd /etc/openldap/slapd.d/cn=config/

vim olcDatabase\=\{2\}hdb.ldif

修改域信息

olcSuffix: dc=jinni,dc=com

olcRootDN: cn=root,dc=jinni,dc=com

olcRootPW: {SSHA}ptUSB1Mt+E4EvtscPolhiwLIICTLg1yN

注意:冒號後面一定加空格,其中cn=root中的root表示OpenLDAP管理員的用戶名,而olcRootPW表示OpenLDAP管理員的密碼。

修改olcDatabase={1}monitor.ldif文件

vim olcDatabase\=\{1\}monitor.ldif

image.png

注意:該修改中的dn.base是修改OpenLDAP的管理員的相關信息的。

驗證OpenLDAP的基本配置,使用如下命令:

slaptest -u

image.png

通過上圖,我們可以很明顯的看出OpenLDAP的基本配置是沒有問題。

啓動OpenLDAP服務

chown ldap:ldap -R /var/lib/ldap/

chmod 700 -R /var/lib/ldap/

注意:如果不給執行權限,ldap無法啓動

如果無法啓動ldap服務,查看是否ldap進程已經存在,如果存在需要kill掉ldap進程,然後在啓動服務

systemctl enable slapd

systemctl start slapd

配置ldap數據庫

這裏使用mysql最爲ldap的後端數據庫

注意:我這裏使用的mysql數據庫是單獨的一臺節點,沒有放在ldap節點上

yum -y install mysql 

創建ldap所需要的數據庫

create database ldap;

grant all privileges on ldap.* to 'ldap'@'%' identified by 'Admin@123';

flush privileges;

依次導入測試數據庫

cd  /usr/share/doc/openldap-servers-sql-2.4.44/rdbms_depend/mysql

[root@test mysql]#mysql -h 192.168.10.10 -uroot -pAdmin@123 ldap  < backsql_create.sql

[root@test mysql]# mysql -h 192.168.10.10 -uroot -pAdmin@123 ldap  < testdb_create.sql

[root@test mysql]# mysql -h 192.168.10.10 -uroot -pAdmin@123 ldap  < testdb_data.sql

[root@test mysql]# mysql -h 192.168.10.10 -uroot -pAdmin@123 ldap  < testdb_metadata.sql

配置ODBC

在ldap節點安裝數據庫驅動程序,配置連接數據庫

yum -y install mysql-connector-odbc

vim /etc/odbc.ini

[ldap]

description=ldap for mysql

driver=MYSQL

database=ldap

server=192.168.10.9

user=ldap

password=Admin@123

port=3306

驗證是否連接成功:

isql -v ldap

-v: 打印isql的版本號和版權消息

或者:isql ldap_dbname [openldap賬號] [openldap密碼]

isql ldap  ldap Admin@123

image.png

連接成功


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