JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris 11.1 管理:安全服务     Oracle Solaris 11.1 Information Library (简体中文)
search filter icon
search icon

文档信息

前言

第 1 部分安全性概述

1.  安全性服务(概述)

第 2 部分系统、文件和设备安全性

2.  管理计算机安全性(概述)

3.  控制对系统的访问(任务)

4.  病毒扫描服务(任务)

5.  控制对设备的访问(任务)

6.  使用 BART 验证文件完整性(任务)

7.  控制对文件的访问(任务)

第 3 部分角色、权限配置文件和特权

8.  使用角色和特权(概述)

9.  使用基于角色的访问控制(任务)

10.  Oracle Solaris 中的安全属性(参考信息)

第 4 部分加密服务

11.  加密框架(概述)

12.  加密框架(任务)

13.  密钥管理框架

第 5 部分验证服务和安全通信

14.  使用可插拔验证模块

15.  使用 安全 Shell

16.  安全 Shell(参考信息)

17.  使用简单验证和安全层

18.  网络服务验证(任务)

第 6 部分Kerberos 服务

19.  Kerberos 服务介绍

20.  规划 Kerberos 服务

21.  配置 Kerberos 服务(任务)

22.  Kerberos 错误消息和故障排除

23.  管理 Kerberos 主体和策略(任务)

24.  使用 Kerberos 应用程序(任务)

25.  Kerberos 服务(参考信息)

Kerberos 文件

Kerberos 命令

Kerberos 守护进程

Kerberos 术语

特定于 Kerberos 的术语

特定于验证的术语

票证类型

票证生命周期

Kerberos 主体名称

Kerberos 验证系统的工作原理

Kerberos 服务如何与 DNS 和 nsswitch 服务交互

使用 Kerberos 获取服务访问权限

获取用于票证授予服务的凭证

获取服务器凭证

获取对特定服务的访问权限

使用 Kerberos 加密类型

使用 gsscred

Oracle Solaris Kerberos 和 MIT Kerberos 之间的显著差异

第 7 部分在 Oracle Solaris 中审计

26.  审计(概述)

27.  规划审计

28.  管理审计(任务)

29.  审计(参考信息)

词汇表

索引

Kerberos 术语

以下章节介绍 Kerberos 的术语及其定义。整个 Kerberos 文档中使用了这些术语。要掌握 Kerberos 概念,必须先了解这些术语。

特定于 Kerberos 的术语

要管理 KDC,您需要了解本节中介绍的术语。

密钥分发中心 (Key Distribution Center, KDC) 是负责颁发凭证的 Kerberos 组件。这些凭证是使用 KDC 数据库中存储的信息创建的。每个领域至少需要两个 KDC:一个主 KDC,以及至少一个从 KDC。所有 KDC 都可生成凭证,但仅有主 KDC 才能处理对 KDC 数据库所做的任何更改。

存储文件包含 KDC 的主密钥。当重新引导服务器以在启动 kadmindkrb5kdc 命令之前自动验证 KDC 时,将使用此密钥。因为该文件包含主密钥,因此,该文件及其所有备份都应安全保存。该文件以 root 的只读权限创建。为确保文件安全,请勿更改其权限。如果该文件遭破坏,可以使用密钥访问或修改 KDC 数据库。

特定于验证的术语

要了解验证过程,您需要知道本节中介绍的术语。程序员和系统管理员应该熟悉这些术语。

客户机是在用户工作站上运行的软件。在客户机上运行的 Kerberos 软件将在此过程中发出许多请求。因此,区分该软件的操作和用户的操作非常重要。

术语 serverservice 可以互换使用。具体而言,术语服务器用于定义运行 Kerberos 软件的物理系统。术语服务对应于服务器上支持的特定功能(如 ftpnfs)。文档通常会将服务器描述为服务的一部分,但此定义混淆了这些术语的含义。因此,术语 server 是指物理系统。术语 service 是指软件。

Kerberos 产品使用两种类型的密钥。一种类型是口令派生的密钥。口令派生的密钥分配给每个用户主体,且仅为用户和 KDC 所知。Kerberos 产品使用的另一种密钥类型是随机密钥,它与口令无关,因此不适合用户主体使用。随机密钥通常用于在密钥表中具有相应项并具有 KDC 生成的会话密钥的服务主体。服务主体可以使用随机密钥,因为服务可以访问密钥表中允许其以非交互方式运行的密钥。会话密钥由 KDC 生成,并在客户机和服务之间共享,可用于在两者之间提供安全事务。

票证是一种信息包,用于将用户身份安全地传递到服务器或服务。一个票证仅对一台客户机以及某台特定服务器上的一项特殊服务有效。票证包含:

所有此类数据都使用服务器的服务密钥进行加密。请注意,KDC 可颁发嵌入在如下所述的凭证中的票证。颁发后的票证可重复使用,直到过期。

凭证是一种信息包,包含票证和匹配的会话密钥。凭证使用请求主体的密钥进行加密。通常,KDC 会生成凭证以响应客户机的票证请求。

验证者是服务器用于验证客户机用户主体的信息。验证者包含用户的主体名称、时间戳和其他数据。与票证不同,验证者只能使用一次,通常在请求访问服务时使用。验证者使用客户机和服务器共享的会话密钥进行加密。通常,客户机会创建验证者,并将其与服务器或服务的票证一同发送,以便向服务器或服务进行验证。

票证类型

票证具有可管理其使用方式的属性。这些属性在创建票证时指定,但之后亦可修改。例如,可将票证从 forwardable 改为 forwarded。可以使用 klist 命令查看票证属性。请参见查看 Kerberos 票证

以下一个或多个术语对票证进行了描述:

