Linux
具有現有本地帳戶的 Linux 目錄伺服器
我有大約 50 台伺服器混合執行 RHEL 和 CentOS,它們都使用本地身份驗證。我們將最終將這些置於單個單元的控制之下,並且我們在這些系統中擁有大量本地帳戶。我不確定我是想從我們現有的 Active Directory 中驗證 LDAP 還是使用 CentOS Directory Server 之類的東西,但無論哪種方式.. 我可以將中央帳戶映射到這些系統上的不同本地帳戶嗎?我真的不想擔心更改任何現有權限或任何東西。
假設我在 3 個不同的系統上有 joeuser1,他有不同的 UID,他的組在每個系統上都有不同的 GID。有沒有辦法將它們與中央身份驗證聯繫在一起?
如果您決定在整個組織中同步 uids/gids,這對您自己有好處,整體維護工作會容易得多。
並且可以以相對無痛的方式實現:
創建或配置您的中央目錄
決定您想使用的 uid/gid 空間(確保它不與您現在使用的任何內容重疊,並且不要重新映射僅對主機本地的 uid - 系統和守護程序帳戶等)
為您的每台機器安排維護休息時間
在重新映射使用者後準備一個腳本來重置所有權;像這樣的東西曾經對我有用:
find /path/to/what/has/to/be/preserved -printf "chown -c %u:%g \"%h/%f\"\n" > preserve
切換到新的目錄服務
刪除或重新映射 /etc/passwd 和 /etc/group 的非系統部分
通過執行生成的腳本來恢復文件/目錄的所有權(sh preserve 會做)
沖洗,重複,獲利!
筆記:
- 生成的腳本根本沒有效率,因為它正在逐個更改所有權;但這應該是對總體構想的一個很好的展示。
- 如果您有任何 suid/sgid 二進製文件和目錄,請將它們也記錄在腳本中,例如將 printf 子句更改為 “chown -c %u:%g "%h/%f"\nchmod -c %m "%h/%f"\n”