40.4. IdM 主机和用户的注册和身份验证:比较
IdM 中的用户和主机之间存在许多相似性,其中一些可以在注册阶段观察到,也可以在部署阶段观察到与身份验证有关的相似之处。
注册阶段(用户和主机注册):
-
管理员可以在用户或主机实际加入 IdM 之前为用户和主机创建 LDAP 条:对于预发布(stage)用户,命令是
ipa stageuser-add
;对于主机,命令是ipa host-add
。 -
在主机上执行
ipa-client-install
命令时会创建一个包含 密钥表(key table,简称为 keytab)和对称密钥(在一定程度上与用户密码相同)的文件,从而使主机可以加入 IdM 域。在逻辑上,要求用户在激活其帐户时创建一个密码,因此才可以加入 IdM 域。 - 虽然用户密码是用户的默认身份验证方法,但 keytab 是主机的默认身份验证方法。keytab 存储在主机上的文件中。
表 40.1. 用户和主机注册 操作 用户 主机 预注册
$ ipa stageuser-add user_name [--password]
$ ipa host-add host_name [--random]
激活帐户
$ ipa stageuser-activate user_name
$ ipa-client install [--password] (必需在主机本身上运行)
-
管理员可以在用户或主机实际加入 IdM 之前为用户和主机创建 LDAP 条:对于预发布(stage)用户,命令是
部署阶段(用户和主机会话身份验证):
- 当用户启动新会话时,用户使用密码进行身份验证;类似地,在开机时,主机会通过其 keytab 文件进行身份验证。系统安全服务守护进程 (SSSD) 在后台管理此过程。
- 如果身份验证成功,用户或主机会获得 Kerberos 票据授予票(TGT)。
- 然后,使用 TGT 获取特定服务的特定票据。
表 40.2. 用户和主机会话身份验证 用户 主机 默认身份验证方式
密码
keytabs
启动会话(普通用户)
$ kinit user_name
[switch on the host]
身份验证成功的结果
用于获取特定服务访问权限的 TGT
用于获取特定服务访问权限的 TGT
TGT 和其他 Kerberos 票据作为服务器定义的 Kerberos 服务和策略的一部分生成。IdM 服务会自动授予 Kerberos ticket、更新 Kerberos 凭证甚至销毁 Kerberos 会话。
IdM 主机的替代身份验证选项
除了 keytabs 外,IdM 还支持两种其他类型的机器验证:
- SSH 密钥。主机的 SSH 公钥已创建并上传到主机条目。从那里,系统安全服务守护进程 (SSSD) 使用 IdM 作为身份提供程序,并可与 OpenSSH 和其他服务一起引用位于 IdM 中的公钥。
- 计算机证书。在这种情况下,计算机使用由 IdM 服务器的证书认证机构签发的 SSL 证书,然后存储在 IdM 的目录服务器中。证书然后发送到计算机,当它向服务器进行身份验证时会存在该证书。在客户端上,证书由名为 certmonger 的服务管理。