JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris 11.1 管理:安全服务     Oracle Solaris 11.1 Information Library (简体中文)
search filter icon
search icon

文档信息

前言

第 1 部分安全性概述

1.  安全性服务(概述)

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

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

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

4.  病毒扫描服务(任务)

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

6.  使用 BART 验证文件完整性(任务)

BART(概述)

BART 功能

BART 组件

BART 清单

BART 报告

BART Rules 文件

使用 BART(任务)

BART 安全注意事项

使用 BART(任务列表)

如何创建控制清单

如何定制清单

如何比较同一个系统在一段时间内的清单

如何比较不同系统的清单

如何通过指定文件属性定制 BART 报告

如何通过使用 Rules 文件定制 BART 报告

BART 清单、Rules 文件和报告(参考信息)

BART 清单文件格式

BART Rules 文件格式

Rules 文件属性

引用语法

BART 报告

BART 输出

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

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

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

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

10.  Oracle Solaris 中的安全属性(参考信息)

第 4 部分加密服务

11.  加密框架(概述)

12.  加密框架(任务)

13.  密钥管理框架

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

14.  使用可插拔验证模块

15.  使用 安全 Shell

16.  安全 Shell(参考信息)

17.  使用简单验证和安全层

18.  网络服务验证(任务)

第 6 部分Kerberos 服务

19.  Kerberos 服务介绍

20.  规划 Kerberos 服务

21.  配置 Kerberos 服务(任务)

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

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

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

25.  Kerberos 服务(参考信息)

第 7 部分在 Oracle Solaris 中审计

26.  审计(概述)

27.  规划审计

28.  管理审计(任务)

29.  审计(参考信息)

词汇表

索引

使用 BART(任务)

bart 命令用来创建和比较清单。任何用户都可以运行此命令。不过,用户只能对他们有权访问的文件进行编目和监视。因此,用户和大多数角色都可以有效地对其起始目录中的文件进行编目,但 root 帐户可以对所有文件进行编目,包括系统文件。

BART 安全注意事项

任何人都可以读取 BART 清单和报告。如果 BART 输出包含敏感信息,请采取适当的措施来保护输出。例如,使用可生成具有限制性权限的输出文件的选项,或将输出文件置于受保护的目录中。

使用 BART(任务列表)

任务
说明
参考
创建 BART 清单。
生成有关系统上安装的每个文件的信息列表。
创建定制 BART 清单。
生成有关系统上安装的特定文件的信息列表。
比较 BART 清单。
生成比较一个系统在一段时间内发生的更改的报告。

或者,生成将一个或几个系统与控制系统比较的报告。

(可选的)定制 BART 报告。
通过以下方法之一生成定制 BART 报告:
  • 指定属性

  • 使用 rules 文件

如何创建控制清单

此过程介绍了如何为系统创建基线清单。基于一个中心映像安装多个系统时,可使用此类清单。或者,在需要确认安装完全一致时使用此类清单运行比较。有关基准线清单的更多信息,请参见BART 清单。要了解格式约定,请参见示例 6-1


注 - 不要尝试对联网的文件系统进行编目。使用 BART 监视联网的文件系统会占用大量的资源,但生成的清单价值很小。


开始之前

要为您的系统创建控制清单,您必须承担 root 角色。

  1. 在对您的 Oracle Solaris 系统进行定制以满足您的站点的安全要求后,请创建一个控制清单并将输出重定向到一个文件。
    # bart create options > control-manifest
    -R

    指定清单的根目录。由规则指定的所有路径都会被解释为此目录的相对路径。清单中报告的所有路径均为此目录的相对路径。

    -I

    接受要在目录中列出的单个文件的列表(无论是从命令行执行此选项,还是从标准输入中读取此选项)。

    -r

    此清单的 rules 文件的名称。- 参数从标准输入中读取规则文件。

    -n

    禁用文件列表中所有常规文件的内容签名。此选项可用于改善性能。或者,可以在需要更改文件列表的内容时使用此选项,这与系统日志文件的情况类似。

  2. 检查清单的内容。

    有关格式的说明,请参见示例 6-1

  3. 可选对清单进行保护。

    用来保护系统清单的一种方法是将其置于只有 root 帐户可以访问的目录中。

    # mkdir /var/adm/log/bartlogs
    # chmod 700 /var/adm/log/bartlogs
    # mv control-manifest /var/adm/log/bartlogs

    为清单选择一个有意义的名称。例如,使用创建清单的系统名称及日期 (mach1-120312)。

