首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用AD/Kerberos进行身份验证/授权的Linux服务器是否需要计算机帐户?

使用AD/Kerberos进行身份验证/授权的Linux服务器是否需要计算机帐户?
EN

Server Fault用户
提问于 2016-02-20 02:23:09
回答 3查看 5K关注 0票数 6

我对使用Active Directory (AD)和Kerberos的Linux服务器是否需要创建计算机帐户感到困惑?

Linux服务器作为一台机器是否需要加入AD域,并在此过程中拥有一个计算机帐户以获得来自AD的身份验证/授权服务?

以下是一些要求:

  • 能够使用来自Linux服务器的AD进行基于用户和组成员的身份验证。
  • 能够将本地linux /GID编号映射到AD用户名和组名(今天我们使用的是非AD服务器,我们为用户和组帐户保留UID/GID号。理想情况下,我想继续这种做法)。
  • 能够将linux Sudoer权限映射到AD组。
  • 使用开源或社区工具/插件,比如SSSD,而不是像Centrify这样的付费商业产品。

我担心在AD中为基于私有云的服务器创建/删除大量linux计算机帐户的痛苦,这些服务器可能不会出现那么长时间;但我想知道使用AD的中央用户帐户存储的好处。

注:我使用的是RHEL和CentOS6-7 linux服务器和Windows 2012,AD在2008R2功能级别。

EN

回答 3

Server Fault用户

回答已采纳

发布于 2018-04-12 04:36:24

这里有两个不同的考虑因素:

1)认证(密码验证)

2)授权(身份映射/组成员资格等)

为客户:

您可以通过来自匿名客户端的Kerberos进行身份验证(密码检查)(没有域-连接/主机-creds)。但是,如果没有主机-creds (/etc/krb5.keytab),您就失去了进行GSSAPI、SSO和KDC验证的能力。

为了获得授权,您需要能够对AD进行LDAP绑定/查找。通常,AD不允许匿名LDAP绑定,因此需要某种类型的客户端凭据。显式创建和维护的服务帐户或主机-creds(由域连接创建/维护)。

在ldap.conf或sssd.conf文件中,您可以列出显式服务帐户creds,或者告诉它使用主机creds。如果在sssd中使用了“ad”id_provider,那么您就可以获得诸如自动主机信誉维护等优势。

请注意,如果您想在授权服务中使用AD,则需要将rfc2307样式信息(EG、uidNumber、gidNumber等)添加到您希望在Unix/Linux客户端上使用的每个用户帐户中。

对于服务器:

如果他们要提供任何基于Kerberized的服务,那么他们必须拥有主机creds(被域连接),并在AD的计算机帐户中拥有有效的UPN/SPN记录。把AD看作是提供Kerberos功能。

例如:

如果您有一个KerberizedNFSv4文件服务器,那么不仅需要一个"host/F.Q.D.N“SPN,还需要帐户中的"nfs/F.Q.D.N”SPN &服务器上的krb5.keytab文件。

票数 1
EN

Server Fault用户

发布于 2016-02-20 02:24:11

是的,他们需要电脑帐户。这些都是通过“加入”域的行为来创建的。

(想一想Centrify,Powerbroker等等,尽管这里的具体产品推荐是不允许的。)

特别是Active Directory将不允许您在任何情况下身份验证,如果您没有帐户,无论您是计算机还是用户。

编辑:只是想澄清-如果你打算验证服务器本身,那么他们需要计算机帐户。如果您只打算对登录到这些服务器的用户进行身份验证,那么理论上您只能拥有用户帐户,如果您的PAM配置的方式仅允许提供用户名和密码的用户通过对AD的检查而登录。

票数 3
EN

Server Fault用户

发布于 2016-02-20 08:38:07

对于SSSD,它取决于配置。使用id_provider=ad是的,您需要使用realmd加入域。但是,如果您不想加入域,没有什么可以阻止您使用id_provider=ldap。如果您自己配置SID,即使ID映射也能工作。

票数 3
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/758544

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档