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

文档信息

前言

第 1 部分安全性概述

1.  安全性服务(概述)

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

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

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

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

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

6.  使用基本审计报告工具(任务)

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

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

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

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

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

第 4 部分加密服务

11.  加密框架(概述)

12.  加密框架(任务)

13.  密钥管理框架

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

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

15.  使用 PAM

16.  使用 SASL

17.  使用 安全 Shell(任务)

18.  安全 Shell(参考)

第 6 部分Kerberos 服务

19.  Kerberos 服务介绍

20.  规划 Kerberos 服务

21.  配置 Kerberos 服务(任务)

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

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

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

Kerberos 票证管理

是否需要担心票证?

创建 Kerberos 票证

查看 Kerberos 票证

销毁 Kerberos 票证

Kerberos 口令管理

关于选择口令的建议

更改口令

授予对帐户的访问权限

Kerberos 用户命令

基于 Kerberos 的命令概述

转发 Kerberos 票证

使用基于 Kerberos 的命令(示例)

25.  Kerberos 服务(参考)

第 7 部分在 Oracle Solaris 中审计

26.  审计(概述)

27.  规划审计

28.  管理审计(任务)

29.  审计(参考)

词汇表

索引

Kerberos 用户命令

Kerberos V5 产品是一个单点登录系统,这表示只需键入一次口令即可。Kerberos V5 程序将为您执行验证操作(并可以选择执行加密操作),因为 Kerberos 已内置在每个熟知的现有网络程序套件中。Kerberos V5 应用程序是添加了 Kerberos 功能的现有 UNIX 网络程序的版本。

例如,使用基于 Kerberos 的程序连接到远程主机时,该程序、KDC 和远程主机将执行一组快速协商。完成这些协商后,该程序便已代表您向远程主机证明了您的身份,并且远程主机已授予您访问权限。

请注意,基于 Kerberos 的命令会首先尝试使用 Kerberos 进行验证。如果 Kerberos 验证失败,将会出现错误或尝试 UNIX 验证,具体取决于和命令一起使用的选项。有关更多详细信息,请参阅每个 Kerberos 命令手册页中的 Kerberos Security 部分。

基于 Kerberos 的命令概述

基于 Kerberos 的网络服务是一些连接到 Internet 中某个位置的其他计算机的程序。这些程序如下:

这些程序具有可透明地使用 Kerberos 票证与远程主机协商验证和可选加密的功能。在大多数情况下,您只会注意到不必再键入口令即可使用这些程序,因为 Kerberos 将为您提供身份证明。

Kerberos V5 网络程序包括可用于执行以下操作的选项:


注 - 本节假定您已经熟悉这些程序的非 Kerberos 版本,并且将重点介绍 Kerberos V5 软件包添加的 Kerberos 功能。有关此处所述命令的详细说明,请参见各自的手册页。


下列 Kerberos 选项已添加到 ftprcprloginrshtelnet

-a

尝试使用现有票证自动登录。使用 getlogin() 返回的用户名,除非该名称与当前用户 ID 不相同。有关详细信息,请参见 telnet(1) 手册页。

-f

不可重新转发的票证转发到远程主机。此选项与 -F 选项互斥。不能在同一命令中同时使用这两个选项。

如果您有理由相信需要向第三台主机中其他基于 Kerberos 的服务验证您的身份,则应转发票证。例如,您可能要远程登录到另一台计算机,然后从该计算机远程登录到第三台计算机。

如果远程主机上的起始目录使用 Kerberos V5 机制挂载了 NFS,则必须使用可转发票证。否则,将无法访问起始目录。也就是说,假定您最初登录到系统 1,然后从系统 1 远程登录到您的主机(系统 2),该主机从系统 3 挂载您的起始目录。在这种情况下,除非在 rlogin 中使用 -f-F 选项,否则将无法访问起始目录,因为您的票证无法转发到系统 3。

缺省情况下,kinit 会获取可转发票证授予票证 (ticket-granting ticket, TGT)。但是,您的配置在这方面可能会有所不同。

有关转发票证的更多信息,请参见转发 Kerberos 票证

-F

将 TGT 的可重新转发副本转发到远程系统。此选项与 -f 类似,但它允许访问更多(如第四台或第五台)计算机。因此,可将 -F 选项视为 -f 选项的超集。-F 选项与 -f 选项互斥。不能在同一命令中同时使用这两个选项。

有关转发票证的更多信息,请参见转发 Kerberos 票证

-k realm

请求指定的 realm 中的远程主机的票证,而不是使用 krb5.conf 文件来确定领域本身。

-K

使用票证来向远程主机验证,但不自动登录。

-m mechanism

指定要使用的 GSS-API 安全机制,如 /etc/gss/mech 文件中所列。缺省值为 kerberos_v5

-x

加密此会话。

-X auth-type

禁用 auth-type 类型的验证。

下表显示了具有特定选项的命令。"X" 表示命令包含该选项。

表 24-1 网络命令的 Kerberos 选项

ftp
rcp
rlogin
rsh
telnet
-a
X
-f
X
X
X
X
-F
X
X
X
-k
X
X
X
X
-K
X
-m
X
-x
X
X
X
X
X
-X
X

此外,ftp 还允许在其提示符下为会话设置保护级别:

clear

将保护级别设置为 "clear"(无保护)。此保护级别是缺省级别。

