在今天快節奏的數字世界中,追蹤用戶帳戶和訪問控制並不是一件容易的事情。但請不要擔心!OpenLDAP是解決您困擾的方案,它是一個廣泛使用的開源實現輕量級目錄訪問協議(LDAP)。
本教程將指導您如何在您的Ubuntu機器上設置OpenLDAP服務器的方方面面。告別分散的用戶數據,招呼集中管理、身份驗證和授權。
繼續閱讀以使您的用戶管理更加流暢,並簡化您的IT工作流程!
先決條件
本教程包含在設置OpenLDAP服務器方面的實踐演示。如果您希望跟隨進行,請確保您具有以下條件:
- 兩台運行Ubuntu 20.04或更新版本的機器(一台用於服務器,一台用於客戶端)。
- A non-root user with
sudo
privileges on both machines.
在Ubuntu上安裝OpenLDAP服務器 從確保系統就緒性開始,您現在將深入了解您的設置核心,安裝OpenLDAP服務器。在組織的網絡中管理用戶帳戶和訪問控制時,LDAP在服務器管理中具有重要意義。
從確保您的系統準備就緒開始,您現在深入了解您的設置的核心,安裝OpenLDAP伺服器。在伺服器管理中,LDAP佔有重要地位,尤其是在管理組織網絡內的用戶帳戶和訪問控制時。
要在您的系統上安裝OpenLDAP伺服器,請按照以下步驟進行:
? 在本指南中,您必須使用您的域名來替換ata.com。
1. 打開您的終端並執行以下命令來設置您的機器的主機名(例如,ldap.ata.com
)。此命令不會在終端中顯示任何輸出,但允許網絡上的其他設備識別您的機器。
2. 接下來,運行以下apt update
命令來更新您的系統的包索引。

3. 更新完成後,運行以下apt install
命令來安裝Apache網絡伺服器和必要的組件(PHP模塊)。這些組件對於OpenLDAP的正常運行是必需的。

4. 現在,執行此命令以安裝OpenLDAP伺服器和LDAP帳戶管理器(LAM),這是一個方便的基於網絡的管理工具。

5. 在安裝過程中提示時,為您的LDAP伺服器提供一個管理員密碼。

6. 安裝完成後,執行以下systemctl
命令以確認OpenLDAP伺服器(slapd
)的狀態
。

7. 最後,運行以下slapcat
命令以檢查LDAP數據庫內容。
A list of default schemas and configurations below indicates that OpenLDAP has been installed correctly.

使用UFW防火牆保護OpenLDAP伺服器安全
您已成功安裝您的OpenLDAP伺服器,但在它守護您的網絡之前,您必須加強其防禦。怎麼做?通過尋求UFW的幫助,這是Ubuntu可靠的默認防火牆。
配置UFW防火牆就像在您的城堡周圍設置一個數字護城河。您將根據需要定制防火牆以保護您的伺服器,只允許基本流量通過,並將數字掠奪者拒之門外。
為了確保您的OpenLDAP伺服器上的安全連接,您必須按照以下方式為OpenLDAP伺服器打開某些端口:
執行以下ufw
命令以允許
來自HTTP(80
)、HTTPS(443
)和LDAP(389
)端口的傳入流量。

現在,運行以下命令以檢查系統上UFW的當前狀態和配置的詳細概述。
下面的輸出確認您添加的防火牆規則已成功應用。

在Apache中啟用LAM的PHP支持
在使用UFW防火牆加強LDAP服務器的安全性之後,您必須確保Apache能夠有效地識別和處理PHP文件。這一關鍵步驟為Apache和LAM之間的無縫集成鋪平了道路,使您能夠高效地管理LDAP目錄。
要啟用Apache中的PHP支持,請執行以下操作:
1. 運行以下a2enconf
命令以啟用Apache的PHP通用網關接口(CGI)的配置文件。
這些配置文件通常包含與配置Apache的PHP相關的指令,例如設置處理程序或為PHP執行定義選項。通過啟用這些配置文件,您可以確保Apache正確配置以使用CGI接口處理PHP腳本。

2. 啟用後,執行以下命令以reload
Apache服務(apache2
)以應用更改。
此命令不輸出任何內容,但確保對Apache配置所做的任何修改生效。此過程包括在不重新啟動整個Apache服務的情況下啟用PHP CGI模塊。
3. 現在,調用此命令以檢查apache2
服務的status
,以確保一切運行順利。
輸出將顯示Apache Web服務器的當前狀態為active (running),沒有任何錯誤,如下所示。

設置LAM Web界面
在為LAM在Apache中啟用PHP支持之後,您現在專注於可以控制OpenLDAP服務器的集中式中心——LAM Web界面。此Web界面為像您這樣的管理員提供了一個直觀的平台,用於監督目錄服務。
要設置LAM Web界面,請按照以下步驟操作:
1. 運行以下ifconfig
命令以顯示您的網絡信息。
查找並記下您的服務器的IP地址(例如,192.168.1.7),通常由inet.表示。

