目录
安全策略配置
卡巴斯基容器安全组件使用以下安全策略:
- 扫描器策略确定扫描不同类型资源的设置。扫描策略使用规则来检测敏感数据以及漏洞、恶意软件和错误配置。
- 保障策略定义卡巴斯基容器安全操作,以便在镜像扫描期间检测到的漏洞、恶意软件、敏感数据和错误配置符合策略中指定的标准时提供安全保障。
- 响应策略定义在策略中指定的事件发生时解决方案的操作。例如,卡巴斯基容器安全可以向用户通知事件。
- 运行时策略允许您根据公司安全要求控制和在适当的情况下限制集群上容器的部署和操作。
卡巴斯基容器安全在运行期间仅应用已启用的策略。检查期间不能使用已禁用的策略。
扫描器策略
扫描器策略确定扫描不同类型资源的设置。
安装卡巴斯基容器安全时,会创建默认的扫描器策略;它可以应用于所有资源并在所有环境中执行。它称为全局扫描策略(默认)。默认情况下,将为该策略分配默认范围。
如果您的角色已被分配管理扫描器策略和查看默认范围的权限,则您可以启用、禁用或配置全局扫描器策略设置。
不能对全局扫描器策略执行以下操作:
- 更改已分配的默认范围。
- 删除全局扫描器策略。
已配置的扫描器策略列表在“策略 → 扫描器策略”部分中显示为表格。
您可以使用该列表执行以下操作:
- 添加新策略。单击表格上方的“添加策略”按钮以打开策略设置窗口。
- 使用表格的“状态”列中的“已禁用”/“已启用”切换按钮来启用或禁用策略。
- 更改策略设置。您可以单击策略名称链接来打开编辑窗口。
您还可以在编辑窗口中启用和禁用策略。卡巴斯基容器安全在运行时不使用已禁用的策略。
- 配置检测敏感数据的规则。要执行此操作,请转至“敏感数据”选项卡。
- 删除策略。
创建扫描器策略
在卡巴斯基容器安全中添加扫描器策略需要管理扫描器策略设置的权限。
要添加扫描器策略:
- 在“策略 → 扫描器策略”部分中,单击“添加策略”按钮。
将打开策略设置窗口。
- 如有必要,使用“已禁用”/“已启用”切换开关禁用已添加的策略。在这种情况下,策略将被添加但不会应用,直到其被激活。
默认情况下,新添加的扫描器策略的状态为“已启用”。
- 输入策略名称,如果需要,还可以输入策略说明。
- 在“范围”字段中,从可用选项中选择扫描器策略的范围。
如果您计划实施被分配了默认范围的策略,则必须向您的某个用户角色授予查看默认范围的权限。
- 在“漏洞”部分中,配置以下设置:
- 使用“已禁用”/“已启用”切换开关配置使用国家漏洞仓库 (NVD) 数据库进行的扫描。
- 使用“已禁用”/“已启用”切换开关配置使用数据安全威胁数据库进行的扫描。
- 在“恶意软件”部分中,使用“已禁用”/“已启用”切换开关将扫描镜像中的恶意软件配置为文件威胁防护组件的一部分。
- 在“错误配置”部分中,使用“已启用”/“已禁用”切换开关配置对配置错误的检查。
- 单击“保存”。
编辑扫描器策略设置
如果您的账户已被分配至少一个角色,且该角色是策略创建者在创建策略时所具有的,则您可以在卡巴斯基容器安全中编辑扫描器策略设置。
要更改扫描器策略设置:
- 在“策略 → 扫描器策略”部分中,单击策略名称链接。
将打开策略设置编辑窗口。
- 如果需要,使用“已禁用”/“已启用”切换开关更改策略状态(已启用/已禁用)。
- 对策略设置进行更改。以下设置可供编辑:
- 策略的名称、描述和范围。
- 漏洞控制设置。选中检查镜像所依据的漏洞数据库的复选框。
- 恶意软件控制设置。如果您需要扫描镜像中是否存在恶意软件和其他文件威胁,请选中该复选框。该控制通过文件威胁防护组件执行。
- 错误配置控制设置。如果您需要检查镜像是否存在错误配置,请选中该复选框。该控制使用卡巴斯基容器安全制造商配置的默认设置执行。
- 单击“保存”。
配置敏感数据检测规则
为在镜像扫描过程中检测敏感数据(以下简称“秘密”)配置的规则列表显示在“策略 → 扫描器策略 → 敏感数据”部分中。
根据需检测机密的目的和范围,这些规则被分为多个类别。类别列表由卡巴斯基容器安全制造商确定。类别包含预定义的规则。
您可以使用该列表执行以下操作:
- 查看和更改秘密检测规则的设置。您可以单击规则 ID 链接来打开编辑窗口。
- 将新规则添加到所选类别。单击表格上方的“添加规则”按钮以打开集成设置窗口。要添加不属于任何预设类别的规则,请使用“其他”类别。
- 删除规则。选中列表中一个或多个规则旁边的框。然后将显示删除图标。
要更改敏感数据检测规则的设置:
- 在表格中的“策略 → 扫描器策略 →策略”部分中,选择扫描器策略。
- 在“敏感数据”部分中,通过选中规则行中的复选框来选择必要规则。
- 使用包含策略规则列表的表格的“状态”列中的“禁用”/“启用”开关来启用或禁用此策略组件。
不要单击“保存”按钮。
卡巴斯基容器安全会立即将更改应用于敏感数据设置并显示相应的通知。您还可以刷新页面来查看设置更改。
保障策略
保障策略定义卡巴斯基容器安全操作,以便在镜像扫描期间检测到的威胁符合策略中指定的标准时提供安全保障。
已配置的保障策略以表格形式显示在“策略 → 保障策略”部分中。
您可以使用该列表执行以下操作:
- 添加新策略。单击表格上方的“添加策略”按钮以打开策略设置窗口。
- 更改策略设置。您可以单击策略名称链接来打开编辑窗口。
- 启用和禁用策略。使用包含已创建策略列表的表格的“状态”列中的“禁用/启用”切换按钮来禁用和启用策略。
- 删除策略。
如果添加保障策略、修改其设置或删除策略,该策略应用于的镜像的合规状态将受到审核(合规/不合规)。
创建保障策略
在卡巴斯基容器安全中添加安全策略需要管理安全策略设置的权限。
要添加保障策略:
- 在“策略 → 保障策略”部分中,单击“添加策略”按钮。
将打开策略设置窗口。
- 输入策略名称,如果需要,还可以输入策略说明。
- 在“范围”字段中,从可用选项中选择镜像安全策略的范围。
如果您计划实施被分配了默认范围的策略,则必须向您的某个用户角色授予查看默认范围的权限。
- 指定卡巴斯基容器安全根据策略应执行的操作:
- CI/CD 步骤失败 – 如果卡巴斯基容器安全扫描器在扫描 CI/CD 管道中的镜像时检测到与策略中指定的严重级别匹配的威胁,扫描将以出错结束(失败)。此结果会传输到 CI 系统。
- 将镜像标记为不合规 – 卡巴斯基容器安全会对在其中检测到符合策略中指定标准的威胁的镜像进行标记。
- 在“漏洞级别”部分中,配置以下设置:
- 使用“已禁用”/“已启用”切换开关根据漏洞严重级别配置扫描。
- 根据漏洞数据库设置指定的严重性级别。您可以从“严重级别”下拉列表中选择或指定从 0 到 10 的严重程度分数。
- 使用“已禁用”/“已启用”切换开关配置当发现特定漏洞时进行阻止,并在“漏洞”字段中指定这些漏洞。
- 在“恶意软件”部分中,使用“已启用”/“已禁用”切换开关配置扫描镜像中的恶意软件。
- 在“错误配置”部分中,配置以下设置:
- 使用“已启用”/“已禁用”切换开关根据错误配置严重级别配置扫描。
- 从“严重级别”下拉列表中选择错误配置严重级别。
严重级别根据漏洞数据库进行分配。
- 在“敏感数据”部分中,配置以下设置:
- 使用“已启用”/“已禁用”切换开关根据敏感数据严重级别配置扫描。
- 从“严重级别”下拉列表中选择敏感数据严重级别。
严重级别根据漏洞数据库进行分配。
- 单击“保存”。
默认情况下,添加的策略已启用。
页首编辑保障策略设置
如果您的账户已被分配策略创建者在创建策略时所具有的至少一个角色,则您可以在卡巴斯基容器安全中编辑镜像安全策略设置。
要更改保障策略设置:
- 在“策略 → 保障策略”部分中,单击现有保障策略列表中的策略名称。
将打开策略设置窗口。
- 对相关策略设置进行更改:
- 策略的名称、描述和范围。
- 解决方案按照此策略执行的操作。
- 所需扫描。
- 扫描期间检测到的漏洞的严重级别。
- 识别的漏洞数量,用于阻止目的。
- 单击“保存”。
响应策略
响应策略定义了策略中所指定事件发生时解决方案的操作。例如, 卡巴斯基容器安全可以向用户通知检测到的威胁。
如果要配置响应策略以通知用户,应该先设置与通知输出的集成。
已配置的响应策略以表格形式显示在“策略 → 响应策略”部分中。
您可以使用该列表执行以下操作:
- 添加新策略。单击表格上方的“添加策略”按钮以打开策略设置窗口。
- 更改策略设置。您可以单击策略名称链接来打开编辑窗口。
- 启用和禁用策略。使用包含已创建策略列表的表格的“状态”列中的“禁用/启用”切换按钮来禁用和启用策略。
如果禁用策略, 卡巴斯基容器安全将不会执行该策略中指定的操作。
- 搜索策略。要查找策略,请使用响应策略列表上方的搜索字段指定策略名称或策略名称的一部分。
- 删除策略。
在此版本的解决方案中,响应策略仅定义当策略中详述的特定事件发生时,卡巴斯基容器安全为通知用户而采取的操作。例如,如果检测到具有严重漏洞的对象,解决方案可以向用户发送电子邮件通知。
创建响应策略
在卡巴斯基容器安全中添加响应策略需要管理响应策略设置的权限。
要添加响应策略:
- 在“策略 → 响应策略”部分中,单击“添加策略”按钮。
将打开策略设置窗口。
- 输入策略名称,如果需要,还可以输入策略说明。
- 在“范围”字段中,从可用选项中选择响应策略的范围。
如果您计划实施被分配了全局范围的策略,则必须向您的某个用户角色授予查看全局范围的权限。
- 在“触发”字段中,使用下拉列表选择一个事件,如果在扫描期间发生该事件,将触发卡巴斯基容器安全通知用户。可选择以下事件之一作为触发事件:
- 敏感数据。如果解决方案在扫描期间检测到对象中存在敏感数据泄露的迹象,则会发送通知。
- 不合规。如果扫描的对象包含不符合安全策略要求的镜像,卡巴斯基容器安全会通知您。
- 严重漏洞。如果扫描的对象包含状态为“严重”的漏洞,则会发送通知。
- 恶意软件。如果扫描发现恶意软件,则会发送通知。
- 风险接受过期。如果扫描的对象包含您之前已接受的风险,但风险接受已过期,卡巴斯基容器安全会通知您。
- 配置所需的通知方法:
- 选择“输出”:电子邮件或 Telegram。
- 从“集成名称”字段的下拉列表中,选择预先配置的与所选通知输出的集成的名称。
- 要添加其他通知方法,请单击“添加”按钮,并填写上面 a 段和 b 段中所述的字段。
- 如果需要,可以通过单击“集成名称”字段右侧的图标来删除已添加的通知方法。
- 单击“保存”。
默认情况下,添加的策略已启用。
页首编辑响应策略设置
如果您的账户已被分配至少一个角色,且该角色是策略创建者在创建策略时所具有的,则您可以在卡巴斯基容器安全中编辑响应策略设置。
要更改响应策略设置:
- 在“策略 → 响应策略”部分中,单击现有响应策略列表中的策略名称。
将打开策略设置窗口。
- 如有必要,对相关策略设置进行更改:
- 更改策略名称。
- 添加或编辑策略描述。
- 添加或编辑策略范围。
- 从下拉列表中选择触发事件来更改触发事件。
- 单击“添加”按钮添加输出。
- 单击所选输出行旁边的删除图标 (
) 删除输出。
- 单击“保存”。
运行时策略
运行时策略决定了解决方案根据安全策略监视和控制容器运行时操作时所采取的操作。卡巴斯基容器安全根据在镜像中检测到的安全威胁、这些威胁的严重级别以及
的可用性来维护控制。运行时中的容器可以从经过验证的镜像或解决方案仍然未知的镜像运行。
在“策略”选项卡的“策略→运行时策略”下,一个表列出了已配置的运行时策略。
您可以使用该列表执行以下操作:
- 添加新策略。单击表格上方的“添加策略”按钮以打开策略设置窗口。
- 更改策略设置。您可以单击策略名称链接来打开编辑窗口。
- 启用和禁用策略。使用包含已创建策略列表的表格的“状态”列中的“禁用/启用”切换按钮来禁用和启用策略。
如果禁用策略, 卡巴斯基容器安全将不会执行该策略中指定的操作。
- 搜索策略。要查找策略,请使用响应策略列表上方的搜索字段指定策略名称或策略名称的一部分。
- 删除策略。
为了以最佳方式工作,运行时策略必须辅以运行时容器配置文件,这些配置文件定义了在运行时环境中运行容器的规则和限制。
创建运行时策略
在卡巴斯基容器安全中添加运行时策略需要管理运行时策略设置的权限。
要添加运行时策略:
- 在“策略 → 运行时策略”下,选择“策略”选项卡。
- 单击“添加策略”按钮。
将打开策略设置窗口。
- 如果有必要,使用已禁用/已启用开关来设置策略状态。默认情况下,添加的策略已启用。
- 输入策略名称,如果需要,还可以输入策略说明。
- 在“范围”字段中,从可用选项中选择运行时策略的范围。由于运行时策略仅用于已部署和/或正在运行的容器,因此可以选择包含跨集群的资源的范围。
仅包含仓库资源的范围不可供选择。如有必要,您可以为在容器运行时配置文件部分中创建的运行时策略指定单独的镜像和 Pod,如步骤 11 中所述。
如果您计划实施被分配了全局范围的策略,则必须向您的某个用户角色授予查看全局范围的权限。
- 在“模式”部分中,选择以下策略执行模式之一:
- 审计。在此模式下,扫描会考虑容器的内容。
- 强制。在此模式下,解决方案会阻止所有不符合策略中定义的规则和标准的对象。
如果范围包括受审计模式下的运行时策略和强制模式下的运行时策略约束的对象,则运行时策略中指定的所有操作都将在强制模式下应用。
- 在准入控制器选项卡上,配置以下设置:
- 在“最佳实践检查”部分中,使用“已禁用”/“已启用”切换开关激活扫描以检查是否符合最佳安全实践。从设置列表中,选择确保运行正确的镜像并正确配置 CPU 和 RAM 使用设置的扫描设置。
- 在“阻止不合规镜像”部分中,使用“已禁用”/“已启用”切换开关防止容器从不符合要求的镜像运行。仅对已在解决方案中注册且状态为“合规”的已扫描镜像执行此检查。
- 在“阻止未注册的镜像”部分中,如果镜像对于卡巴斯基容器安全是未知的,则使用“已禁用”/“已启用”切换开关阻止镜像部署。要部署镜像,您必须在解决方案中注册该镜像并等待它出现在仓库中。
- 在动态准入控制器绕过标准块中,使用已禁用/已启用开关来定义不对其应用运行时策略的排除项。要执行此操作,请在下拉列表中选择相关对象,指定其名称,然后单击“添加”。
部署容器时会检查策略中的现有排除项。
- 在“功能阻止”部分中,使用“已禁用”/“已启用”切换开关来阻止使用指定的 Unix 功能。为此,请从下拉列表中选择特定的系统功能。您还可以从下拉列表中选择“所有”来锁定所有 Unix 系统功能的使用。
- 在“镜像内容保护”部分中,使用“已禁用”/“已启用”切换开关启用数字签名验证,以确认容器中镜像的完整性和来源。为此,请执行以下操作:
- 在“镜像仓库 URL 模板”字段中,输入要在其中验证签名的镜像仓库的网址模板。
- 在下拉列表中,选择“检查”启用验证,或选择“不检查”禁用验证。
- 在下拉列表中,选择已配置的镜像签名验证器之一。
- 如有必要,使用“添加签名验证规则”按钮添加签名验证规则。解决方案将在单个运行时策略下应用多个签名验证规则。
- 在“限制容器权限”部分中,使用“已禁用”/“已启用”切换按钮阻止具有一组特定权限的容器启动。在设置列表中,选择权限和权限配置以阻止 Pod 设置。
- 在“允许的仓库”部分中,使用“已禁用”/“已启用”切换按钮允许仅将容器部署到特定仓库的集群。为此,请从“仓库”下拉列表中选择相关仓库。
- 在“阻止的卷”部分中,使用“已禁用”/“已启用”切换开关防止选定的卷安装到容器中。为此,请在“卷”字段中指定主机系统上的卷挂载点。
“卷”字段必须以正斜杠(“/”)开头,因为它代表操作系统路径。
- 在容器运行时选项卡上,配置以下设置:
- 在“容器运行时配置文件”部分中,使用“已禁用”/“已启用”切换开关来阻止容器内的进程和 Pod 的网络连接。为此,请执行以下操作:
- 在下拉列表中,选择一个属性,以定义将应用于容器运行时配置文件的 Pod。
- 根据所选属性,执行以下操作:
- 如果您选择了“按 Pod 标签”,请输入 Pod 标签的键和值。
您可以单击“添加标签对”按钮来为 Pod 选择项添加其他 Pod 标签。
- 如果您选择了“镜像 URL 模板”,请输入镜像仓库网址模板。
如果集群包含来自公共 Docker Hub 仓库的镜像,则该解决方案会将镜像的完整路径和短路径视为同样的路径。例如,如果您将集群中容器镜像的 URL 指定为 docker.io/library/ubuntu:focal,则解决方案会将其视为 ubuntu:focal。
您可以单击“添加镜像 URL”按钮来添加 Pod 选择项的其他网址。
- 如果选择了镜像摘要,请输入使用 SHA256 哈希算法创建的镜像摘要。您可以指定带有或不带有sha256前缀的镜像摘要(例如,sha256:ef957...eb43或ef957...eb43)。
您可以通过单击添加镜像摘要按钮来向选定的 Pod 添加其他镜像摘要。
- 如果您选择了“按 Pod 标签”,请输入 Pod 标签的键和值。
- 在“容器运行时配置文件”字段中,指定一个或多个运行时配置文件,这些配置文件将应用于与您定义的属性相匹配的 Pod。
- 如有必要,您可以使用“添加 Pod 映射”按钮为映射添加 Pod。具有不同属性的 Pod 或应用的运行时配置文件 将映射到相同的运行时策略下。
- 在容器自动配置文件部分,使用已禁用/已启用开关来使用与这些容器中的镜像相关联的自动配置文件来激活对指定范围内的容器的扫描。
您可以通过单击“显示归因于该范围的自动配置文件”链接来查看该范围内包含的所有自动配置文件。在打开的侧边栏中,解决方案会显示一个包含自动配置文件列表的表格。对于每个自动配置文件,都会显示其名称、最后修改的日期和时间以及与自动配置文件相关的镜像。
- 在“容器运行时配置文件”部分中,使用“已禁用”/“已启用”切换开关来阻止容器内的进程和 Pod 的网络连接。为此,请执行以下操作:
- 单击“添加”按钮。
编辑运行时策略设置
如果您的账户已被分配策略创建者在创建策略时所具有的至少一个角色,则您可以在卡巴斯基容器安全中编辑运行时策略设置。
要更改运行时策略设置:
- 在“策略 → 运行时策略 → 策略”部分中,单击现有运行时策略列表中的策略名称。
将打开策略设置窗口。
- 更改策略的状态和名称。
- 添加或编辑策略描述。
- 添加或删除范围。
- 选择策略模式 — 审计或强制。
- 在准入控制器选项卡上,对策略的相关部分进行更改:
- 最佳实践检查。
- 阻止不合规镜像。
- 阻止未注册的镜像。
- 动态准入控制器绕行标准。
- 功能阻止。
- 镜像内容保护。
- 限制容器权限。
- 允许的仓库。
- 阻止卷。
- 在容器运行时选项卡上,对策略的相关部分进行更改:
- 容器运行时配置文件。
- 容器自动配置文件。
- 单击“保存”。
管理容器运行时配置文件
实施运行时策略时,卡巴斯基容器安全可以应用用户定义的规则来监控进程和网络。为此,请将运行时配置文件添加到适当的运行时策略中。运行时配置文件本质上是容器限制的列表。镜像配置文件定义了安全镜像部署和从镜像部署的应用程序的安全活动的设置。配置文件中分配的操作可以显著降低网络犯罪分子渗透设施的能力,并可以提高容器运行时操作期间的安全性。
以下设置指定了镜像配置文件中的限制:
- 应阻止的可执行文件。
- 入站和出站连接的网络限制。
运行时策略中的容器运行时配置文件适用于使用集群内的对象在编排环境中运行的镜像。如果在编排环境之外启动容器(例如,使用docker run
或ctr run
命令),解决方案将不会检测此类容器中的恶意软件。
当对象被保存在容器中时,解决方案不会自动执行恶意软件扫描。我们建议在编排环境之外额外保护容器化文件。
已配置的配置文件列表在“策略 → 运行时策略”下的“容器运行时配置文件”选项卡上显示为表格。在此部分中,还可以执行以下操作:
- 创建新的容器运行时配置文件。单击列表上方的“添加配置文件”按钮,打开配置文件设置窗口。
- 通过单击运行时配置文件名称中的链接来编辑配置文件设置。
- 删除运行时配置文件。
创建运行时配置文件
要添加容器运行时配置文件:
- 在“策略 → 运行时策略 → 容器运行时配置文件”下,单击“添加配置文件”按钮。
将打开配置文件设置输入窗口。
- 输入运行时配置文件的名称,如有必要,可以输入描述。
- 在范围下拉列表中,选择一个或多个范围。
运行时配置文件中的范围允许配置文件在运行时策略中正确使用。
- 在“文件威胁防护”下,使用“禁用/启用”切换按钮来激活“文件威胁防护”。它用于查找和分析潜在的文件威胁,并为容器化对象(如压缩包和电子邮件文件)提供安全保障。
应用了启用文件威胁防护组件功能的运行时配置文件后,卡巴斯基容器安全将为该策略所定义范围内的所有节点激活实时文件威胁防护。部署代理的配置取决于您为文件威胁防护指定的设置。您可以通过单击策略→运行时部分中的容器运行时配置文件选项卡上的文件威胁防护威胁防护设置按钮来配置文件威胁防护设置。
- 在“限制容器可执行文件”部分中,使用“已禁用”/“已启用”切换按钮根据规则限制可执行文件。在列表中,选择保证最佳容器性能的阻止选项:
- 阻止所有可执行文件的进程 – 应用程序在容器运行时阻止所有可执行文件启动。
- 阻止指定的可执行文件 – 应用程序会阻止您在“阻止指定的可执行文件”字段中选择的可执行文件。您可以阻止所有可执行文件或特定可执行文件列表。您必须指定可执行文件的完整原始路径(例如,
/bin/php
)。您还可以使用*
掩码(例如/bin/*
)将规则应用于整个目录及其子目录。还可以通过指定阻止规则的排除项来微调允许和阻止的可执行文件列表。例如,可以针对应用于
/bin/*
的规则专门排除路径/bin/cat
。在这种情况下,除了/bin/cat
应用程序之外,/bin/
目录中的所有可执行文件都将被阻止运行。在使用随许多基本容器镜像(例如
alpine
)提供的busybox
二进制文件时,您必须考虑到busybox
包含一组用于获取应用程序的命令,而无需明确指定此类应用程序。例如,ls
命令用于获取/bin/ls
可执行文件,而该文件又是/bin/busybox
的符号链接。在这种情况下,您必须指定可执行文件的路径,如下所示:/bin/busybox/ls
(也就是说,您必须将/bin/busybox
可执行文件的原始路径及其ls
命令与/
符号连接起来)。如果选中“允许排除项”复选框,则当容器启动并运行时,应用程序将阻止除“允许排除项”字段中指定的可执行文件之外的所有可执行文件。
为这组参数指定的所有规则和例外都是正则表达式(regexp)。该解决方案使用指定的模式和指标来查找与特定正则表达式匹配的所有文件。
- 在“限制入口容器连接”部分中,使用“已禁用”/“已启用”切换开关来激活限制容器入站连接的功能。当此限制处于活动状态时,卡巴斯基容器安全将阻止除指定为排除项之外的所有入站连接源。
如果选中“允许排除项”复选框,则可以指定一个或多个允许的入站网络连接源参数。要定义排除项,您必须至少指定以下参数之一:
- 源。在“源”字段中,以 CIDR4 或 CIDR6 表示法输入入站连接源的 IP 地址或 IP 地址范围。
- 在“TCP 端口”字段和“UDP 端口”字段中,输入用于连接的特定端口或端口范围。
如果需要指定多个端口,请使用逗号,例如 8080, 8082。
如果不指定端口值,应用程序将允许通过所有端口进行连接。
- 在“限制出口容器连接”部分中,使用“已禁用”/“已启用”切换开关来激活限制向已定义目的地的出站连接的功能。
如果选中“允许排除项”复选框,则可以指定一个或多个允许的出站网络连接目的地参数。要定义排除项,您必须至少指定以下参数之一:
- 目的地。在“目的地”字段中,以 CIDR4 或 CIDR6 表示法输入出站连接目的地的 IP 地址或 IP 地址范围,或者目的地的网址 (URL)。
- 在“TCP 端口”字段和“UDP 端口”字段中,输入用于连接的特定端口或端口范围。
如果需要指定多个端口,请使用逗号,例如 8080, 8082。
如果不指定端口值,应用程序将允许通过所有端口进行连接。
- 在文件操作部分,使用已禁用/已启用开关来启用监视容器中文件操作的功能。为此,请指定以下设置的值:
- 路径。文件或文件夹的路径末尾可以带有或不带有正斜杠 (/)。您可以在路径末尾的正斜杠 (/) 后放置星号 (*) 来允许访问所有子目录。
指定文件路径时,仅输入以正斜杠开头的完整路径。
- 如有必要,您可以在“排除项”字段中指定不为其监视文件操作的文件路径。
- 操作类型。您可以指定应用运行时策略时解决方案监控的文件操作。为此,请使用复选框选择以下一种或多种操作类型:
- 创建— 解决方案记录指定目录中的所有文件创建操作。
- 打开 – 解决方案记录所有文件打开操作。
- 读取— 解决方案记录文件读取操作。
- 写入— 解决方案记录有关文件中保存的更改的信息。
- 重命名或移动— 解决方案记录更改文件名称或将文件移动到其他文件夹的操作。
- 删除— 解决方案记录有关从指定目录中删除文件或文件夹的信息。
- 更改访问权限— 解决方案记录有关访问文件和目录的权限变化的信息。
- 更改所有权— 解决方案监控更改指定目录中文件或文件夹所有者的操作。
如有必要,使用添加规则按钮添加监控文件操作的规则。解决方案将在单个运行时策略内应用多个文件操作监控规则。
对于文件操作,仅支持审计模式。如果在适用的运行时策略中指定了强制模式,则文件操作将以审核模式执行。
- 路径。文件或文件夹的路径末尾可以带有或不带有正斜杠 (/)。您可以在路径末尾的正斜杠 (/) 后放置星号 (*) 来允许访问所有子目录。
- 单击“添加”按钮。
添加的运行时配置文件显示在“策略 → 运行时策略 → 容器运行时配置文件”部分中。
页首配置的运行时配置文件示例
下表列出了应用程序最常使用的一些镜像,以及在运行时配置文件中为其配置的限制设置。
镜像以及配置的设置
镜像名称 |
限制容器可执行模块 |
限制网络连接 |
---|---|---|
Nginx |
允许的可执行文件:
|
阻止出站连接 |
Mysql |
允许的可执行文件:
|
阻止出站连接 |
Wordpress |
允许的可执行文件:
|
|
节点 |
允许的可执行文件:
|
阻止出站连接 |
MongoDB |
允许的可执行文件:
|
|
HAProxy |
允许的可执行文件:
|
|
Hipache |
允许的可执行文件:
|
|
Drupal |
允许的可执行文件:
|
|
Redis |
允许的可执行文件:
|
阻止出站连接 |
Tomcat |
允许的可执行文件:
|
阻止出站连接 |
Celery |
允许的可执行文件:
|
|
更改运行时配置文件设置
要更改容器运行时配置文件设置:
- 在“策略 → 运行时策略 → 容器运行时配置文件”下,单击现有容器运行时配置文件列表中的配置文件名称。
- 在打开的窗口中,更改以下一项或多项设置的值:
- 运行时配置文件的名称。
- 运行时配置文件的描述。
- 范围。
- 文件威胁防护。
- 限制容器可执行文件。
- 限制入站网络连接。
- 限制出站网络连接。
- 文件操作。
- 单击“保存”。
对运行时配置文件设置所做的更改会立即应用于正在运行的容器并影响其操作。
页首删除运行时配置文件
要删除容器运行时配置文件:
- 在“策略 → 运行时策略 → 镜像配置文件”下的已配置运行时配置文件表中,单击包含要删除的配置文件名称的行中的删除图标 (
)。
- 在打开的窗口中,确认操作。
管理运行时自动配置文件
卡巴斯基容器安全可以监控容器中的进程、网络流量和文件操作,然后利用获取的信息自动生成容器运行时配置文件。Autoprofiling 进程在用户设置的时间间隔内和选定的范围内执行。这样的范围可以是集群、命名空间或者 Pod。
自动生成的配置文件(autoprofile) 的内容取决于代理组的节点监控设置。要启动 Autoprofiling ,您需要为相应代理组激活网络连接、正在启动的进程和容器的文件操作的监控设置。
自动配置文件通过三个设置的组合变得唯一:集群名称、命名空间名称和镜像摘要。因此,在一个命名空间内,将为具有所选镜像版本的所有容器生成一个自动配置文件。
创建运行时自动配置文件
我们建议您在 Autoprofiling 开始后重新启动 Pod,以便解决方案在其规则中记录 Pod 的启动。这将防止 pod 重新启动时被错误地阻止。
卡巴斯基容器安全允许在三个级别创建自动配置文件:
- 在集群级别
- 在命名空间级别
- 在 Pod 级别
在集群和命名空间级别,您可以使用包含集群或命名空间列表的表或集群内的对象图来创建自动配置文件。在 Pod 级别,只能使用表创建自动配置文件。
要使用包含对象列表的表格创建容器运行时自动配置文件:
- 转到资源→集群。
- 根据您创建自动配置文件的级别,请执行以下步骤:
- 如果要在集群级别创建自动配置文件,请在集群表中选中一个或多个集群的复选框。
- 如果要在命名空间级别创建自动配置文件,请按照下列步骤操作:
- 单击集群表中的集群名称。
- 在表格选项卡上,在列出集群中的命名空间的表中,使用复选框选择一个或多个命名空间。
- 如果您想在 Pod 级别创建自动配置文件,请按照这些步骤操作:
- 单击集群表中的集群名称。
- 单击集群中命名空间表中的命名空间名称。
- 在显示的侧边栏中,选择Pod 和容器选项卡,然后在命名空间内的 Pod 表中,选中一个或多个 Pod 的复选框。
确保 Autoprofiling 进程未在选定的对象中运行。如果进程正在运行,解决方案将不允许另一个 Autoprofiling 任务启动。
- 单击表格上方的“构建自动配置文件”按钮。
在集群中,一次只能运行一个自动配置文件创建任务。解决方案仅在前一个任务完成或停止后才允许执行新的 Autoprofiling 任务。
- 这将打开一个窗口;在该窗口中,指定Autoprofiling 的持续时间。该持续时间可以是 1 到 1440 分钟。
默认设置为 60 分钟。
- 单击“开始”。
在对象(集群、命名空间或 Pod)表的自动配置文件列中,解决方案显示直到该对象 Autoprofiling 结束的剩余时间或为该对象创建的自动配置文件的数量。
要从图表创建容器运行时自动配置文件:
- 转到资源→集群。
- 根据您创建自动配置文件的级别,在图形视图选项卡上执行以下步骤:
- 如果要在集群级别创建自动配置文件,请左键单击位于命名空间图上的集群图标 (
) 。
- 如果要在命名空间级别创建自动配置文件,请按照下列步骤操作:
- 双击即可展开图表上集群内的命名空间组。
- 在命名空间图中,左键单击您感兴趣的命名空间的图标(
)。
- 如果要在集群级别创建自动配置文件,请左键单击位于命名空间图上的集群图标 (
- 在打开的菜单中,选择“构建自动配置文件”。
如果自动配置过程已在集群中运行,则您将无法选择“构建自动配置文件” 。如果您拥有适当的权限,可以通过在菜单中选择停止 Autoprofiling来停止在所选集群中创建自动配置文件。或者,等待先前启动的 Autoprofiling 任务完成。解决方案允许在集群中一次只运行一个 Autoprofiling 任务。
- 这将打开一个窗口;在该窗口中,指定Autoprofiling 的持续时间。该持续时间可以是 1 到 1440 分钟。
默认设置为 60 分钟。
- 单击“开始”。
创建的运行时自动配置文件显示在策略→运行时策略→自动配置文件部分。
页首查看运行时自动配置文件列表
卡巴斯基容器安全在策略→运行时→自动配置文件下的表格中显示所有创建的运行时自动配置文件的列表。以下信息为每个自动配置文件显示:
- 自动配置文件的名称,它是以下数据的组合:
- Pod 名称。
- 命名空间名称。
- 集群名称。
- 镜像校验和的前 12 个字符(SHA256 前缀之后)
自动配置文件名称的这些组件由下划线分隔(例如,kube-company_sampled-operations_docker-cluster__9a74fc18ee07)。
- 自动配置文件相对于用户验证的状态:已验证或未验证。默认情况下,自动配置文件创建时的状态为未验证。
如有必要,您可以使用已验证/未验证切换开关来更改表中自动配置文件的状态。您还可以通过单击表格上方的已验证按钮将已验证状态分配给一个或多个自动配置文件。
仅可应用具有已验证状态的自动配置文件。
- 上次修改的日期和时间。
- 自动配置文件所基于的集群和命名空间。
- 自动配置文件基于其校验和的镜像。
卡巴斯基容器安全还会显示其摘要被用于创建自动配置文件的每个镜像的自动配置文件列表。
要查看为镜像创建的自动配置文件列表:
- 转到资源→仓库。
- 在所需的仓库中,单击
图标并展开仓库中的镜像列表。用于创建自动配置文件的镜像标有自动配置文件图标 (
)。
- 点击镜像名称,转到关于该镜像扫描结果的详细信息页面。
镜像的所有自动配置文件的列表以表格形式显示在关联的自动配置文件部分中。以下信息为每个自动配置文件显示:
- 自动配置文件名称。单击自动配置文件的名称将打开一个窗口,其中包含自动配置文件的详细说明。此窗口中的信息为只读。
- 上次修改的日期和时间。
- 自动配置文件所基于的集群和命名空间。
查看运行时自动配置文件设置
要查看自动配置文件参数:
- 在策略→运行时策略→自动配置文件部分,单击创建的容器运行时自动配置文件列表中的自动配置文件的名称。
- 在显示的侧栏中, 常规和构建参数选项卡包含有关所选自动配置文件的参数的信息。常规选项卡显示以下内容:
- 自动配置文件状态。
- 运行时自动配置文件的名称。
- 运行时自动配置文件的描述(如果是手动指定的话)。默认情况下,Autoprofiling 时不添加任何描述。
- 在参数下,您可以查看以下模块的参数:
- 文件威胁防护。
- 限制容器可执行文件。
- 限制入站网络连接。
- 限制出站网络连接。
- 文件操作。
如果有必要,您可以更改自动配置文件参数。
构建参数选项卡显示以下数据:
- 运行时自动配置文件的名称。
- 自动配置文件的最后修改日期和时间。
- 发起自动配置文件创建的用户的名称。
- 自动配置文件所基于的镜像校验和、命名空间和集群。
- 自动配置文件基于其校验和的镜像的名称。您可以通过单击镜像名称来查看该镜像的扫描结果。
编辑运行时自动配置文件设置
要编辑自动配置文件参数:
- 在策略→运行时策略→自动配置文件部分,单击创建的容器运行时自动配置文件列表中的自动配置文件的名称。
- 如有必要,在显示的侧栏中的“常规信息”选项卡上,编辑以下一个、多个或所有参数的值:
- 自动配置文件状态。使用已验证/未验证切换开关将自动配置文件状态更改为已验证或未验证。
- 运行时自动配置文件的名称。您可以指定自定义的自动配置文件名称来替换解决方案自动生成的名称。
- 运行时自动配置文件的描述。默认情况下,Autoprofiling 时不添加任何描述。
- 在参数下,编辑网络状态监控参数,如下所示:
- 文件威胁防护。如有必要,请使用禁用/启用切换开关来启用或禁用文件威胁防护。默认情况下,文件威胁防护下的设置已禁用。
- 限制容器可执行文件。您可以指定要阻止的特定文件名和路径,以及指定例外。
如果进程在相关内部版本中的容器内运行,则解决方案将执行以下操作:
- 当在审计和强制模式下的进程中检测到事件时,解决方案将激活阻止指定的可执行文件设置,并在可执行文件或路径字段中指示所有唯一路径。
- 如果审计和强制模式下的进程中没有事件,则解决方案将应用阻止所有可执行文件设置。
- 如果检测到除上述事件之外的其他事件,解决方案将激活允许排除项设置并在可执行文件或路径字段中指定所有唯一路径值。
- 限制入站网络连接。如有必要,您可以使用禁用/启用切换开关来禁用限制容器入站连接的功能。
如果在相关内部版本的容器中观察到入站流量,则解决方案将执行以下操作:
- 当在审计和强制模式下检测到与入站连接相关的事件时,解决方案将激活限制入站网络连接设置。
- 如果在审计和强制模式下没有与入站流量相关的事件,或者检测到其他事件,则解决方案将激活允许排除项选项。源、TCP 端口和UDP 端口字段包含入站连接的所有唯一接收者。
- 限制出站网络连接。如有必要,您可以使用禁用/启用切换开关来禁用限制容器出站连接的功能。
如果在相关内部版本的容器中观察到出站流量,则解决方案将执行以下操作:
- 当在审计和强制模式下检测到与出站连接相关的事件时,解决方案将激活限制出站网络连接设置。
- 如果在审计和强制模式下没有与入站流量相关的事件,或者检测到其他事件,则解决方案将激活允许排除项选项。源、TCP 端口和UDP 端口字段指定所有唯一的出站连接源。
- 文件操作。您可以编辑监控容器中文件操作的设置。
如果在相关内部版本中的容器内观察到操作,则在审计和强制模式下检测到文件管理事件时,解决方案将激活文件操作设置。在这种情况下,所有唯一路径都会在路径字段中指示,所有检测到的操作类型的复选框都会在操作类型字段中选中。
您还可以单击添加规则来添加监控文件操作时应用的规则。
如果在设置部分启用了设置,解决方案将确定镜像的具体内部版本并扫描从该内部版本部署的所有容器。
- 通过执行以下操作之一将更改保存到自动配置文件:
- 要保存但不将自动配置文件状态更改为已验证,请单击保存。
- 要保存自动配置文件并将其状态更改为已验证,请单击保存并验证。
停止 Autoprofiling
如果自动配置文件任务正在选定集群中运行,卡巴斯基容器安全将显示该进程完成所需的剩余时间:
- 在包含集群列表的表格的自动配置文件列中
- 在包含集群中的命名空间列表的表格的自动配置文件列中
- 在包含集群中所选命名空间内的 Pod 列表的表格的自动配置文件列中。
您可以在三个级别停止正在运行的 Autoprofiling 进程:
- 在集群级别
- 在命名空间级别
- 在 Pod 级别
在集群和命名空间级别,您可以使用包含集群或命名空间列表的表或集群内的对象图来停止创建自动配置文件。在 Pod 级别,只能使用表格来停止 Autoprofiling。
可以针对整个被分析对象(集群、命名空间或 Pod)或被分析对象内的特定实体(例如,选定的命名空间或 Pod)停止 Autoprofiling。
如果您拥有必要的权限,可以停止正在运行的 Autoprofiling 进程。
页首停止 Autoprofiling 任务
要使用包含对象列表的表格停止运行 Autoprofiling 任务:
- 转到资源→集群。
- 根据您停止 Autoprofiling 的级别,请执行以下步骤:
- 如果要在集群级别停止 Autoprofiling,请使用复选框选择已为其启动 Autoprofiling 任务的一个或多个集群。
- 如果要在命名空间级别停止 Autoprofiling,请按照下列步骤操作:
- 单击集群表中的集群名称。
- 在“表格”选项卡上,在列出集群中的命名空间的表格中,使用复选框选择已为其启动 Autoprofiling 任务的一个或多个命名空间。
- 如果要在 Pod 级别停止 Autoprofiling,请执行下列操作:
- 单击集群表中的集群名称。
- 单击集群中命名空间表中的命名空间名称。
- 在显示的侧边栏中,选择Pod 和容器选项卡,然后在命名空间内的 Pod 表中,选中一个或多个已为其启动 Autoprofiling 的 Pod 的复选框。
- 单击表格上方的“停止 Autoprofiling”按钮。
如果选定对象列表包含其中尚未启动 Autoprofiling 进程的集群、命名空间或子集群,停止 Autoprofiling按钮将变为非活动状态。
- 单击“停止”按钮确认停止 Autoprofiling 进程。
要从图表中停止 Autoprofiling 任务:
- 转到资源→集群。
- 根据您创建自动配置文件的级别,在图形视图选项卡上执行以下操作:
- 如果要在集群级别停止 Autoprofiling 任务,请左键单击命名空间图上的集群图标 (
)。
- 如果要在名字空间级别停止 Autoprofiling 任务,请执行以下操作:
- 双击即可展开图表上集群内的命名空间组。
- 在命名空间图中,左键单击您感兴趣的命名空间的图标(
)。
- 如果要在集群级别停止 Autoprofiling 任务,请左键单击命名空间图上的集群图标 (
- 在打开的菜单中,选择“停止 Autoprofiling”。
- 单击“停止”按钮确认停止 Autoprofiling 进程。
停止对单个对象的 Autoprofiling
要停止 Autoprofiling 任务中单个对象的 Autoprofiling:
- 启动 Autoprofiling 任务。
- 执行以下操作之一:
- 如果集群 Autoprofiling 任务正在运行,请执行以下操作:
- 在包含集群列表的表中,单击正在为其创建自动配置文件的集群的名称。
- 在打开的窗口中,执行以下操作之一:
- 选择一个或多个要为其停止 Autoprofiling 的命名空间。
- 单击命名空间名称,然后在打开的窗口中选择一个或多个要为其停止 Autoprofiling 的 Pod。
- 如果命名空间 Autoprofiling 任务正在运行,请执行以下操作:
- 在包含集群中命名空间列表的表中,单击正在为其创建自动配置文件的命名空间的名称。
- 在打开的窗口中,选择一个或多个要为其停止 Autoprofiling 的 Pod。
- 如果集群 Autoprofiling 任务正在运行,请执行以下操作:
- 单击包含对象列表的表格上方的“停止 Autoprofiling”按钮。
- 单击“停止”按钮确认停止 Autoprofiling 进程。
卡巴斯基容器安全停止所选对象的 Autoprofiling 进程。解决方案将继续为集群或命名空间中的其余对象运行 Autoprofiling 任务。
当停止单个对象的 Autoprofiling 时,请记住在较大对象级别停止任务将完全停止该任务。例如,在下列情况下,Autoprofiling 任务将完全停止:
- 如果启动了 Autoprofiling 命名空间或 Pod 的任务,并且您在包含所选命名空间或 Pod 的集群级别停止 Autoprofiling。
- 如果启动了 Autoprofiling Pod 的任务,并且您在包含所选 Pod 的命名空间级别停止 Autoprofiling。
删除运行时自动配置文件
要删除容器运行时自动配置文件:
- 在以下部分之一中打开生成的运行时自动配置文件的表格:
- 在策略→运行时→自动配置文件部分。
- 在关联的自动配置文件部分中,包含有关镜像扫描结果的详细信息的页面上,资源→仓库部分中。
- 执行以下操作之一:
- 在策略→运行时→自动配置文件部分,使用复选框选择要删除的自动配置文件,然后单击表格上方的删除按钮。
- 在包含有关镜像扫描结果的详细信息的页面上,在资源→仓库部分中,在要删除的自动配置文件名称的行中,单击删除图标 (
)。
- 在打开的窗口中,确认操作。
与自动配置文件相关的限制
使用运行时自动配置文件时,请考虑与范围和用户角色相关的以下限制:
- 如果镜像未被添加到作为集群中命名空间的一部分被分配给用户的范围,则用户无法访问使用镜像摘要生成的自动配置文件。
被分配了默认范围的用户可以查看所有创建的自动配置文件。
- 如果用户有管理 Autoprofiling 的权限,则可以启动任务来构建自动配置文件、更改设置并重新生成自动配置文件。
- 如果满足以下所有条件,未启动 Autoprofiling 任务的用户可以更改设置,以及重建和删除自动配置文件:
- 用户有权限管理 Autoprofiling
- 用户的角色之一与创建自动配置文件时 Autoprofiling 任务的创建者的角色一致
- 分配给用户的范围包括自动配置文件所基于的镜像(作为集群中命名空间的一部分)
删除策略
如果您的账户已被分配策略创建者在创建策略时所具有的至少一个角色,则您可以删除安全策略。您还需要具有管理相应类型策略的权限才能删除它们。
要删除策略:
如果安全策略配置错误阻止了卡巴斯基容器安全运行,并且您无法使用管理控制台管理解决方案,则必须手动删除安全策略。
要手动删除策略并恢复解决方案:
- 运行以下命令以删除适用的代理(kube-agent 和 node-agent):
kubectl delete deployment kube-agent
kubectl delete daemonset node-agent
- 通过运行以下命令来删除目标集群中的所有客户资源:
kubectl get crd -o name | grep 'kcssecurityprofiles.securityprobe.kcs.com' | xargs kubectl delete
- 重新启动所有卡巴斯基容器安全 Pod 并访问管理控制台。
- 对安全策略进行必要的更改。
- 使用 .YAML 格式的说明来安装代理。