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

文档信息

前言

第 1 部分安全性概述

1.  安全性服务(概述)

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

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

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

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

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

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

7.  使用自动安全性增强工具(任务)

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

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

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

10.  基于角色的访问控制(参考)

11.  特权(任务)

12.  特权(参考)

第 4 部分加密服务

13.  Oracle Solaris 加密框架(概述)

14.  Oracle Solaris 加密框架(任务)

15.  Oracle Solaris 密钥管理框架

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

16.  使用验证服务(任务)

17.  使用 PAM

18.  使用 SASL

19.  使用 Oracle Solaris 安全 Shell(任务)

Oracle Solaris 安全 Shell(概述)

Oracle Solaris 安全 Shell 验证

企业中的安全 Shell

Oracle Solaris 安全 Shell 和 OpenSSH 项目

Oracle Solaris 安全 Shell(任务列表)

配置 Oracle Solaris 安全 Shell(任务列表)

配置 Oracle Solaris 安全 Shell(任务)

如何为安全 Shell 设置基于主机的验证

如何启用安全 Shell v1

如何在安全 Shell 中配置端口转发

使用 Oracle Solaris 安全 Shell(任务列表)

使用 Oracle Solaris 安全 Shell(任务)

如何生成用于安全 Shell 的公钥/私钥对

如何更改安全 Shell 私钥的口令短语

如何使用安全 Shell 登录到远程主机

如何减少安全 Shell 中的口令提示

如何将 ssh-agent 命令设置为在 CDE 中自动运行

如何在安全 Shell 中使用端口转发

如何使用安全 Shell 复制文件

如何设置到防火墙外部主机的缺省连接

20.  Oracle Solaris 安全 Shell(参考)

第 6 部分Kerberos 服务

21.  Kerberos 服务介绍

22.  规划 Kerberos 服务

23.  配置 Kerberos 服务(任务)

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

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

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

27.  Kerberos 服务(参考)

第 7 部分Oracle Solaris 审计

28.  Oracle Solaris 审计(概述)

29.  规划 Oracle Solaris 审计

30.  管理 Oracle Solaris 审计(任务)

31.  Oracle Solaris 审计(参考)

词汇表

索引

配置 Oracle Solaris 安全 Shell(任务)

缺省情况下,安全 Shell 中未启用基于主机的验证,并且不允许同时使用两种协议。更改这些缺省设置需要管理干预。另外,要使端口转发正常工作,也需要管理干预。

如何为安全 Shell 设置基于主机的验证

以下过程设置一个公钥系统,其中使用客户机的公钥进行服务器上的验证。用户还必须创建一个公钥/私钥对。

在此过程中,术语客户机本地主机是指用户键入 ssh 命令的计算机。术语服务器远程主机是指客户机尝试访问的计算机。

  1. 承担 Primary Administrator(主管理员)角色,或成为超级用户。

    Primary Administrator(主管理员)角色拥有 Primary Administrator(主管理员)配置文件。要创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2  章 "使用 Solaris Management Console(任务)"

  2. 在客户机上,启用基于主机的验证。

    在客户机配置文件 /etc/ssh/ssh_config 中,键入以下项:

    HostbasedAuthentication yes

    有关该文件的语法,请参见 ssh_config(4) 手册页

  3. 在服务器上,启用基于主机的验证。

    在服务器验证文件 /etc/ssh/sshd_config 中,键入相同的项:

    HostbasedAuthentication yes

    有关该文件的语法,请参见 sshd_config(4) 手册页

  4. 在服务器上,配置允许将客户机识别为可信主机的文件。

    有关更多信息,请参见 sshd(1M) 手册页的 FILES 部分。

    • 将客户机作为一项添加到服务器的 /etc/ssh/shosts.equiv 文件中。
      client-host
    • 或者,可以指示用户在服务器上将一个有关客户机的项添加到其 ~/.shosts 文件中。
      client-host
  5. 在服务器上,确保 sshd 守护进程可以访问可信主机列表。

    /etc/ssh/sshd_config 文件中,将 IgnoreRhosts 设置为 no

    ## sshd_config
    IgnoreRhosts no
  6. 确保站点上的安全 Shell 用户在两台主机上都拥有帐户。
  7. 执行以下操作之一,以将客户机的公钥放到服务器上。
    • 修改服务器上的 sshd_config 文件,然后指示用户将客户机的公共主机密钥添加到其 ~/.ssh/known_hosts 文件中。
      ## sshd_config
      IgnoreUserKnownHosts no

      有关用户说明,请参见如何生成用于安全 Shell 的公钥/私钥对

    • 将客户机的公钥复制到服务器。

      主机密钥存储在 /etc/ssh 目录中。这些密钥通常由 sshd 守护进程在首次引导时生成。

      1. 将密钥添加到服务器上的 /etc/ssh/ssh_known_hosts 文件中。

        在客户机上,在一行中键入以下命令(不带反斜杠)。

        # cat /etc/ssh/ssh_host_dsa_key.pub | ssh RemoteHost \
        'cat >> /etc/ssh/ssh_known_hosts && echo "Host key copied"'
      2. 出现提示时,提供登录口令。

        复制该文件后,将显示 "Host key copied"(主机密钥已复制)消息。

        /etc/ssh/ssh_known_hosts 文件中的每一行均由空格分隔的字段组成:

        hostnames algorithm-name publickey comment
      3. 编辑 /etc/ssh/ssh_known_hosts 文件,添加 RemoteHost 作为复制的项中的第一个字段。
        ## /etc/ssh/ssh_known_hosts File
        RemoteHost <copied entry>