Forwardable(可转发)/forwarded(已转发)

可转发票证可以从一台主机发送到另一台主机,从而使客户机无需对自身进行重新验证。例如,如果用户 david 在用户 jennifer 的计算机上时获取了一张可转发票证,则前者可登录到自己的计算机,不必获取新的票证(从而对自身进行重新验证)。有关可转发票证的示例,请参见示例 24-1

Initial(初始)

初始票证是一种直接颁发的票证,而并非基于票证授予票证的票证。某些服务(如用于更改口令的应用程序)可能会要求将票证标记为初始,以便向这些程序本身确保客户机可知道其密钥。初始票证表明客户机最近已进行了自我验证,而并非依赖于已长期使用的票证授予票证。

Invalid(无效)

无效票证是一个尚不可用的以后生效票证。应用服务器会拒绝无效票证,直到其通过验证为止。要进行验证,必须在票证开始时间已过之后由客户机将设置了 VALIDATE 标志的票证放置在票证授予服务请求的 KDC 中。

Postdatable(可以后生效)/postdated(以后生效)

以后生效的票证是一种在其创建之后的某个指定时间之前不会生效的票证。例如,此类票证对于计划在深夜运行的批处理作业非常有用,因为如果该票证被盗,则在运行批处理作业之前无法使用该票证。颁发以后生效的票证时,该票证尚未生效,且在其开始时间已过且客户机请求 KDC 进行验证之前一直保持此状态。通常,以后生效的票证在票证授予票证的截止时间之前会一直有效。但是,如果将以后生效的票证标记为可更新,则通常会将其生命周期设置为等于票证授予票证的整个生命周期的持续时间。

Proxiable(可代理)/proxy(代理)

有时,主体需要允许服务代表其执行操作。创建该票证时,必须指定代理的主体名称。Oracle Solaris 发行版不支持可代理票证或代理票证。

可代理票证与可转发票证类似,但前者仅对单个服务有效,而可转发票证授予服务对客户机身份的完全使用权限。因此,可以将可转发票证视为一种超级代理。

Renewable(可更新)

由于拥有很长生命周期的票证存在安全风险,因此可将票证指定为可更新票证。可更新票证具有两个截止时间:票证当前实例的截止时间,以及任意票证的最长生命周期(一周)。如果客户机要继续使用票证,则可在第一个截止时间之前更新票证。例如,某个票证的有效期为一个小时,而所有票证的最长生命周期为 10 个小时。如果持有该票证的客户机要将该票证再保留几个小时,则此客户机必须在有效的小时数内更新票证。如果票证到达最长票证生命周期(10 个小时),则该票证将自动过期且无法更新。

有关如何查看票证属性的信息,请参见查看 Kerberos 票证

票证生命周期

每当主体获取包括票证授予票证 (ticket-granting ticket, TGT) 在内的票证时,都会将票证的生命周期设置为以下生命周期值中的最小值:

图 25-1 说明了如何确定 TGT 的生命周期以及四个生命周期值的来源。虽然该图说明的是如何确定 TGT 的生命周期,但所有主体获取票证时的情况基本相同。唯一的区别在于,kinit 不提供生命周期值,而提供票证的服务主体(非 krbtgt/realm 主体)会提供最长生命周期值。

图 25-1 如何确定 TGT 的生命周期

image:如图所示,票证的生命周期是 kinit 命令、用户主体、站点缺省值和票证授予者允许的最小值:

可更新票证生命周期也是由四个值中的最小值确定的,但是使用的却是可更新的生命周期值,如下所示:

Kerberos 主体名称

每张票证都以主体名称标识。主体名称可以标识用户或服务。以下是一些主体名称的示例。

表 25-4 Kerberos 主体名称示例

Principal Name(主体名称)
说明
changepw/kdc1.example.com@EXAMPLE.COM
更改口令时,允许访问 KDC 的主 KDC 服务器的主体。
clntconfig/admin@EXAMPLE.COM
kclient 安装实用程序使用的主体。
ftp/boston.example.com@EXAMPLE.COM
ftp 服务使用的主体。此主体可用于替代 host 主体。
host/boston.example.com@EXAMPLE.COM
基于 Kerberos 的应用程序(如 klistkprop)和服务(如 ftptelnet)使用的主体。此主体称为 host 或服务主体,用于验证 NFS 挂载。客户机也会使用该主体验证 TGT 是否是从正确的 KDC 颁发给客户机的。
K/M@EXAMPLE.COM
主密钥名称主体。一个主密钥名称主体可与每个主 KDC 关联。
kadmin/history@EXAMPLE.COM
一种主体,其中包含用于保存其他主体的口令历史记录的密钥。每个主 KDC 都具有一个这样的主体。
kadmin/kdc1.example.com@EXAMPLE.COM
允许使用 kadmind 访问 KDC 的主 KDC 服务器的主体。
kadmin/changepw.example.com@EXAMPLE.COM
一种主体,用于接收来自未运行 Solaris 发行版的客户机的口令更改请求。
krbtgt/EXAMPLE.COM@EXAMPLE.COM
生成票证授予票证时使用的主体。
krbtgt/EAST.EXAMPLE.COM@WEST.EXAMPLE.COM
此主体是跨领域的票证授予票证的示例。
nfs/boston.example.com@EXAMPLE.COM
NFS 服务使用的主体。此主体可用于替代 host 主体。
root/boston.example.com@EXAMPLE.COM
与客户机上的 root 帐户关联的主体。该主体称为 root 主体,向已挂载 NFS 的文件系统提供 root 访问权限。
username@EXAMPLE.COM
用户的主体。
username/admin@EXAMPLE.COM
admin 主体,可用于管理 KDC 数据库。