可以通过以下方法之一自定义清单:
通过指定子树
为系统上的单个子树(而不是大型目录的全部内容)创建清单是监视特定文件更改的有效方法。您可以创建系统上特定子树的基准清单,然后定期创建同一子树的测试清单。使用 bart compare 命令将控制清单与测试清单进行比较。使用此选项,可以有效地监视重要的文件系统以确定是否有任何文件受到入侵者的威胁。
通过指定文件名
由于创建列出整个系统的清单耗时更多,占用空间的更多,所需的开销更大,因此可在仅需要列出有关系统上一个或多个特定文件的信息时选择使用此 bart 命令选项。
通过使用 rules 文件
可以使用 rules 文件创建列出有关给定系统上特定文件和特定子树的信息的自定义清单,也可以使用 rules 文件来监视特定的文件属性。使用 rules 文件创建和比较清单使您能够灵活地为多个文件或子树指定多个属性。而使用命令行只能指定应用于所创建的每份清单或所生成的每个报告的所有文件的全局属性定义。
确定要列出和监视的文件。
承担主管理员角色,或成为超级用户。
主管理员角色拥有主管理员配置文件。要创建角色并将角色指定给用户,请参见《系统管理指南:基本管理》中的第 2 章 “使用 Solaris Management Console(任务)”。
安装 Solaris 软件之后,使用以下选项之一创建自定义清单:
通过指定子树:
# bart create -R root-directory |
通过指定一个或多个文件名:
# bart create -I filename... |
例如:
# bart create -I /etc/system /etc/passwd /etc/shadow |
通过使用 rules 文件:
# bart create -r rules-file |
检查清单内容。
保存清单以便将来使用。
此示例说明了如何创建仅包含有关 /etc/ssh 子树中文件的信息的清单。
# bart create -R /etc/ssh ! Version 1.0 ! Saturday, November 29, 2003 (14:05:36) # 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 512 40755 user::rwx,group::r-x,mask:r-x,other:r-x 3f81eab9 0 3 /ssh_config F 861 100644 user::rw-,group::r--,mask:r--, other:r-- 3f81e504 0 3 422453ca0e2348cd9981820935600395 /ssh_host_dsa_key F 668 100600 user::rw-,group::---,mask:---, other:--- 3f81eab9 0 0 5cc28cdc97e833069fd41ef89e4d9834 /ssh_host_dsa_key.pub F 602 100644 user::rw-,group::r--,mask:r--, other:r-- 3f81eab9 0 0 16118c736995a4e4754f5ab4f28cf917 /ssh_host_rsa_key F 883 100600 user::rw-,group::---,mask:---, other:--- 3f81eaa2 0 0 6ff17aa968ecb20321c448c89a8840a9 /ssh_host_rsa_key.pub F 222 100644 user::rw-,group::r--,mask:r--, other:r-- 3f81eaa2 0 0 9ea27617efc76058cb97aa2caa6dd65a . . . |
此示例说明了如何创建仅列出有关系统上 /etc/passwd 和 /etc/shadow 文件的信息的清单。
# bart create -I /etc/passwd /etc/shadow ! Version 1.0 ! Monday, December 15, 2003 (16:28:55) # 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 /etc/passwd F 542 100444 user::r--,group::r--,mask:r--, other:r-- 3fcfd45b 0 3 d6 84554f85d1de06219d80543174ad1a /etc/shadow F 294 100400 user::r--,group::---,mask:---, other:--- 3f8dc5a0 0 3 fd c3931c1ae5ee40341f3567b7cf15e2 |
下面以比较的方式列出了同一系统上 /etc/passwd 和 /etc/shadow 文件的 ls - al 命令的标准输出。
# ls -al /etc/passwd -r--r--r-- 1 root sys 542 Dec 4 17:42 /etc/passwd |
# ls -al /etc/shadow -r-------- 1 root sys 294 Oct 15 16:09 /etc/shadow |
此示例说明了如何通过使用 rules 文件仅列出 /etc 目录中的文件来创建清单。同一个 rules 文件还包括由 bart compare 命令用于监视 /etc/system 文件的 acl 属性更改的指令。
使用文本编辑器创建仅列出 /etc 目录中文件的 rules 文件。
# List information about all the files in the /etc directory. CHECK all /etc # Check only acl changes in the /etc/system file IGNORE all CHECK acl /etc/system |
有关创建 rules 文件的更多信息,请参见BART Rules 文件。
使用已创建的 rules 文件创建控制清单。
# bart create -r etc.rules-file > etc.system.control-manifest ! Version 1.0 ! Thursday, December 11, 2003 (21:51:32) # 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 /etc/system F 1883 100644 user::rw-,group::r--,mask:r--, other:r-- 3f81db61 0 3 |
在每次需要监视系统的更改时创建测试清单。使用相同的 bart 选项和同一个 rules 文件并按照与控制清单完全相同的方式来准备测试清单。
使用同一个 rules 文件比较清单。