示例 19-1 设置基于主机的验证

在以下示例中,每台主机同时配置为服务器和客户机。任一主机上的用户都可以启动与另一台主机的 ssh 连接。以下配置可使每台主机同时成为服务器和客户机:

如何启用安全 Shell v1

当一台主机与运行 v1 和 v2 的多台主机交互操作时,此过程非常有用。

  1. 承担 Primary Administrator(主管理员)角色,或成为超级用户。

    Primary Administrator(主管理员)角色拥有 Primary Administrator(主管理员)配置文件。要创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2  章 "使用 Solaris Management Console(任务)"

  2. 将主机配置为同时使用两种安全 Shell 协议。

    编辑 /etc/ssh/sshd_config 文件。

    # Protocol 2
    Protocol 2,1
  3. 为用于 v1 的主机密钥提供一个独立文件。

    /etc/ssh/sshd_config 文件中添加 HostKey 项。

    HostKey /etc/ssh/ssh_host_rsa_key
    HostKey /etc/ssh/ssh_host_dsa_key
    HostKey /etc/ssh/ssh_host_rsa1_key
  4. 生成用于 v1 的主机密钥。
    # ssh-keygen -t rsa1 -f /etc/ssh/ssh_host_rsa1_key -N ''
    -t rsa1

    表示用于 v1 的 RSA 算法。

    -f

    表示保存主机密钥的文件。

    -N ''

    表示无需口令短语。

  5. 重新启动 sshd 守护进程。
    # svcadm restart network/ssh:default

    您也可以重新引导系统。

如何在安全 Shell 中配置端口转发

使用端口转发可以将本地端口转发到远程主机。实际上,分配了一个套接字用于侦听本地端的端口。同样,也可以在远程端指定端口。


注 - 安全 Shell 端口转发必须使用 TCP 连接。安全 Shell 不支持使用 UDP 连接进行端口转发。


  1. 承担 Primary Administrator(主管理员)角色,或成为超级用户。

    Primary Administrator(主管理员)角色拥有 Primary Administrator(主管理员)配置文件。要创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2  章 "使用 Solaris Management Console(任务)"

  2. 配置远程服务器的安全 Shell 设置以允许端口转发。

    /etc/ssh/sshd_config 文件中,将 AllowTcpForwarding 的值更改为 yes

    # Port forwarding
    AllowTcpForwarding yes
  3. 重新启动安全 Shell 服务。
    remoteHost# svcadm restart network/ssh:default

    有关管理持久性服务的信息,请参见《系统管理指南:基本管理》中的第 18  章 "管理服务(概述)"svcadm(1M) 手册页。

  4. 检验是否可以使用端口转发。
    remoteHost# /usr/bin/pgrep -lf sshd
     1296 ssh -L 2001:remoteHost:23 remoteHost