Users

如何在多台機器上保持使用者帳戶一致?

  • January 24, 2021

我現在有一個執行 Debian Wheezy 的樹莓派。我有幾台機器(4 台物理機,2 台虛擬機)坐在這裡,我想統一這些機器上的使用者帳戶。

我執行的機器上安裝了以下 Debian 衍生產品:

  • Debian Wheezy (armhf)
  • Debian 穩定版 (amd64)
  • Debian 不穩定 (amd64)
  • Ubuntu 14.04 (amd64)

我怎樣才能在所有機器上平等地設置使用者帳戶?我希望名稱、長名稱、密碼和 UID 一致。

以後想統一其他部分的配置,也許

  • 宏達神鷹
  • 掛載點 (Samba)
  • /etc/apt/sources.list
  • 無人值守更新

由於我使用不同的 Ubuntu 和 Debian 變體,它們sources.list會有所不同,但在每個發行版上都是相同的。

對此有什麼好的方法?

你基本上有2個選擇。

  1. 使用每台機器的本地認證系統,並將憑證更改推送到所有機器。
  2. 使用集中式身份驗證伺服器。

1.同步本地認證

有多種產品可以輕鬆做到這一點。PuppetChefAnsibleSalt是一些比較常見的。所有這些工具都屬於所謂的“配置管理”。

基本上,您將擁有一個儲存庫,您可以在其中將身份驗證憑據定義為程式碼。“程式碼”將與指定使用者名和散列密碼的指令一樣簡單。然後,您將此程式碼​​同步到您的所有機器,並執行您選擇的任何 CM 工具。然後,CM 工具將更新每個使用者的本地身份驗證憑據(必要時還會創建使用者)。

既然你說你也想做其他類型的配置,這可能是更合適的解決方案。

2.集中認證

最常見的集中式身份驗證形式是 LDAP。執行 LDAP 伺服器可能看起來令人生畏,但有一些很好的打包解決方案(例如FreeIPA)使其易於管理。

現在您的第一個想法可能是:“即使中央伺服器關閉,我也希望身份驗證能夠正常工作”。這可以通過使用SSSD輕鬆完成。當使用者第一次登錄伺服器時,SSSD 會查詢 LDAP(或 kerberos,如果使用的話),如果憑據有效,它會將它們記憶體在本地電腦上。如果 LDAP 伺服器不可用,它會回退到使用其記憶體。因此,只要使用者登錄過一次,如果 LDAP 不可用,他們將能夠繼續登錄。

3.兩者結合

您也可以結合使用這兩種解決方案。這在大型企業環境中很常見,但也可以小規模使用。基本上,您將擁有一個集中式身份驗證伺服器,並且您將使用 CM 工具來配置客戶端以使用它。

引用自:https://unix.stackexchange.com/questions/141023