第3章 |
|
本章提供下载、安装、运行 Solaris Security Toolkit 软件及其他与安全相关的软件的指导。其中包含将环境配置为独立或 JumpStart 模式以及获得支持的指导。
请按照本节提供的指导和过程以安装、配置和执行软件。这些指导包括下载附加的安全性软件、帮助实例和准则。
虽然 Solaris Security Toolkit 软件是独立产品,然而当与下载的附加的安全性软件同时使用时最有效。该软件包括来自 SunSolve Online 的最新推荐的修补程序群集和安全性修补程序群集、Solaris OS 版本中未包含的 Secure Shell 软件、用于限制 Solaris OS 和第三方软件权限的权限和所有权修改软件,以及用于验证 Sun 文件和可执行文件完整性的完整性验证二进制文件。
正确的规划是成功使用 Solaris Security Toolkit 软件以保护系统安全的关键。有关安装本软件前规划的详细信息,请参阅第 2 章。
如果要在已部署的系统上安装本软件,请参阅执行安装前任务,以了解有关在已部署的系统上执行安装前任务的信息。
Solaris Security Toolkit 4.1 软件具有以下从属性。
有关所支持的 Solaris 操作系统版本,请参见运行受支持的 Solaris OS 版本。
Solaris Security Toolkit 4.1 软件从属于 SUNWloc 软件包。该软件包的缺失将导致 Solaris Security Toolkit 发生故障。
有关所支持的 System Managements Services (SMS) 软件版本的信息,请参见运行受支持的 SMS 版本。
在安装过程中或者在安装结束后马上加强系统安全性,可以减少系统在不安全状态下可能遭受攻击的时间。在使用 Solaris Security Toolkit 软件保护系统安全之前,请配置 Solaris Security Toolkit 软件,使其能在您的环境中正常运行。
Solaris Security Toolkit 软件具有模块化的框架。如果当前没有使用 JumpStart 产品,则 Solaris Security Toolkit 软件框架的灵活性使您能够有效地为以后使用 JumpStart 版本做准备。如果正在使用 JumpStart,则由于 Solaris Security Toolkit 软件能够集成到现有的 JumpStart 体系结构中,因此您可从中受益。
在独立模式下,Solaris Security Toolkit 软件可直接从 Solaris OS shell 提示符下运行。这种模式使您可以在那些需要安全性修改或更新但还不能中断服务以完全重新安装 OS 的系统上使用 Solaris Security Toolkit 软件。然而如果可能的话,应完全重新安装系统以保护其安全。
在安装完修补程序后加强系统安全性时,独立模式更加有用。可以在系统上多次运行 Solaris Security Toolkit 软件而没有不良后果。修补程序会覆盖或修改 Solaris Security Toolkit 软件已经修改的文件;再次运行 Solaris Security Toolkit 软件,会重新执行由修补程序安装所撤消的任何安全性修改。
独立模式是尽可能快地加强已部署系统安全性的最佳选择之一。除了下载安全性软件提供的下载和安装指导中的步骤之外,不需要任何专门的步骤即可将 Solaris Security Toolkit 软件集成到不带 JumpStart 的体系结构中。
JumpStart 技术是 Sun 的基于网络的 Solaris OS 安装机制,能够在安装过程中运行 Solaris Security Toolkit 脚本。本书假设读者熟悉 JumpStart 技术并具有可用的 JumpStart 环境。有关 JumpStart 技术的更多信息,请参阅 Sun BluePrints 书籍《JumpStart Technology: Effective Use in the Solaris Operating Environment》。
在 JumpStart 环境中,将 JASS_HOME_DIR(用于 tar 文件下载)或 /opt/SUNWjass(用于 pkg 文件下载)中的 Solaris Security Toolkit 源代码复制到 JumpStart 服务器的主目录下。缺省路径是 JumpStart 服务器上的/jumpstart。JASS_HOME_DIR 将成为 Jumpstart 服务器上的主目录。
将 Solaris Security Toolkit 软件集成到 JumpStart 体系结构中只需要几个步骤。有关如何配置 JumpStart 服务器的指导,请参阅第 5 章。
加强系统安全性的第一步是将附加的安全性软件包下载到要保护的系统上。本节涵盖以下主题:
注 - 本节讲到的软件中,Solaris Security Toolkit 软件、推荐的修补程序群集和安全性修补程序群集、FixModes 和 MD5 软件是必需的。可以用 Secure Shell(可从许多供应商获得)的商业版本来替代 OpenSSH。在所有系统上安装并使用 Secure Shell 产品。如果使用 Solaris 9 OS,请使用其附带的 Secure Shell 版本。 |
首先下载 Solaris Security Toolkit 软件,然后以独立模式将其安装在要使用 Solaris Security Toolkit 软件的服务器上,或者以JumpStart 模式安装在 JumpStart 服务器上。
在本指南的剩余部分中,JASS_HOME_DIR 环境变量是指 Solaris Security Toolkit 软件的根目录。当从 tar 归档文件安装 Solaris Security Toolkit 软件时,将JASS_HOME_DIR 定义为路径,并包括 jass-n.n 如果在/opt 目录下安装tar 分发版本,则将JASS_HOME_DIR 环境变量定义为 /opt/jass-n.n。
除了传统的压缩的 tar 归档格式外,Solaris Security Toolkit 软件还以 Solaris OS 软件包格式进行分发。相同的软件包含在两种归档格式中。
选择最适合您的环境的格式。pkg 格式最适用于客户机,而tar 最适用于 JumpStart 系统和开发定制软件包。
|
http://www.sun.com/security/jass
2. 使用 zcat 和 tar 命令将软件分发文件解压缩到服务器上的一个目录中,如下所示:
执行该命令,在当前工作目录下创建 jass-n.n 子目录。该子目录包含所有 Solaris Security Toolkit 目录和相关文件。
|
1. 下载软件分发文件 (SUNWjass-n.n.pkg.Z)。
http://www.sun.com/security/jass
2. 使用 uncompress 命令将软件分发文件解压缩到服务器的一个目录中:
3. 使用 pkgadd 命令将软件分发文件安装到服务器的一个目录中。
执行此命令在 /opt 中创建 SUNWjass 目录。该子目录包含所有 Solaris Security Toolkit 目录和相关文件。
修补程序由 Sun 发布,为 Solaris OS 提供对性能、稳定性、功能和安全性的修正。对于系统安全性最重要的是安装最新的修补程序群集。为确保系统上安装了 Solaris OS 推荐的修补程序群集和安全性修补程序群集,本节讲述了如何下载最新的修补程序群集。
|
在安装修补程序群集之前,请查看每个修补程序的 README 文件和其他所提供的信息。信息通常包括安装修补程序群集之前需要知道的建议及帮助信息。
1. 从联机的 SunSolve 网站上下载最新的修补程序群集。
3. 单击“Recommended Patch Clusters”链接。
4. 在“Recommended Solaris Patch Cluster”框中选择适当的 Solaris OS 版本。
5. 用相关的单选按钮选择最佳的下载选项(HTTP 或 FTP),然后单击“Go”。
使用 scp(scp(1)- 安全复制(远程复制程序))命令,或其他提供安全文件传输的方法。
8. 将文件移动到/opt/SUNWjass/Patches目录下并解压缩。
在下载了附加安全性软件包并执行了 Solaris Security Toolkit 软件后,会自动安装修补程序群集软件。
注 - 如果没有将推荐的修补程序群集和安全性修补程序群集软件放到/opt/SUNWjass/Patches目录下,则当执行 Solaris Security Toolkit 软件时会显示一条警告消息。在没有修补程序群集应用时可以安全地忽略这条消息,因为这种情形通常出现在新的操作系统版本中。 |
FixModes 是一个限制缺省的 Solaris OS 目录和文件权限的软件包。限制这些权限能够有效地提高整体安全性。更多的限制性权限可以使恶意用户更难在系统中获得权限。
注 - 在 Solaris 9 OS 版本中,进行的更改主要是为了提高以前由 FixModes 软件修改的缺省的对象权限。然而,FixModes 软件仍然是必要的,因为第三方和另售的软件需要限制文件和目录权限。 |
|
1. 从以下网址下载 FixModes 预编译的二进制文件:
http://www.sun.com/security/jass
FixModes 软件是作为预编译和压缩的软件包版本文件分发的,其格式适用于 Solaris OS 系统。文件名是 SUNBEfixm.pkg.Z。
2. 使用 scp 命令或者其他提供安全文件传输的方法,将文件安全地移动到要加强安全性的系统中。
3. 用以下命令将文件SUNBEfixm.pkg.Z 解压缩并保存在 /opt/SUNWjass/Packages 下的 Solaris Security Toolkit Packages 目录中。
在下载了所有附加安全性软件包并执行了 Solaris Security Toolkit 软件后,会自动安装 FixModes 软件。
在任何安全的环境下,需要将加密与强身份验证结合使用以保护用户交互式会话。最低限度,访问网络必须进行加密。
最常用于实行加密的工具是Secure Shell 软件(Solaris OS 附带的版本、第三方商业版本或免费版本)。要实现 Solaris Security Toolkit 软件所进行的所有安全性修改,必须具有一个 Secure Shell 软件产品。
注 - 如果使用 Solaris 9 OS,请使用软件附带的 Secure Shell 版本。Secure Shell 的该版本集成了其他 Solaris OS 安全功能(例如,基本安全模块 (BSM))以及 Sun 的支持机构对该版本的支持。 |
相关资源提供了有关从何处获得 Secure Shell 商业版本的信息。
Solaris Security Toolkit 软件禁用了系统中所有未加密的用户交互式服务和守护进程,特别是守护进程(例如,in.telnetd、in.ftpd、in.rshd 和 in.rlogind)。
Secure Shell 使您可以使用 Telnet 和 FTP 访问系统。
|
注 - 如果服务器当前运行 Solaris 9 OS,则可以使用附带的 Secure Shell 软件并跳过本节中的 OpenSSH 安装步骤。 |
获取以下 Sun BluePrints OnLine 文章,并使用文章中的指导来下载软件。
Sun BluePrints OnLine 上的一篇有关如何编译与部署 OpenSSH 的名为“Building and Deploying OpenSSH on the Solaris Operating Environment” 的文章可以在下列网址获得:
或者从书店购买 Sun BluePrints 出版物《Secure Shell in the Enterprise》。
在下载了所有附加安全性软件包并执行了 Solaris Security Toolkit 软件后,会自动安装 OpenSSH 软件。
MD5 软件在要加强安全性的系统上生成 MD5 数字指纹。生成数字指纹后,将其与 Sun 公司发布的正确数字指纹相对比,以检测被未授权用户更改或特洛伊式更改(隐藏在看起来安全的事物中)的系统二进制文件。通过修改系统二进制文件,攻击者可利用后门访问系统;他们隐藏了自己的存在并使系统在不稳定的状态下运行。
|
http://www.sun.com/security/jass
2. 使用 scp 命令或其他提供安全文件传输的方法,将文件 SUNBEmd5.pkg.Z 安全地移动到要加强安全性的系统中。
3. 使用与以下相似的命令,将文件解压缩并移动到 /opt/SUNWjass/Packages下的 Solaris Security Toolkit Packages 目录中。
将 MD5 软件保存到/opt/SUNWjass/Packages 目录中后,执行 Solaris Security Toolkit 软件以安装 MD5 软件。
在 MD5 二进制文件安装完毕后,通过 Solaris 指纹数据库可以使用它们验证系统上可执行文件的完整性。有关 Solaris 指纹数据库的更多信息,可以从 Sun BluePrints OnLine 上名为“The Solaris Fingerprint Database -- A Security Tool for Solaris Software and Files”的文章中获得。
4. (可选)从位于以下位置的 Sun BluePrint 网站下载并安装 Solaris Fingerprint Database Companion 和 Solaris Fingerprint Database Sidekick 软件:
http://www.sun.com/blueprints/tools
安装这些可选工具并与 MD5 软件一起使用。这些工具简化了通过 MD5 校验和数据库验证系统二进制文件的过程。需要经常使用这些工具来验证安全的系统上 Solaris OS 二进制和文件的完整性。
这些工具及相关下载指导在 Sun BluePrints OnLine 上名为“The Solaris Fingerprint Database -- A Security Tool for Solaris Software and Files”的文章中可以找到。
需要验证下载的安全性工具的完整性。在安装和运行 Solaris Security Toolkit 软件及附加安全性软件前,请使用 MD5 校验和验证其完整性。在 Solaris Security Toolkit 下载页面上,可以获得用于该用途的 MD5 校验和。
很多安全性配置文件模板是作为驱动程序包含在 Solaris Security Toolkit 软件分发版本中的。正如前面章节所述,缺省的安全性配置文件和由这些驱动程序进行的更改很可能并不适用于您的系统。由驱动程序实现的安全性配置文件禁用了那些不需要的服务,并启用了缺省情况下禁用的可选的安全功能。
在运行 Solaris Security Toolkit 软件之前,请查看并定制环境的缺省安全性配置文件,或者开发新的文件。Sun BluePrints 书籍《Securing Systems with the Sun Security Toolkit》提供了定制安全性配置文件的技巧和准则。
在执行 Solaris Security Toolkit 软件前完成以下预备任务是很重要的。运行 Solaris Security Toolkit 软件时,会自动完成大部分加强安全性工作。
可以直接从命令行或 JumpStart 服务器上执行 Solaris Security Toolkit 软件。
代码示例 3-2 显示独立模式下命令行使用的样例。
表 3-1 列出了可用的命令行选项并逐个进行说明。
有关在独立模式下可与 jass-execute 命令一同使用的选项的详细信息,请参阅以下几节:
有关可用的驱动程序的完整列表,请参见 Drivers 目录。新的软件版本可能包含额外的驱动程序。
|
1. 执行secure.driver(或产品的专用脚本,例如 sunfire_15k_sc-secure.driver),如下所示。
有关可用的驱动程序的完整列表,请参见 Drivers 目录。新的软件版本可能包含额外的驱动程序。
2. 在系统上运行 Solaris Security Toolkit 软件后,请重新引导系统以执行更改。
在加强安全性过程中,需要对客户机的配置做大量修改。这些更改可能包括禁用服务启动脚本,禁用服务选项和通过修补程序安装新的二进制文件或库。只有客户机重新启动后,这些更改才可能生效。
请参阅验证系统修改。
4. 如果出现任何错误,请进行修正并再次在独立模式下运行 Solaris Security Toolkit 软件。
通过 -a 选项,Solaris Security Toolkit 软件能够进行审计运行,以确定系统是否与其安全性配置文件相兼容。此运行不仅验证系统文件修改是否仍然起作用,还验证之前禁用的过程是否在运行或者删除的软件包是否已重新安装。有关此功能的更多信息,请参阅第 6 章。
-h 选项显示 jass-execute 帮助信息,提供了可用选项的概述。
必须用 -d 选项指定驱动程序。Solaris Security Toolkit 软件将 Drivers/ 附加在所添加脚本的名称之前。因此只需在命令行中输入脚本名称。
使用了 -d driver 选项的 jass-execute 加强安全性运行操作产生的输出类似于以下内容:
-m email-address 选项提供了一种机制,通过该机制,Solaris Security Toolkit 软件可在运行完成后将独立加强安全性运行操作和撤消运行操作的输出用电子邮件发送出去。使用其他选项除了可在系统上生成日志外,还可生成电子邮件报告。
使用电子邮件选项调用 sunfire_15k_sc-config.driver 的 Solaris Security Toolkit 运行类似于以下内容:
-H 选项提供一种确定 Solaris Security Toolkit 软件在系统中已运行多少次的简单机制。该选项将列出所有的运行,无论其撤消与否。
此输出表明,Solaris Security Toolkit 软件已在系统上运行了三次,且最后一次运行被撤消。
-l 选项提供了确定最近一次运行的机制。这通常是-H 选项列出的最后一次运行。
-o output-file 选项将 jass-execute 的控制台输出重定向到一个单独的文件 (output-file)。
此选项不影响 JASS_REPOSITORY 目录内的日志。此选项对于在较慢的终端连接上运行特别有帮助,因为 Solaris Security Toolkit 运行会产生大量输出。
# ./jass-execute -o jass-output.txt -d secure.driver [NOTE] Executing driver, secure.driver [NOTE] Recording output to jass-output.txt |
在加强安全性运行操作中,-q 选项可禁止 Solaris Security Toolkit 输出到标准输入输出 (stdio) 流。
此选项不影响 JASS_REPOSITORY 目录内的日志。与 -o 选项类似,此选项特别有助于通过 cron(时钟守护进程)作业或较慢的网络连接来运行 Solaris Security Toolkit 软件。
-r root-directory 选项用于在运行 jass-execute 时指定根目录。使用 -r 选项还需要使用 -p 选项指定平台 (OS) 版本。-p 选项的格式与 uname -r 产生的格式相同。
缺省情况下,文件系统根目录是 /。此根目录由 Solaris Security Toolkit 环境变量 JASS_ROOT_DIR 进行定义。可通过/ 访问要保护的 Solaris OS。例如,如果要保护一个独立的 OS 目录,请临时在 /mnt下装入,然后使用 -r 选项指定 /mnt。则会将所有脚本应用到该 OS 映像。
通过 -u 选项,Solaris Security Toolkit 软件可以在加强安全性过程中撤消系统修改。每个 finish 脚本都可以通过 -u 选项来撤消。此外,Solaris Security Toolkit 的撤消功能与每次运行时所产生的校验和紧密相关。有关此功能的更多信息,请参阅第 4 章。
JumpStart 模式由插入到 JumpStart 服务器上 rules 文件中的 Solaris Security Toolkit 驱动程序控制。
如果未将环境配置为使用 JumpStart 模式,请参阅第 5 章。
有关 JumpStart 技术的更多信息,请参阅 Sun BluePrints 书籍《JumpStart Technology: Effective Use in the Solaris Operating Environment》。
|
要在 JumpStart 模式下执行 Solaris Security Toolkit 软件,必须将其集成到 JumpStart 环境中并作为和 JumpStart 安装相关的 finish 脚本的一部分进行调用。有关如何将 Solaris Security Toolkit 软件集成到系统中的信息,请参阅第 5 章。
1. 完成对驱动程序的所有必要修改后,请使用 JumpStart 基础结构安装客户机。
系统的配置应该正确。在加强安全性过程中,需要对客户机的配置做大量修改。这些修改可能包括禁用服务启动脚本,禁用服务选项和通过修补程序安装新的二进制文件或库。只有客户机重新启动后,这些更改才可能生效。
请参阅验证系统修改。
重新引导系统后,按照以下几节所述对修改的正确性和完整性进行验证。
保证系统安全的重大挑战之一是,确定必须使哪些 OS 服务处于启用状态以使系统正常运行。由于要直接使用 Solaris OS 服务(例如,用于登录系统的 Secure Shell),因此可能需要它们。或者间接使用它们,例如使用第三方软件管理工具的图形用户界面的远程过程调用 (RPC) 守护进程。
在运行 Solaris Security Toolkit 软件之前,应该确定这些要求中的大部分。(请参阅确定应用程序和服务要求)。然而,唯一确定的机制是安装并保护系统安全,然后通过质量保证 (QA) 测试对其所要求的功能进行完全测试。在加强系统安全性后,要对所有新系统正确地执行 QA 计划。类似的,对于要加强安全性的经过部署的系统,需要进行完全的测试以确保其具备了所有要求的和所期望的功能。
1. 根据第 2 章中的准则,确定问题出现区域。
3. 撤消 Solaris Security Toolkit 运行。
5. 再次运行 Solaris Security Toolkit 软件。
最终结果应为一个安全性配置文件,它可在系统上运行而不对任何所需的功能产生负面影响。
在验证系统可执行所有需要的功能时,还要对安全性配置做出评估,以确定系统是否达到需要的安全级别。根据在系统上执行的加强安全性及最小化系统操作,这种评估可能涉及不同的方面。
对于新构建的并已保护安全的系统,至少应该考虑到这种检查。在加强传统系统的安全性时,需要检查底层的 OS 以确定是否执行了未授权的修改。对于这种完整性检查,最好在只读模式下装入系统的文件系统,然后从一个已知 OS 实例上运行完整性检查软件。在 Sun BluePrints OnLine 上名为“The Solaris Fingerprint Database -- A Security Tool for Solaris Software and Files”的文章所介绍的工具在这些情况下非常有用。
在保护系统安全并且已经验证了所需的服务和功能后,请使用审计功能以确保正确且完全地应用了安全性配置文件。此任务非常关键,原因有两个。第一,要确保按照要求加强了系统的安全性。第二,要确保为系统定义的安全性配置文件正确地反映在了 Solaris Security Toolkit 配置中。由于配置信息用于在系统的整个部署生命周期中维护系统的安全性配置文件,因此这种检查十分重要。
有关审计功能的更多信息,请参阅第 6 章。
如果在一台经过部署的系统上安装软件,请参阅执行安装后的任务,以了解有关在经过部署的系统上执行安装后任务的信息。
Copyright © 2004, Sun Microsystems, Inc. 保留所有权利