示例 6-1 BART 清单格式说明

在本示例中,样例输出后面是对清单格式的说明。

# bart create
! Version 1.1
! HASH SHA256
! Friday, September 07, 2012 (22:22:27)
# Format:
#fname D size mode acl dirmtime uid gid
#fname P size mode acl mtime uid gid
#fname S size mode acl mtime uid gid
#fname F size mode acl mtime uid gid contents
#fname L size mode acl lnmtime uid gid dest
#fname B size mode acl mtime uid gid devnode
#fname C size mode acl mtime uid gid devnode
/ D 1024 40755 user::rwx,group::r-x,mask:r-x,other:r-x
3ebc418eb5be3729ffe7e54053be2d33ee884205502c81ae9689cd8cca5b0090 0 0
.
.
.
/zone D 512 40755 user::rwx group::r-x,mask:r-x,other:r-x 3f81e892
154de3e7bdfd0d57a074c9fae0896a9e2e04bebfe5e872d273b063319e57f334 0 0
.
.
.

每个清单都包括一个文件头和多个文件项。每个文件项均单独占据一行,具体取决于文件类型。例如,对于以上输出中的每个文件项,类型 F 指定文件,而类型 D 指定目录。同时列出的还有关于大小、内容、用户 ID、组 ID 和权限的信息。输出中的文件项按文件名的编码版本顺序排列,以便正确地处理特殊字符。所有项均按文件名以升序排列。所有非标准文件名(例如那些包含嵌入的换行符或制表符的文件名)都会在排序之前将非标准字符用引号括起来。

! 开头的行提供有关清单的元数据。清单版本行指明清单规范版本。散列行指明所使用的散列机制。有关用作校验和的 SHA256 散列的更多信息,请参见 sha2(3EXT) 手册页。

日期行以日期格式显示清单的创建日期。请参见 date(1) 手册页。清单比较工具会忽略某些行。被忽略的行包括元数据、空白行、仅包含空格的行,以及以 # 开头的注释。

如何定制清单

可以通过以下方法之一定制清单:

开始之前

您必须承担 root 角色。有关更多信息,请参见如何使用指定给您的管理权限

  1. 确定要在目录中列出和监视的文件。
  2. 使用下列选项之一创建一个定制清单:
    • 指定子树:

      # bart create -R subtree
    • 指定一个或多个文件名:

      # bart create -I filename...

      例如:

      # bart create -I /etc/system /etc/passwd /etc/shadow
    • 使用 rules 文件:

      # bart create -r rules-file
  3. 检查清单的内容。
  4. 可选将清单保存在受保护的目录中供将来使用。

    有关示例,请参见如何创建控制清单中的步骤 3


    提示 - 如果您使用了规则文件,请将规则文件与清单保存在一起。为进行有效的比较,在运行比较时必须使用该规则文件。


如何比较同一个系统在一段时间内的清单

通过比较清单随时间的变化,您可以找出损坏或异常的文件、检测安全违规或排除系统的性能问题。

开始之前

要创建并比较包含系统文件的清单,您必须承担 root 角色。

  1. 创建一个包含要在系统上监视的文件的控制清单。
    # bart create -R /etc > control-manifest
  2. 可选将清单保存在受保护的目录中供将来使用。

    有关示例,请参见如何创建控制清单中的步骤 3

  3. 在以后的某个时间,准备一个与控制清单完全相同的清单。
    # bart create -R /etc > test-manifest
  4. 对第二个清单进行保护。
    # mv test-manifest /var/adm/log/bartlogs
  5. 比较这两个清单。

    在对清单进行比较时请使用创建它们时所用的相同命令行选项和规则文件。

    # bart compare options control-manifest test-manifest > bart-report
  6. 检查 BART 报告中的异常情况。

