Sun 企业鉴别机制指南

SEAM 命令

Kerberos V5 是一个 单次登录 系统。这意味着您只需键入您的口令一次, Kerberos V5 程序就会为您进行鉴别 (以及可选的加密), 因为 Kerberos 业已内置于现有的常用网络套件中的每个程序。 Kerberos V5 应用程序包括现有 UNIX 网络程序的版本外加 Kerberos 特性。

例如,当您使用一个 Kerberized 程序来连接到一个远程主机时,程序、 KDC 以及远程主机就进行一整套快速的协商。当这些协商完成时,您的程序就业已代表您向远程主机证明了您的身份,而远程主机业已授予您访问。

请注意, Kerberized 命令首先试图与 Kerberos 进行鉴别。如果 Kerberos 鉴别失败,就发生一个错误,或者试图进行 UNIX 鉴别,具体取决于命令所使用的选项。请参考 Kerberos 命令手册页中 Kerberos Security 一节,了解更多的详细的信息。

Kerberized 命令总览

Kerberized 网络服务是那些用于连接到因特网上某个地方的另一机器的程序。这些程序位于 /usr/krb5/bin; 请设定您的 PATH 变量,让这些程序出现在非 Kerberos 版本之前。这些程序是:

这些程序拥有相对应的非 Kerberos 对等程序的所有原来的特性。它们还拥有附加的特性,用于透明地使用您的 Kerberos 票券来与远程主机协商鉴别 (以及可选的加密)。在大多数的情况下,您只会注意到您不必再键入您的口令就可以使用这些程序,因为 Kerberos 会为您提供对您的身份的证明。

Kerberos V5 网络程序允许您选择:


注意:

本节假设您业已熟悉这些程序的非 Kerberos 版本,并着重讨论 Kerberos V5 包所添加的 Kerberos 功能。如要了解对本文所述命令的详细的描述,请参见其手册页。


下列 Kerberos 选项业已被添加到 ftp, rcp, rlogin, rsh,和 telnet:

-a

试图使用您现有的票券自动进行登录。使用 getlogin() 所返回的用户名,除非这与当前的用户 ID 不同。 (请参见telnet(1) 手册页,了解有关细节。)

-f

将一个不可重新转发 票券转发到一个远程主机。该选项与 -F 相互排斥 (请参见下文); 它们无法一起用在同一命令中。

如果您有理由相信您将需要向某一第三个主机上的其它的基于 Kerberos 的服务鉴别您自己的话,您将需要转发一个票券 - 例如,如果您想 rlogin 到另一机器,然后再从该机器 rlogin 到某一第三个机器。

如果您在远程主机上的主目录是由 NFS 使用 Kerberos V5 进行装配的,则您绝对应当使用一个可转发票券; 否则,您将无法访问您的主目录。(即,假设您起初登录到系统 1。从系统 1 您 rlogin 到您的主机器,系统 2, 该系统从系统 3 装配您的主目录。除非您业已在 rlogin 使用了 -f-F 选项,否则您将无法到达您的主目录,因为您的票券无法被转发到系统 3。)

默认情况是, kinit 获得可转发的具有票券授予权的票券 (TGT); 然而,您的 SEAM 配置可能在这方面有所不同。

如要了解更多有关转发票券的信息,请参见"转发票券借助-f-F"

-F

将您的具有票券授予权的票券的一个 可重新转发 副本转发到一个远程系统。这类似于 -f (请参见上文), 但是其允许对其它另一 (比如,第四个或第五个) 机器的访问。因而 -F 选项可以被看成是 -f 选项的一个超级。 -F 选项与 -f 选项互相排斥; 它们无法一起用在同一命令中。

如要了解更多有关转发票券的信息,请参见"转发票券借助-f-F"

-k realm

请求用于所指定 区域 内的远程主机的票券,而不是使用 krb5.conf 文件来确定区域自身。

-K

使用您的票券来向远程主机进行鉴别,但不自动进行登录。

-m 机制

指定使用 GSS-API 安全机制,正如 /etc/gss/mech 文件中所列。 Kerberos_v5 的默认值。

-x

为本对话加密。

-X auth_type

禁用 auth_type 类型的鉴别。

表 6-1,显示哪些命令拥有具体的选项 ("X" 指示该命令拥有该选项)。

表 6-1 用于网络命令的 Kerberos 选项

 

ftp

rcp

rlogin

rsh

telnet

-a

 

 

 

 

-f

 

-F

 

 

-k

 

-K

 

 

 

 

-m

 

 

 

 

-x

 

-X

 

 

 

 

另外, ftp 允许在其提示处,为对话设定保护级:

清除

将保护级设定为 "清除" (无保护)。这是默认的。

私有

将保护级设定为 "私有。" 通过加密,数据传输受到机密和完整性保护。然而,隐私服务可能并非对所有 SEAM 用户均可用。

安全

将保护级设定为 "安全"。 通过加密校验和,数据传输受到完整性保护。

您还可以在 ftp 提示处设定保护级,方法是通过录入 保护,后面跟有上文所示的任意保护级 (清除, 私有,或 安全)。