private

将保护级别设置为 "private"。通过加密来保护数据传输的保密性和完整性。但是,并非所有的 Kerberos 用户都可使用保密性服务。

safe

将保护级别设置为 "safe"。通过加密校验和来保护数据传输的完整性。

也可以通过键入 protect,并后跟以上所示的任何保护级别(clearprivatesafe),在 ftp 提示符下设置保护级别。

转发 Kerberos 票证

基于 Kerberos 的命令概述中所述,某些命令允许您使用 -f-F 选项转发票证。通过转发票证,可以“链接”网络事务。例如,可以远程登录到一台计算机,然后从该计算机远程登录到另一台计算机。使用 -f 选项可转发票证,而使用 -F 选项则可重新转发已转发的票证。

在下图中,用户 david 使用 kinit 获取了一个不可转发票证授予票证 (ticket-granting ticket, TGT)。由于该用户未指定 -f 选项,因此该票证不可转发。在方案 1 中,该用户可以远程登录到计算机 B,但不能再登录到其他计算机。在方案 2 中,由于该用户尝试转发一个不可转发票证,因此 rlogin -f 命令失败。

图 24-2 使用不可转发票证

image:此图显示了两个涉及不可转发票证的方案。

实际上,已设置了 Kerberos 配置文件,以便 kinit 在缺省情况下可获取可转发票证。但是,您的配置可能会有所不同。为了便于说明,假定 kinit 不会获取可转发 TGT,除非使用 kinit -f 调用该命令。另请注意,kinit 不包含 -F 选项。TGT 要么是可转发的,要么是不可转发的。

在下图中,用户 david 使用 kinit -f 获取可转发的 TGT。在方案 3 中,由于该用户在 rlogin 中使用了可转发票证,因此可以访问计算机 C。在方案 4 中,由于票证不可重新转发,因此第二个 rlogin 失败。如方案 5 中所示,改用 -F 选项后,第二个 rlogin 将成功,并且票证可重新转发到计算机 D。

图 24-3 使用可转发票证

image:此图显示了三个涉及可转发票证的方案。

使用基于 Kerberos 的命令(示例)

以下示例说明基于 Kerberos 的命令选项的工作方式。

示例 24-5 将 -a-f-x 选项用于 telnet

在本示例中,用户 david 已经登录,并且要通过 telnet 远程登录到计算机 denver.example.com。该用户使用 -f 选项转发其现有票证,使用 -x 选项加密会话,并使用 -a 选项自动执行登录。由于该用户不打算使用第三台主机的服务,因此可使用 -f 而非 -F

% telnet -a -f -x denver.example.com 
Trying 128.0.0.5... 
Connected to denver.example.com. Escape character is '^]'. 
[ Kerberos V5 accepts you as "david@eng.example.com" ] 
[ Kerberos V5 accepted forwarded credentials ] 
SunOS 5.9: Tue May 21 00:31:42 EDT 2004  Welcome to SunOS 
%

请注意,david 的计算机使用 Kerberos 来向 denver.example.com 进行自我验证,并且以自己的身份自动登录。该用户具有一个加密会话(即该用户已有的票证副本),因此永远不必键入其口令。如果该用户使用了非 Kerberos 版本的 telnet,则可能会提示其输入口令,并将此口令在未加密的情况下通过网络发送。如果入侵者在此期间一直在观察网络通信流量,则可能会知道 david 的口令。

如果转发 Kerberos 票证,telnet(以及此处讨论的其他命令)将会在退出时销毁这些票证。

示例 24-6 使用带有 -F 选项的 rlogin

在此示例中,用户 jennifer 希望登录到自己的计算机 boston.example.com。该用户使用 -F 选项转发其现有票证,并使用 -x 选项加密会话。由于该用户在登录到 boston 后,可能希望执行需要重新转发票证的其他网络事务,因此会选择 -F 而非 -f。另外,由于该用户要转发其现有票证,因此不必键入其口令。

% rlogin boston.example.com -F -x
This rlogin session is using encryption for all transmissions.
Last login Mon May 19 15:19:49 from daffodil 
SunOS Release 5.9 (GENERIC) #2 Tue Nov 14 18:09:3 EST 2003 
%

示例 24-7 在 ftp 中设置保护级别

假定 joe 要使用 ftp 从计算机 denver.example.com 的目录 ~joe/MAIL 中获取其邮件并加密会话。交换过程如下所示:

% ftp -f denver.example.com
Connected to denver.example.com
220 denver.example.org FTP server (Version 6.0) ready.
334 Using authentication type GSSAPI; ADAT must follow
GSSAPI accepted as authentication type 
GSSAPI authentication succeeded Name (daffodil.example.org:joe) 
232 GSSAPI user joe@MELPOMENE.EXAMPLE.COM is authorized as joe
230 User joe logged in.
Remote system type is UNIX.
Using BINARY mode to transfer files.
ftp> protect private
200 Protection level set to Private
ftp> cd ~joe/MAIL
250 CWD command successful.
ftp> get RMAIL
227 Entering Passive Mode (128,0,0,5,16,49)
150 Opening BINARY mode data connection for RMAIL (158336 bytes).
226 Transfer complete. 158336 bytes received in 1.9 seconds (1.4e+02 Kbytes/s)
ftp> quit
% 

为了加密会话,joe 将保护级别设置为 private