如何在多台机器上保持用户帐户一致?

如何在多台机器上保持用户帐户一致?

我现在有一个运行 Debian Wheezy 的 Raspberry Pi。我有几台机器(4 台物理机,2 台虚拟机),我想统一这些机器上的用户帐户。

我运行的机器上安装了以下 Debian 衍生版本:

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

如何在所有计算机上平等地设置用户帐户?我希望名称、长名称、密码和 UID 一致。

将来我想统一其他部分的配置,也许

  • HTCondor
  • 挂载点 (Samba)
  • /etc/apt/sources.list
  • 无人值守更新

由于我使用不同的 Ubuntu 和 Debian 变体,因此sources.list会略有不同,但在每个发行版上都是相同的。

对此有什么好的方法吗?

答案1

你基本上有两个选择。

  1. 使用每台计算机的本地身份验证系统,并将凭据更改推送到所有计算机。
  2. 使用集中式身份验证服务器。

1.同步本地认证

有多种产品可以轻松实现这一点。木偶,厨师,安西布尔, 和是一些比较常见的。所有这些工具都属于所谓的“配置管理”。

基本上,您将拥有一个存储库,您可以在其中将身份验证凭据定义为代码。 “代码”就像指定用户名和散列密码的指令一样简单。然后,您可以将此代码同步到所有计算机,并运行您选择的任何 CM 工具。然后,CM 工具将更新每个用户的本地身份验证凭据(如有必要,还会创建用户)。

既然您说您还想进行其他类型的配置,那么这可能是更合适的解决方案。

2. 集中认证

最常见的集中式身份验证形式是 LDAP。运行 LDAP 服务器可能看起来令人畏惧,但有一些很好的打包解决方案,例如自由IPA这使得它易于管理。

现在,您的第一个想法可能是:“即使中央服务器关闭,我也希望身份验证能够正常工作”。这可以通过使用轻松完成固态硬盘。当用户首次登录服务器时,SSSD 会查询 LDAP(或 kerberos,如果使用的话),如果凭据有效,则会将其缓存在本地计算机上。如果 LDAP 服务器不可用,它将转而使用其缓存。因此,只要用户登录过一次,即使 LDAP 不可用,他们也可以继续登录。

3. 两者的结合

您还可以结合使用这两种解决方案。这在大型企业环境中非常常见,但也可以小规模使用。基本上,您将拥有一个集中式身份验证服务器,并且您将使用 CM 工具来配置客户端以使用它。

相关内容