NetLabel CIPSO/IPv4 协议引擎¶
Paul Moore, paul.moore@hp.com
2006 年 5 月 17 日
概述¶
NetLabel CIPSO/IPv4 协议引擎基于 1992 年 7 月 16 日的 IETF 商业 IP 安全选项 (CIPSO) 草案。该草案的副本可以在此目录中找到 (draft-ietf-cipso-ipsecurity-01.txt)。虽然 IETF 草案从未成为 RFC 标准,但它已成为标记网络的事实标准,并在许多受信任的操作系统中使用。
出站数据包处理¶
CIPSO/IPv4 协议引擎通过将 CIPSO 标签添加到套接字来将 CIPSO IP 选项应用于数据包。 这导致所有通过套接字离开系统的数据包都应用了 CIPSO IP 选项。 套接字的 CIPSO 标签可以在任何时间点更改,但是,建议在创建套接字时设置它。 LSM 可以使用 NetLabel 安全模块 API 设置套接字的 CIPSO 标签; 如果 NetLabel“域”配置为使用 CIPSO 进行数据包标记,则将生成 CIPSO IP 选项并将其附加到套接字。
入站数据包处理¶
CIPSO/IPv4 协议引擎验证它在 IP 层找到的每个 CIPSO IP 选项,而无需 LSM 的任何特殊处理。 但是,为了解码和翻译数据包上的 CIPSO 标签,LSM 必须使用 NetLabel 安全模块 API 来提取数据包的安全属性。 这通常在使用 'socket_sock_rcv_skb()' LSM 钩子的套接字层完成。
标签转换¶
CIPSO/IPv4 协议引擎包含一种机制,用于将 CIPSO 安全属性(例如敏感度级别和类别)转换为适合主机的值。 这些映射定义为 CIPSO 解释域 (DOI) 定义的一部分,并通过 NetLabel 用户空间通信层进行配置。 每个 DOI 定义可以具有不同的安全属性映射表。
标签转换缓存¶
NetLabel 系统提供了一个框架,用于缓存从网络标签到相应 LSM 标识符的安全属性映射。 CIPSO/IPv4 协议引擎支持此缓存机制。