2. 開啟您最喜愛的網頁瀏覽器,並導航至您的伺服器IP位址,然後在位址欄中輸入/lam(例如,http://192.168.1.7/lam)。這樣做會將您的瀏覽器重新導向至LAM的網頁介面,如下所示。

3. 在登入頁面上點擊LAM設定(右上角)以存取LDAP帳戶管理頁面(第四步)。

4. 現在,點擊編輯伺服器設定檔以修改您的LAM設定。

5. 在第二個登入頁面上輸入預設的lam密碼,然後點擊確定以進行驗證。

6. 登入後,在一般設定下配置以下伺服器和語言設定:
- 樹狀後綴 – 輸入您的目錄的基本區分名稱(DN),例如dc=ata,dc=com,並將其替換為您的實際網域組件。
- 預設語言 – 選擇您偏好的語言以供LAM網頁介面使用。
- 時區 – 選擇與您的伺服器位置相符的時區,這對於精確管理帳戶到期時間至關重要。

7. 向下滾動並使用以下設定安全性和設定檔密碼:
- 有效使用者清單 – 插入您的LDAP管理員使用者的DN,例如cn=admin,dc=ata,dc=com。
- 新密碼和重新輸入密碼 – 為LAM管理員帳戶創建並確認一個強密碼以替換初始的預設密碼。
- 保持其他設置為默認值,然後點擊保存以應用您的配置。保存後,您的瀏覽器將被重定向回登錄頁面。

在LAM中創建組和用戶
在您的LAM儀表板準備就緒後,您將專注於為一個有組織且安全的目錄結構打下基礎——組和用戶。在LAM中創建組和用戶就像將您的團隊組織成部門並為每個人發放他們的身份證件。
要在LAM中創建組和用戶,請執行以下操作:
1. 按照“設置LAM Web界面”部分的第三至五步導航到LDAP Account Manager。但這次,輸入您為OpenLDAP服務器新配置的密碼。
2. 在LAM Account Manager中,導航到帳戶類型選項卡以查看所有訪問類型選項。

3. 接下來,向下滾動並設置LDAP後綴,同時將<base_DN>(即dc=ata,dc=com)相應地替換如下:
- 用戶 – ou=部門,<base_DN>
- 組 – ou=組,<base_DN>
- 保留其他設置為默認值,然後點擊保存。
保存後,您的瀏覽器將被重定向到管理員登錄頁面(第四步)。

4. 現在,輸入您在安裝過程中設定的管理員密碼,然後點擊登入以存取您的OpenLDAP伺服器。

5. 當出現提示時,點擊建立以建立兩個遺失的後綴。

6. 建立後,點擊樹狀檢視(右上角)以查看新的LDAP後綴(部門和群組)以階層結構顯示,如下所示。

7. 接下來,點擊工具(右上角)並選擇OU編輯器以配置新的部門,如下:
- 父DN – 選擇部門 > ata > com作為父DN。此選項指定新部門將在您的LDAP目錄中建立的位置。
- 名稱 – 輸入IT(任意)作為部門(OU)名稱。
配置完成後,點擊確定以新增名為IT的新部門。

8. 現在,導航到群組標籤並點擊新建群組以建立新群組。
建立群組簡化了管理,促進了協作,執行了政策,並促進了組織的可擴展性。

9. 提供一個描述性的群組名稱(例如,我的IP群組),然後點擊儲存以確認新群組。

10. 群組建立後,導航到使用者標籤並點擊新建使用者以建立新使用者。
建立一個根據用戶的角色、部門或其他標準進行分組的強健框架至關重要。這個框架有助於管理資源訪問並促進組織內部的有效協作。

11. 接著,將用戶的個人信息設置如下:
- 從後綴下拉菜單中選擇IT > 部門 > ata > com,將用戶置於IT部門。
- 在左側窗格的個人選項卡下,在姓氏字段中輸入myituser(任意)。

12. 使用以下內容配置新用戶的憑證:
- 轉到左側窗格的Unix選項卡,並確保新創建的組名(即My IP Group)被設置為主要組。
- 點擊設置密碼,這將打開一個對話框,在其中您將為新用戶設置密碼(步驟13)。

13. 為新用戶提供一個安全的密碼,並點擊確定以確認。

14. 保持其他設置不變,點擊保存以完成新用戶帳戶的創建。

15. 重新訪問樹視圖以查看更新後的結構,包括新部門(IT)、組(My IP Group)和用戶帳戶(myituser)。

安裝和配置OpenLDAP客戶端
既然您已經設置了一個出色的伺服器,您需要一種方法來通過安裝和配置OpenLDAP客戶端與其交互。設置此客戶端對於實現跨網絡的集中式身份驗證和資源訪問至關重要。
將您的Ubuntu系統與LDAP目錄伺服器集成建立了統一的身份驗證機制,增強了安全性並簡化了用戶管理。
要安裝和配置OpenLDAP客戶端,請按照以下步驟操作:
1. 執行以下sh
命令,將OpenLDAP伺服器的名稱和IP地址添加到客戶機的/etc/hosts
文件中,允許基於名稱的通信。
請記住將192.168.1.7
和ldap.ata.com
替換為您的伺服器的IP地址和主機名。

2. 添加後,運行以下ping
命令以檢查您的系統與OpenLDAP伺服器之間的連接(ldap.ata.com
)。
下面的輸出確認客戶機可以使用指定的IP地址和主機名成功與OpenLDAP伺服器通信。

3. 接下來,運行以下命令以更新
您的包列表並安裝
以下必要的OpenLDAP客戶端包:
libnss-ldap
– 使您的系統能夠使用LDAP進行常見配置數據庫。libpam-ldap
– 允許系統對LDAP目錄進行驗證。ldap-utils
– 提供用於管理LDAP目錄條目的命令行工具。nscd
– 緩存NSS查找,通過減少對LDAP服務器的查詢來提高性能。
在安裝過程中,您將收到一系列提示,以配置OpenLDAP客戶端(步驟四)。

4. 現在,在LDAP服務器統一資源標識符字段中輸入ldap://192.168.1.7,這將導向客戶端到您的OpenLDAP服務器。

5. 輸入搜索基礎的DN(即dc=ata,dc=com)以進行LDAP操作。

6. 選擇3作為要使用的LDAP版本,以增強安全性和功能。

7. 接下來,選擇是以授予root用戶數據庫管理員權限。

8. 之後,選擇否以禁用LDAP數據庫登錄進行root帳戶管理。

9. 輸入root的LDAP帳戶(即cn=admin,dc=ata,dc=com)。此配置指定用於管理LDAP的管理帳戶。

10. 提供一個強大的LDAP根帳戶密碼(管理員密碼)。

11. 客戶端配置完成後,在您喜歡的編輯器(例如nano
或vim
)中打開/etc/nsswitch.conf文件,以配置系統的名稱服務交換機。
此文件決定了系統查找用戶帳戶、組、主機和服務等內容的順序。
12. 在/etc/nsswitch.conf文件中更改以下行的值,包括以下內容:
compat
– 指的是本地文件,如/etc/passwd。
ldap
– 指定使用LDAP。
此配置允許使用LDAP用戶身份驗證和其他系統功能
passwd: compat systemd ldap
group: compat systemd ldap
shadow: compat

13. 現在,打開/etc/pam.d/common-password文件,找到並刪除use_authtok選項,如下所示,保存更改並關閉文件。
此操作允許您調整PAM密碼設置以使用用戶提供的密碼。

14. 此外,打開/etc/pam.d/common-session文件,添加以下行並保存並關閉文件。
用戶登錄時,此配置會自動創建主目錄以確保用戶主目錄以正確的權限創建。

15. 最後,運行以下命令以重新啟動
名稱服務緩存守護進程(nscd
)並應用配置更改。
檢查您的OpenLDAP設置
隨著一切就緒,您必須確保您的OpenLDAP服務器和客戶端配置按預期工作。您將進行測試以確認您的LDAP目錄可訪問,用戶可以成功進行身份驗證,並且數據正確地被檢索和更新。
為了確保您的OpenLDAP服務器和客戶端設置的完整性和功能性,執行以下操作:
執行以下ldapsearch
命令以查詢您的LDAP目錄中的所有用戶帳戶。
您將看到類似以下的輸出,列出了每個用戶的詳細信息。這個輸出表明OpenLDAP服務器正確響應了您的搜索查詢。

最後,嘗試登錄(su
)到myituser
用戶帳戶。
成功登錄表明對OpenLDAP服務器的身份驗證按預期工作。
? 成功的登錄消息可能不總是顯示;相反,您可能只是登錄並呈現了一個新的命令提示符,如下所示。如果有任何錯誤,它們將被顯示,並且您將保持以當前用戶登錄。

結論
您做到了!您的Ubuntu服務器現在擁有一個完全運作的OpenLDAP系統,具有安全的防火牆、啟用了PHP的Web服務器以及一個時尚的LDAP Account Manager界面。
群組和使用者帳戶已設置完成,您的OpenLDAP客戶端已準備好連接。因此,您可以對您的伺服器效能充滿信心。
現在,花點時間瀏覽全面的OpenLDAP官方文件頁面,其中包含了寶貴的提示和技巧。另外,為什麼不考慮學習如何備份和恢復您的OpenLDAP伺服器,以確保您的使用者帳戶和設置的安全性?