在 Oracle® Solaris 11.2 中管理安全 Shell 访问

退出打印视图

更新时间: 2014 年 9 月
 
 

安全 Shell 和 OpenSSH 项目

安全 Shell 是 OpenSSH 项目的一个分支。安全 Shell 中集成了在较新 OpenSSH 版本中发现的漏洞的安全修复,就像是单独的错误修复和功能一样。从 2012 年 9 月开始,Oracle Solaris 中的安全 Shell 版本为 2.0。ssh –V 命令显示版本号。

    在此安全 Shell 发行版中,针对 v2 协议实现了以下功能:

  • ForceCommand 关键字-强制执行指定的命令,无论用户在命令行输入什么内容。此关键字在 Match 数据块中非常有用。此 sshd_config 配置选项类似于 $HOME/.ssh/authorized_keys 中的 command="..." 选项。

  • AES-128 口令短语保护-对 ssh-keygen 命令生成的私钥使用 AES-128 算法进行保护。此算法可保护新生成的密钥和重新加密的密钥,如口令短语更改时。

  • sftp-server 命令的 –u 选项-允许用户对文件和目录设置明确的 umask。此选项可覆盖用户的缺省 umask。有关示例,请参见 sshd_config(4) 手册页中对 Subsystem 的说明。

  • Match 块的其他关键字-AuthorizedKeysFileForceCommandHostbasedUsesNameFromPacketOnlyMatch 块内受支持。缺省情况下,AuthorizedKeysFile 的值为 $HOME/.ssh/authorized_keysHostbasedUsesNameFromPacketOnlyno。要使用 Match 块,请参见如何创建安全 Shell 缺省设置的用户和主机例外

    Oracle Solaris 工程师提供了对 OpenSSH 项目的错误修复。此外,他们还将以下 Oracle Solaris 功能集成到安全 Shell 分支中:

  • PAM-安全 Shell 使用 PAM。不支持 OpenSSH UsePAM 配置选项。

  • 特权分离-安全 Shell 不使用 OpenSSH 项目中的特权分离代码。安全 Shell 将审计处理、记录保存和重新生成密钥与会话协议的处理相分离。

    安全 Shell 特权分离代码始终开启,无法关闭。不支持 OpenSSH UsePrivilegeSeparation 选项。

  • 语言环境-安全 Shell 完全支持 RFC 4253《Secure Shell Transfer Protocol》中定义的语言协商。用户登录后,用户的登录 shell 配置文件可以覆盖安全 Shell 协商的语言环境设置。

  • 审计-安全 Shell 完全集成到 Oracle Solaris 审计服务中。有关审计服务的详细信息,请参见在 Oracle Solaris 11.2 中管理审计

  • GSS-API 支持-GSS-API 可用于用户验证初始密钥交换。GSS-API 在 RFC4462《Generic Security Service Application Program Interface》中进行定义。

  • 代理命令-安全 Shell 为 SOCKS5 和 HTTP 协议提供代理命令。有关示例,请参见如何设置到防火墙外部的主机的缺省安全 Shell 连接

在 Oracle Solaris 发行版中,安全 Shell 从 OpenSSH 项目中重新同步 SSH_OLD_FORWARD_ADDR 兼容性标志。