转发票券借助-f-F

"Kerberized 命令总览", 中所述,有些命令允许您借助 -f-F 选项转发票券。转发票券允许您 "链化" 您的网络事务; 例如,您可以 rlogin 到一个机器,然后从该机器 rlogin 到另一机器。 -f 选项允许您转发一个票券,而 -F 选项允许您重新转发一个已转发票券。

图形 6-2 中,用户 david 借助 kinit,获得一个不可转发的具有票券授予权的票券 (TGT)。 (它是不可转发的,因为他没有指定 -f 选项。) 在情景 1 中,他能够 rlogin 到机器 B, 但是他无法继续下去。在情景 2 中,rlogin -f 命令失败,因为他正试图转发一个不可转发的票券。

图形 6-2 使用不可转发票券

Graphic

(实际情况是, SEAM 配置文件被设置为 kinit默认获得可转发票券。然而,您的配置可能与此不同。出于解释的需要,我们假设 kinit 获得可转发 TGT,除非其被调用时带有 kinit -f。另外请注意, kinit 没有 -F 选项; TGT 不是可转发的,就是不可转发的。)

图形 6-3 中,david 借助 kinit -f,获得了可转发 TGT。在情景 3 中,他能够到达机器 C,因为他将一个可转发票券用于 rlogin。在情景 4 中,第二次 rlogin 失败,因为票券是不可重新转发的。通过换用 -F 选项,如情景 5,第二次 rlogin 成功,并且票券可以继续重新转发到机器 D。

图形 6-3 使用可转发票券

Graphic

示例 - 使用 Kerberized 命令

下列示例帮助了解用于 Kerberized 命令的选项是如何工作的。

示例 - 将-a, -f, 和-x 选项用于telnet

在本示例中,用户 david业已登录,并且想 telnet 到机器 denver.acme.com。他使用 -f 选项来转发他现有的票券,使用 -x 选项来为对话加密,并使用 -a 选项来自动进行登录。因为他不打算使用某一第三个主机的服务,他可以将 -F 换用为 -f


% telnet -a -f -x denver.acme.com  尝试 128.0.0.5...
 连接到 denver.acme.com。逃逸字符为 '^]'. 
 [ Kerberos V5 将您接受为 "david@eng.acme.com" ] 
 [ Kerberos V5 已接受已转发的资格 ] 
 SunOS 5.7: Tue May 21 00:31:42 EDT 1998  欢迎使用 SunOS  %

请注意, david的机器使用 Kerberos 来向 denver.acme.com 鉴别他自己,并作为自己自动进行登录。他拥有一个经过加密的对话,他的票券的一个副本业已在等候他,他永远不必键入他的口令。如果他使用的是一个非 Kerberos 版本的 telnet 的话,他就会被提示录入他的口令,且该口令未经加密就会跨越网络得到发送 -如果有一个侵入者此时正在观察网络数据,该侵入者就会知道 david的口令。

如果您转发您的 Kerberos 票券,telnet (以及本文中所论述的其它的命令) 就在退出时将其销毁。

示例 - 使用rlogin 带有 -F 选项

这里,用户 jennifer 想要登录到她自己的机器,boston.acme.com。她借助 -F 转发她现有的票券,并借助 -x 为对话加密。她选择的是 -F 而不是 -f,因为在她登录到 boston 之后,她可能需要进行其它的网络事务,而这又需要票券得到重新转发。另外,因为她是在转发她现有的票券,她不必键入她的口令。


% rlogin boston.acme.com -F -x
这一 rlogin 对话将 DES 加密用于所有传输。
最近登录 Mon May 19 15:19:49 从 daffodil 
SunOS 发行版 5.7 (类属) #2 Tue Nov 14 18:09:3 EST 1998  %

示例 - 在ftp 中设定保护级

现在假设 joe 想要使用 ftp 来从机器 denver.acme.com 的目录 ~joe/MAIL 获得他的邮件,且要为对话加密。交换过程会看似如下:


% ftp -f denver.acme.com
连接到 denver.acme.com
220 denver.acme.org FTP 服务器 (版本 6.0) 已准备好。
334 使用鉴别类型 GSSAPI; ADAT 必须跟从
已接受为鉴别类型的 GSSAPI
GSSAPI 鉴别成功名称 (daffodil.acme.org:joe)
232 GSSAPI 用户 joe@MELPOMENE.ACME.COM 被授权为 joe
230 用户 joe 已登录。
远程系统类型为 UNIX。
使用 BINARY 模式来传送文件。
ftp>保护私有
200保护级设定为私有
ftp>cd ~joe/MAIL
250 CWD 命令成功。
ftp>get RMAIL
227 进入 Passive 模式 (128,0,0,5,16,49)
150 为 RMAIL 打开 BINARY 模式数据连接 (158336 字节)。
226 传送完成。在 1.9 秒内接收到了 158336 个字节 (1.4e+02千字节/秒)
ftp>quit
%

为了为对话加密,joe 将保护级设定为 私有