如何使多台计算机上的用户帐户保持一致?


16

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

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

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

如何才能在所有计算机上平均设置用户帐户?我希望名称,长名,密码和UID保持一致。

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

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

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

有什么好的方法呢?


1
您应该将所有用户设置为ldap用户。
拉梅什(Ramesh)2014年

1
@Ramesh这是否意味着用户只能在存在网络连接时登录?
Martin Ueding 2014年

是的 您可能需要网络连接ldap才能正常工作。但这省去了在所有计算机上设置用户的痛苦。
Ramesh 2014年

是否有一台机器始终处于打开状态并可以通过网络访问?要更改密码时,是否有一台机器始终处于打开状态并可以访问?
吉尔斯(Gillles)“所以-别再邪恶了”

1
@ramesh您可以使用SSSD拥有离线LDAP 。
帕特里克

Answers:


14

您基本上有2个选择。

  1. 使用每台机器的本地身份验证系统,并对所有机器进行凭据更改。
  2. 使用集中式身份验证服务器。

1.同步本地认证

有多种产品可以轻松完成此任务。PuppetChefAnsibleSalt是一些较常见的。所有这些工具都属于所谓的“ 配置管理 ”。

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

由于您说过也要进行其他类型的配置,因此这可能是更合适的解决方案。

2.集中认证

集中身份验证的最常见形式是LDAP。运行LDAP服务器似乎令人生畏,但是有一些打包好的解决方案,例如FreeIPA,使其易于管理。

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

3.两者的结合

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


非常感谢您,这应该给我足够的起点!:-)
Martin Ueding 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.