通过从主菜单启动 + 打开 YaST GUI。Novell AppArmor 在 YaST 界面中打开,如下所示:
![]() | 注意 |
|---|---|
您也可以通过打开终端窗口,然后作为 root 用户登录并输入 yast2,而访问 YaST GUI。 | |
![]() |
在右窗格中,您可以看到一些 Novell AppArmor 选项图标。如果 YaST 窗口的左窗格中没有显示 Novell AppArmor,或者没有显示 Novell AppArmor 图标,您可能需要重装 Novell AppArmor。在 Novell AppArmor 中可以执行以下操作。
单击以下 Novell AppArmor 图标中的一个,然后进入下面引用的部分:
有关详细步骤,请参见第 3.3.1 节 “使用向导添加配置文件” (↑Novell AppArmor 2.0 管理指南)。
不借助向导而为系统上的应用程序添加 Novell AppArmor 配置文件。有关详细步骤,请参见第 3.3.2 节 “手动添加配置文件” (↑Novell AppArmor 2.0 管理指南)。
编辑系统上已有的 Novell AppArmor 配置文件。有关详细步骤,请参见第 3.3.3 节 “编辑配置文件” (↑Novell AppArmor 2.0 管理指南)。
删除系统上已有的 Novell AppArmor 配置文件。有关详细步骤,请参见第 3.3.4 节 “删除配置文件” (↑Novell AppArmor 2.0 管理指南)。
有关详细步骤,请参见第 3.3.5 节 “通过 Syslog 条目更新配置文件” (↑Novell AppArmor 2.0 管理指南)。
有关详细步骤,请参见第 4.3 节 “报告” (↑Novell AppArmor 2.0 管理指南)。
有关详细步骤,请参见第 3.3.6 节 “管理 Novell AppArmor 和安全事件状态” (↑Novell AppArmor 2.0 管理指南)。
被设计用于使用 Novell AppArmor 配置文件构建工具、genprof(生成配置文件)和 logprof(通过学习模式日志文件来更新配置文件)来建立 Novell AppArmor 配置文件。有关这些工具的详细信息,请参见第 3.5.3 节 “构建配置文件的工具汇总” (↑Novell AppArmor 2.0 管理指南)。
在构建配置文件前请停止应用程序,以确保配置文件中包含应用程序启动。为此,请确保构建配置文件前应用程序或守护程序不在运行。
例如,在以 root 用户身份登录的情况下在终端窗口输入 /etc/init.d/PROGRAM stop,其中请替换 PROGRAM,它是要构建配置文件的程序的名称。
如果尚未这样做,请在 YaST GUI 中单击 +。
![]() |
输入应用程序的名称或浏览到程序的位置。
单击。这会运行一个名为 autodep 的 Novell AppArmor 工具,此工具会对要构建配置文件的程序执行一次静态分析,然后将大概的配置文件装载到 Novell AppArmor 模块。有关 autodep 的详细信息,请参见第 3.5.3.1 节 “autodep” (↑Novell AppArmor 2.0 管理指南)。
窗口打开。
![]() |
在后台中,Novell AppArmor 也将配置文件设置为学习模式。有关学习模式的详细信息,请参见第 3.5.3.2 节 “提示或学习模式” (↑Novell AppArmor 2.0 管理指南)。
运行正在构建配置文件的应用程序。
请执行尽可能多的应用程序功能,这样学习模式可以记录程序正常工作时需要访问的文件和目录。
单击以分析学习模式日志文件。这会生成一连串问题,您必须回答这些问题以指导向导生成安全配置文件。
![]() | 注意 |
|---|---|
如果出现添加帽子的请求,请进入第 5 章 使用 ChangeHat Apache 构建万维网应用程序的配置文件 (↑Novell AppArmor 2.0 管理指南)。 | |
问题分为两类:
构建配置文件的程序访问了配置文件中没有的资源(请参见图 3.1 “学习模式例外:控制对特定资源的访问” (↑Novell AppArmor 2.0 管理指南))。学习模式例外要求您允许或拒绝对特定资源的访问。
构建配置文件的程序执行了一个程序,而安全域转换尚未定义(请参见图 3.2 “学习模式例外:定义条目的执行权限” (↑Novell AppArmor 2.0 管理指南))。学习模式例外要求您定义条目的执行权限。
这两种情况都会生成一连串问题,您必须回答这些问题,以将资源添加到配置文件或将程序添加到配置文件。下面两个图显示了两种情况下的示例。后续步骤将说明回答这些问题时的选项。
窗口打开。
开始提示您正在构建配置文件的应用程序曾访问的目录路径条目(见图 3.1 “学习模式例外:控制对特定资源的访问” (↑Novell AppArmor 2.0 管理指南)),或要求您定义条目的执行权限(见图 3.2 “学习模式例外:定义条目的执行权限” (↑Novell AppArmor 2.0 管理指南))。
对于 (↑Novell AppArmor 2.0 管理指南):在以下选项中,选择可以满足对访问的请求的一项,可以是建议的 include、特定通配形式的路径或实际路径名。请注意,并非所有选项都始终可用。
#includeNovell AppArmor 配置文件中指向一个 include 文件的部分。include 文件会提取程序的访问权限。通过使用 include,您可以向程序赋予访问其它程序也需要的目录路径和文件的权限。使用 include 可减小配置文件的大小。选择建议的 include 是不错的做法。
按照下一步的介绍通过单击进行访问。有关通配语法的更多信息,请参见第 3.6 节 “路径名和通配” (↑Novell AppArmor 2.0 管理指南)。
要正常运行,程序需要访问的实际路径。
对于 (↑Novell AppArmor 2.0 管理指南):在以下选项中,选择满足对访问的请求的一项。
保持相同的安全配置文件(父配置文件)。
要求对被执行的程序存在一个单独的配置文件。
在不具备安全配置文件的情况下执行程序。
![]() | 警告 |
|---|---|
在没有绝对必要的情况下,不要选择无限制选项。选择选项会在不受 AppArmor 保护的情况下执行新程序. | |
选择一个目录路径后,您必须单击或,从而将它以条目的形式加入到 Novell AppArmor 配置文件中。如果您对显示的目录路径不满意,您也可以使用或进行。
以下选项用于处理学习模式条目和构建配置文件:
授予程序访问指定目录路径条目的权限。会建议文件访问权限。有关更多信息,请参见第 3.7 节 “文件访问权限模式” (↑Novell AppArmor 2.0 管理指南)。
单击可防止程序访问指定的目录路径条目。
单击它可修改目录路径(通过使用通配符),以将建议的条目路径下的所有文件包含在内。双击它可将访问权限授予显示的目录下的所有文件和子目录。
有关通配语法的详细信息,请参见第 3.6 节 “路径名和通配” (↑Novell AppArmor 2.0 管理指南)。
在保留文件扩展名的情况下修改原来的目录路径。单击时 /etc/apache2/file.ext 将变成 /etc/apache2/*.ext,文件名被通配符(星号)替换。这样程序就可以访问建议目录下以 .ext 为扩展名的所有文件。双击时可将访问权限授予显示的目录下的所有文件(带有特定扩展名)和子目录。
允许您编辑突出显示的行。新(编辑后的)行显示在列表底部。
中止 logprof,取消到目前为止输入的所有规则更改,保留所有配置文件不作修改。
关闭 logprof,保留到目前为止输入的所有规则更改,修改所有配置文件。
为每个学习模式条目单击或。这可帮助您构建 Novell AppArmor 配置文件。
![]() | 注意 |
|---|---|
学习模式条目的数目与应用程序的复杂程度相对应。 | |
若要执行应用程序的更多功能,请重复前面的步骤。
完成后,单击。在随后的弹出窗口,单击以退出。此时配置文件被保存并装载到 Novell AppArmor 模块。
Novell AppArmor 允许您手动将条目添加到配置文件,以创建 Novell AppArmor 配置文件。您只需选择要创建配置文件的应用程序然后添加条目。
要添加配置文件,请打开 +。Novell AppArmor 界面打开。
在 中,单击(请参见图 3.3 “手动添加配置文件:选择应用程序” (↑Novell AppArmor 2.0 管理指南))。
浏览系统以找到要创建配置文件的应用程序。
找到配置文件后,选择它并单击。窗口中将出现一个空的基本配置文件。
![]() |
在 窗口中,您可以添加、编辑或删除 Novell AppArmor 配置文件,方法是单击对应的按钮并参考以下小节:第 3.3.2.1 节 “添加条目” (↑Novell AppArmor 2.0 管理指南)、第 3.3.2.2 节 “编辑条目” (↑Novell AppArmor 2.0 管理指南)或第 3.3.2.2 节 “编辑条目” (↑Novell AppArmor 2.0 管理指南)。
完成后,单击。
本节介绍选项,在第 3.3.2 节 “手动添加配置文件” (↑Novell AppArmor 2.0 管理指南)或第 3.3.3 节 “编辑配置文件” (↑Novell AppArmor 2.0 管理指南)可看到此选项。选择后会出现一个下拉列表,显示您可以添加到 Novell AppArmor 配置文件的条目类型。
在列表中选择以下选项之一:
在弹出窗口中,指定文件的绝对路径,包括允许的访问类型。完成后,单击。
必要时,您可以使用通配。有关通配的详细信息,请参见第 3.6 节 “路径名和通配” (↑Novell AppArmor 2.0 管理指南)。有关文件访问权限的详细信息,请参见第 3.7 节 “文件访问权限模式” (↑Novell AppArmor 2.0 管理指南)。
![]() |
在弹出窗口中,指定目录的绝对路径,包括允许的访问类型。必要时,您可以使用通配。完成后,单击。
有关通配的详细信息,请参见第 3.6 节 “路径名和通配” (↑Novell AppArmor 2.0 管理指南)。有关文件访问权限的详细信息,请参见第 3.7 节 “文件访问权限模式” (↑Novell AppArmor 2.0 管理指南)。
![]() |
在对话窗口中,选择适当的功能。这些语句用于启用 32 个 POSIX.1e 功能。有关功能的详细信息,请参见第 3.1.1 节 “将 Novell AppArmor 配置文件分割成多个部分” (↑Novell AppArmor 2.0 管理指南)。完成选择后,单击。
![]() |
在弹出窗口中,浏览到要用作 include 的文件。include 是可以导入其它 Novell AppArmor 配置文件的组件以简化配置文件的指令。有关详细信息,请参见第 3.1.2 节 “#include” (↑Novell AppArmor 2.0 管理指南)。
![]() |
本节介绍选项,在第 3.3.2 节 “手动添加配置文件” (↑Novell AppArmor 2.0 管理指南)或第 3.3.3 节 “编辑配置文件” (↑Novell AppArmor 2.0 管理指南)可看到此选项。选择时,文件浏览器弹出窗口会打开。您可以在此处编辑所选条目。
在弹出窗口中,指定文件的绝对路径,包括允许的访问类型。必要时,您可以使用通配。完成后,单击。
有关通配的详细信息,请参见第 3.6 节 “路径名和通配” (↑Novell AppArmor 2.0 管理指南)。有关文件访问权限的详细信息,请参见第 3.7 节 “文件访问权限模式” (↑Novell AppArmor 2.0 管理指南)。
![]() |
本节介绍选项,在第 3.3.2 节 “手动添加配置文件” (↑Novell AppArmor 2.0 管理指南)或第 3.3.3 节 “编辑配置文件” (↑Novell AppArmor 2.0 管理指南)可看到此选项。选择一个条目,然后选择,Novell AppArmor 会删除您选择的配置文件条目。
Novell AppArmor 允许您通过添加、编辑或删除条目来手动编辑 Novell AppArmor 配置文件。您只需选择配置文件,然后添加、编辑或删除条目。要编辑配置文件,请执行以下步骤:
打开 +。
在 中,单击。窗口打开。
![]() |
在一个已构建配置文件的程序列表中,选择要编辑的配置文件。
单击。此时 窗口会显示配置文件。
![]() |
在 窗口中,您可以添加、编辑或删除 Novell AppArmor 配置文件,方法是单击对应的按钮并参考以下小节:第 3.3.2.1 节 “添加条目” (↑Novell AppArmor 2.0 管理指南)、第 3.3.2.2 节 “编辑条目” (↑Novell AppArmor 2.0 管理指南)或第 3.3.2.3 节 “删除条目” (↑Novell AppArmor 2.0 管理指南)。
完成后,单击。
在显示的弹出窗口中,单击以确认对配置文件所作的更改。
Novell AppArmor 允许您手动删除 Novell AppArmor 配置文件。您只需选择要删除配置文件的应用程序,然后执行以下操作进行删除:
Novell AppArmor 配置文件向导使用 logprof 工具来扫描日志文件并更新配置文件。logprof 跟踪来自 Novell AppArmor 模块的消息,这些消息代表系统上运行的所有配置文件的例外。这些例外代表构建了配置文件的应用程序的行为,它们超出了程序的配置文件定义。您可以选择建议的配置文件条目,以将新的行为添加到相关的配置文件。
打开 +。将显示 Novell AppArmor 界面。
在 中,单击。此时显示 窗口。
![]() |
运行 (logprof) 对学习模式日志文件进行分析。这会生成一连串问题,您必须回答这些问题以指导 logprof 生成安全配置文件。
问题分为两类:
构建配置文件的程序访问了配置文件中没有的资源(请参见图 3.4 “学习模式例外:控制对特定资源的访问” (↑Novell AppArmor 2.0 管理指南))。
构建配置文件的程序执行了一个程序,而安全域转换尚未定义(请参见图 3.5 “学习模式例外:定义条目的执行权限” (↑Novell AppArmor 2.0 管理指南))。
这两种情况都会生成一个问题,您必须回答此问题以将资源或程序添加到配置文件。下面两个图显示了两种情况下的示例。后续步骤将说明回答这些问题时的选项。
logprof 开始提示您正在构建配置文件的应用程序曾访问的目录路径条目(见图 3.4 “学习模式例外:控制对特定资源的访问” (↑Novell AppArmor 2.0 管理指南)),或要求您定义条目的执行权限(见图 3.5 “学习模式例外:定义条目的执行权限” (↑Novell AppArmor 2.0 管理指南))。
对于图 3.4 “学习模式例外:控制对特定资源的访问” (↑Novell AppArmor 2.0 管理指南):在以下选项中,选择可以满足对访问的请求的一项,可以是建议的 include、特定通配形式的路径或实际路径名。请注意,并非所有选项都始终可用。
#includeNovell AppArmor 配置文件中指向一个 include 文件的部分。include 文件会提取程序的访问权限。通过使用 include,您可以向程序赋予访问其它程序也需要的目录路径和文件的权限。使用 include 可减小配置文件的大小。选择建议的 include 是不错的做法。
按照下一步的介绍通过单击进行访问。有关通配语法的更多信息,请参见第 3.6 节 “路径名和通配” (↑Novell AppArmor 2.0 管理指南)。
这是程序要正常运行需要访问的实际路径。
对于图 3.5 “学习模式例外:定义条目的执行权限” (↑Novell AppArmor 2.0 管理指南):在以下选项中,选择可以满足访问的请求的一项:
保持相同的安全配置文件(父配置文件)
要求被执行的程序存在一个单独的配置文件
在无安全配置文件的情况下执行的程序
![]() | 警告 |
|---|---|
在没有绝对必要的情况下,不要选择无限制选项。选择选项会在不受 AppArmor 保护的情况下执行新程序. | |
选择一个目录路径后,您必须单击或,从而将它以条目的形式加入到 Novell AppArmor 配置文件中。如果您对显示的目录路径不满意,您也可以使用或进行。
以下选项用于处理学习模式条目和构建配置文件:
授予程序访问指定目录路径条目的权限。会建议文件访问权限。有关更多信息,请参见第 3.7 节 “文件访问权限模式” (↑Novell AppArmor 2.0 管理指南)。
单击可防止程序访问指定的目录路径条目。
单击它可修改目录路径(通过使用通配符),以将建议的条目路径下的所有文件包含在内。双击它可将访问权限授予显示的目录下的所有文件和子目录。
有关通配语法的详细信息,请参见第 3.6 节 “路径名和通配” (↑Novell AppArmor 2.0 管理指南)。
在保留文件扩展名的情况下修改原来的目录路径。单击时 /etc/apache2/file.ext 将变成 /etc/apache2/*.ext,文件名被通配符(星号)替换。这样程序就可以访问建议目录下以 .ext 为扩展名的所有文件。双击时可将访问权限授予显示的目录下的所有文件(带有特定扩展名)和子目录。
允许您编辑突出显示的行。新(编辑后的)行显示在列表底部。
中止 logprof,取消到目前为止输入的所有规则更改,保留所有配置文件不作修改。
关闭 logprof,保留到目前为止输入的所有规则更改,修改所有配置文件。
为每个学习模式条目单击或。这可帮助您构建 Novell AppArmor 配置文件。
![]() | 注意 |
|---|---|
学习模式条目的数目与应用程序的复杂程度相对应。 | |
若要执行应用程序的更多功能,请重复前面的步骤。
完成后,单击。在随后的弹出窗口,单击以退出。此时配置文件被保存并装载到 Novell AppArmor 模块。
Novell AppArmor 使您能够更改 Novell AppArmor 状态及配置时间通知。
您可以启用或禁用 Novell AppArmor 以更改其状态。启用 Novell AppArmor 可保护您的系统免受潜在的程序攻击。禁用 Novell AppArmor 将撤销对系统的保护,即使您已创建了配置文件。
您可以确定发生系统安全事件时通知您的方式和时间。
![]() | 注意 |
|---|---|
您必须在您的 SUSE Linux 服务器上设置一个可使用简单邮件传送协议 (smtp) 发送外发邮件的邮件服务器。例如 postfix 或 exim,这样事件通知才能有效工作。 | |
要配置事件通知或更改 Novell AppArmor 的状态,请执行以下步骤:
单击 时会显示 窗口,如下所示:
![]() |
在 屏幕中,查找一条显示为 的状态消息,以确定 Novell AppArmor 和安全事件通知是否正在运行。
要更改 Novell AppArmor 的状态,请按照第 3.3.6.1 节 “更改 Novell AppArmor 状态” (↑Novell AppArmor 2.0 管理指南)中的说明继续操作。
要配置安全事件通知,请按照第 4.2.2 节 “配置安全事件通知” (↑Novell AppArmor 2.0 管理指南)中的说明继续操作。