示例 6-2 跟踪同一系统中文件在一段时间内的变化

本示例说明了如何跟踪 /etc 目录在一段时间内的变化。通过此类比较,您可以查明系统上的重要文件是否受到安全威胁。

此输出表明自控制清单创建以来,audit_class 文件的修改时间已发生变化。如果出现意外变化,您可以进一步进行调查。

如何比较不同系统的清单

通过比较来自不同系统的清单,您可以确定系统是否是以完全相同的方式安装的,或者系统是否已同步升级。例如,如果您为系统定制了特定的安全目标,该比较将查找代表您的安全目标的清单与来自其他系统的清单之间的任何差异。

开始之前

要比较系统清单,您必须承担 root 角色。

  1. 创建控制清单。
    # bart create options > control-manifest

    有关选项,请参见 bart(1M) 手册页。

  2. 可选将清单保存在受保护的目录中供将来使用。

    有关示例,请参见如何创建控制清单中的步骤 3

  3. 在测试系统上,使用相同的 bart 选项创建一个清单。
    # bart create options > test1-manifest
  4. 可选将清单保存在受保护的目录中供将来使用。
  5. 要进行比较,请将清单复制到一个中央位置。

    例如:

    # cp control-manifest /net/ test-server/var/adm/logs/bartlogs

    如果测试系统不是 NFS 挂载的系统,请使用 sftp 或其他可靠方法将清单复制到一个中央位置。

  6. 比较清单并将输出重定向到一个文件。
    # bart compare control-manifest test1-manifest > test1.report
  7. 检查 BART 报告中的异常情况。

示例 6-3 识别 /usr/bin 目录中的可疑文件

本示例比较两个系统上 /usr/bin 目录中的内容。

此输出表明 /usr/bin 目录中 su 文件的组 ID 与控制系统中的相应组 ID 不同。此信息可能表明测试系统上安装了不同的软件版本。因为 GID 已更改,所以很有可能是有人篡改了此文件。

如何通过指定文件属性定制 BART 报告

此过程对于从现有清单的输出中过滤特定文件属性非常有用。

开始之前

您必须承担 root 角色。有关更多信息,请参见如何使用指定给您的管理权限

  1. 确定要检查的文件属性。
  2. 比较包含要检查的文件属性的两个清单。

    例如:

    # bart compare -i lnmtime,mtime control-manifest.121511 \ 
    test-manifest.010512 > bart.report.010512

    在命令行语法中使用逗号分隔每个文件属性。

  3. 检查 BART 报告中的异常情况。

如何通过使用 Rules 文件定制 BART 报告

通过使用规则文件,您可以为您关注的特定文件和文件属性定制 BART 清单。通过使用缺省 BART 清单上的不同规则文件,您可以为相同的清单运行不同的比较。

开始之前

您必须承担 root 角色。有关更多信息,请参见如何使用指定给您的管理权限

  1. 确定需要监视的文件和文件属性。
  2. 创建包含合适指令的一个规则文件。
  3. 使用所创建的规则文件创建控制清单。
    # bart create -r myrules1-file > control-manifest
  4. 可选将清单保存在受保护的目录中供将来使用。

    有关示例,请参见如何创建控制清单中的步骤 3

  5. 在其他系统上或在以后的某个时间创建一个完全相同的清单,或者以后的某个时间在其他系统上创建一个完全相同的清单。
    # bart create -r myrules1-file > test-manifest
  6. 使用同一个 rules 文件比较清单。
    # bart compare -r myrules1-file control-manifest test-manifest > bart.report
  7. 检查 BART 报告中的异常情况。

示例 6-4 使用规则文件定制 BART 清单和比较报告

以下规则文件指示 bart create 命令列出 /usr/bin 目录中的文件的所有属性。此外,该规则文件还指示 bart compare 命令仅报告同一个目录的大小和内容的更改。

# Check size and content changes in the /usr/bin directory.
# This rules file only checks size and content changes.
# See rules file example.

IGNORE all
CHECK size contents
/usr/bin

之前的输出表明删除了 /usr/bin/ypcat 文件,添加了 /usr/bin/gunzip 文件。