系统管理指南:安全性服务

Solaris 安全 Shell 中的验证和密钥交换

Solaris 安全 Shell 协议(v1 和 v2)均支持客户机用户/主机验证和服务器主机验证。这两种协议都涉及会话加密密钥(用于保护 Solaris 安全 Shell 会话)的交换。每种协议提供了用于验证和密钥交换的各种方法。一些方法是可选的。Solaris 安全 Shell 支持许多客户机验证机制,如表 18–1 中所示。通常使用已知的主机公钥对服务器进行验证。

对于 v1 协议,Solaris 安全 Shell 支持使用口令进行用户验证。该协议也支持用户公钥,以及使用受信任的主机公钥进行验证。服务器验证使用主机公钥完成。对于 v1 协议,所有公钥都是 RSA 密钥。会话密钥交换涉及对定期重新生成的暂时服务器密钥的使用。

对于 v2 协议,Solaris 安全 Shell 支持用户验证和一般交互验证,这通常涉及到口令。该协议也支持使用用户公钥和受信任的主机公钥进行验证。这些密钥可以是 RSA 或 DSA。会话密钥交换由在服务器验证步骤中签名的 Diffie-Hellman 暂时密钥交换组成。此外,Solaris 安全 Shell 可以使用 GSS 凭证进行验证。

获取 Solaris 安全 Shell 中的 GSS 凭证

要在 Solaris 安全 Shell 中使用 GSS-API 进行验证,服务器必须具有 GSS-API 接收器凭证,客户机必须具有 GSS-API 启动器凭证。支持 mech_dhmech_krb5

对于 mech_dh,如果 root 已运行 keylogin 命令,则服务器具有 GSS-API 接收器凭证。

对于 mech_krb5,如果 /etc/krb5/krb5.keytab 中包含与该服务器对应的主机主体的有效项,则服务器具有 GSS-API 接收器凭证。

如果执行了以下某项操作,则客户机具有 mech_dh 的启动器凭证:

如果执行了以下某项操作,则客户机具有 mech_krb5 的启动器凭证:

有关 mech_dh 在安全 RPC 中的使用,请参见第 15 章,使用验证服务(任务)。有关如何使用 mech_krb5,请参见第 20 章,Kerberos 服务介绍。有关机制的更多信息,请参见 mech(4)mech_spnego(5) 手册页。