Trusted Extensions 配置和管理

退出打印视图

更新时间: 2014 年 7 月
 
 

将主机添加到安全模板

本节包含有关向安全模板中添加主机的链接或示例。对于间断的 IP 地址,请参见如何将主机添加到安全模板。对于一系列主机,请参见如何将一系列主机添加到安全模板

    本节中的示例说明了以下远程主机标签指定情况:

  • 可信远程网关处理 PUBLIC 通信流量。请参见Example 16–4

  • 不可信远程主机充当单标签路由器-Example 16–5

  • 可信远程主机将通信流量限定于较窄标签范围内。请参见Example 16–6

  • 为可信远程主机指定一组有限标签。请参见Example 16–7

  • 为可信远程主机指定与网络其余部分不相交的标签。请参见Example 16–8

  • 可信 netif 主机为来自 adaptive 系统的包添加标签。请参见Example 16–9

  • 不可信 adaptive 主机将包发送到 netif 主机。请参见Example 16–10

  • 可信同构网络在特定标签处添加多播地址。请参见Example 16–11

  • 从安全模板中删除一个主机。请参见Example 16–12

  • 为不可信远程主机和网络指定标签。请参见Example 16–15

如何将主机添加到安全模板

开始之前

  1. (u53ef选)验证您是否可以访问要添加的主机名或 IP 地址。

    在此示例中,验证是否可以访问 192.168.1.2

    # arp 192.168.1.2
    gateway-2.example.com (192.168.1.2) at 0:0:0:1:ad:cd

    arp 命令检验主机是否已在系统的 /etc/hosts 文件中定义或者是否可由 DNS 进行解析。

  2. 将主机名或 IP 地址添加到安全模板中。

    在本示例中,添加 192.168.1.2 IP 地址。

    # tncfg -t cipso
    tncfg:cipso> add host=192.168.1.2

    如果要添加之前已添加到其他模板中的主机,系统会通知您将替换该主机的安全模板指定。有关信息性消息,请参见Example 16–3

  3. 查看已更改的安全模板。

    例如,以下示例显示了已添加到 cipso 模板的 192.168.1.2 地址:

    tncfg:cipso> info
    ...
    host=192.168.1.2/32

    前缀长度 /32 指示该地址是确切的。

  4. 提交更改并退出安全模板。
    tncfg:cipso> commit
    tncfg:cipso> exit

    要删除主机项,请参见Example 16–12

示例 16-3  替换主机的指定安全模板

此示例说明了在向已经指定模板的主机指定安全模板时显示的信息性消息。

# tncfg -t cipso
tncfg:cipso> add host=192.168.1.2
192.168.1.2 previously matched the admin_low template
tncfg:cipso> info
...
host=192.168.1.2/32
tncfg:cipso> exit
示例 16-4  创建在一个标签下处理包的网关

Example 16–1 中,安全管理员创建了一个安全模板,该模板定义了一个只能在标签 PUBLIC 下传递包的网关。在此示例中,安全管理员确保可以解析此网关主机的 IP 地址。

# arp 192.168.131.75
gateway-1.example.com (192.168.131.75) at 0:0:0:1:ab:cd

arp 命令检验主机是否已在系统的 /etc/hosts 文件中定义或者是否可由 DNS 进行解析。

然后,管理员将 gateway-1 主机添加到安全模板中。

# tncfg -t cipso_public
tncfg:cipso_public> add host=192.168.131.75
tncfg:cipso_public> exit

系统可以通过 gateway-1 立即收发 public 包。

示例 16-5  创建无标签路由器来路由有标签包

任何 IP 路由器都可以通过 CALIPSO 或 CIPSO 标签转发消息,即使该路由器不显式支持标签也是如此。此类无标签路由器需要一个缺省标签来定义必须在哪一个级别上处理与该路由器的连接(或许是用于路由器管理)。在此示例中,安全管理员创建一个可以任何标签转发通信的路由器,但与该路由器的所有直接通信都是以缺省标签 PUBLIC(公共)处理的。

首先,安全管理员从头创建模板。

# tncfg -t unl_public_router
tncfg:unl_public_router> set host_type=unlabeled
tncfg:unl_public_router> set doi=1
tncfg:unl_public_router> set def_label="PUBLIC"
tncfg:unl_public_router> set min_label=ADMIN_LOW
tncfg:unl_public_router> set max_label=ADMIN_HIGH
tncfg:unl_public_router> exit

然后,管理员将路由器添加到安全模板中。

# tncfg -t unl_public_router
tncfg:unl_public_router> add host=192.168.131.82
tncfg:unl_public_router> exit

系统可以通过 router-1192.168.131.82 地址的主机名)立即收发所有标签下的包。

示例 16-6  创建具有有限标签范围的网关

在此示例中,安全管理员创建一个将包限定于较窄标签范围的模板,并将此网关添加到该模板。

# arp 192.168.131.78
gateway-ir.example.com (192.168.131.78) at 0:0:0:3:ab:cd
# tncfg -t cipso_iuo_rstrct
tncfg:cipso_iuo_rstrct> set host_type=cipso
tncfg:cipso_iuo_rstrct> set doi=1
tncfg:cipso_iuo_rstrct> set min_label=0x0004-08-48
tncfg:cipso_iuo_rstrct> set max_label=0x0004-08-78
tncfg:cipso_iuo_rstrct> add host=192.168.131.78
tncfg:cipso_iuo_rstrct> exit

系统可以通过 gateway-ir 立即收发标签为 internalrestricted 的包。

示例 16-7  在独立标签下创建主机

在此示例中,安全管理员创建一个仅识别两个标签(confidential : internal use onlyconfidential : restricted)的安全模板。所有其他通信都会被拒绝。

首先,安全管理员确保可以解析每台主机的 IP 地址。

# arp 192.168.132.21
host-auxset1.example.com (192.168.132.21) at 0:0:0:4:ab:cd
# arp 192.168.132.22
host-auxset2.example.com (192.168.132.22) at 0:0:0:5:ab:cd
# arp 192.168.132.23
host-auxset3.example.com (192.168.132.23) at 0:0:0:6:ab:cd
# arp 192.168.132.24
host-auxset4.example.com (192.168.132.24) at 0:0:0:7:ab:cd

然后,管理员需要仔细准确地键入标签。软件按大小写字母和短名称识别标签,但不识别空格间距不准确的标签。例如,标签 cnf :restricted 不是有效标签。

# tncfg -t cipso_int_and_rst
tncfg:cipso_int_and_rst> set host_type=cipso
tncfg:cipso_int_and_rst> set doi=1
tncfg:cipso_int_and_rst> set min_label="cnf : internal use only"
tncfg:cipso_int_and_rst> set max_label="cnf : internal use only"
tncfg:cipso_int_and_rst> set aux_label="cnf : restricted"
tncfg:cipso_int_and_rst> exit

然后,管理员通过使用前缀长度将 IP 地址的范围指定给安全模板。

# tncfg -t cipso_int_rstrct
tncfg:cipso_int_rstrct> set host=192.168.132.0/24
示例 16-8  为开发者创建有标签主机

在此示例中,安全管理员创建一个 cipso_sandbox 安全模板。会将此模板指定给可信软件开发者所使用的系统。开发者测试不会影响其他有标签主机,因为标签 SANDBOX 与网络上的其他标签不相交。

# tncfg -t cipso_sandbox
tncfg:cipso_sandbox> set host_type=cipso
tncfg:cipso_sandbox> set doi=1
tncfg:cipso_sandbox> set min_sl="SBX"
tncfg:cipso_sandbox> set max_sl="SBX"
tncfg:cipso_sandbox> add host=196.168.129.102
tncfg:cipso_sandbox> add host=196.168.129.129
tncfg:cipso_sandbox> exit

使用 196.168.129.102196.168.129.129 系统的开发者可以在标签 SANDBOX 下彼此进行通信。

示例 16-9  netif 主机创建安全模板

在此示例中,安全管理员创建一个 netif 安全模板。此模板将指定给托管 IP 地址 10.121.10.3 的有标签网络接口。通过此指定,Trusted Extensions IP 模块会将缺省标签 PUBLIC 添加到来自 adaptive 主机的所有传入包。

# tncfg -t netif_public
tncfg:netif_public> set host_type=netif
tncfg:netif_public> set doi=1
tncfg:netif_public> set def_label="PUBLIC"
tncfg:netif_public> add host=10.121.10.3
tncfg:netif_public> commit
tncfg:netif_public> exit
示例 16-10  为自适应主机创建安全模板

在此示例中,安全管理员提前进行计划。管理员为分别保留公共信息的网络和保留内部信息的网络创建不同的子网。管理员随后定义两个 adaptive 主机。为公共子网中的系统指定了 PUBLIC 标签。为内部网络中的系统指定了 IUO 标签。由于对此网络提前进行了计划,因此每个网络使用特定标签保留并传输信息。另一个优点是,当未在预期接口上传送包时,可以轻松调试网络。

# tncfg -t adpub_192_168_10
tncfg:adapt_public> set host_type=adapt
tncfg:adapt_public> set doi=1
tncfg:adapt_public> set min_label="public"
tncfg:adapt_public> set max_label="public"
tncfg:adapt_public> add host=192.168.10.0
tncfg:adapt_public> commit
tncfg:adapt_public> exit
# tncfg -t adiuo_192_168_20
tncfg:adapt_public> set host_type=adapt
tncfg:adapt_public> set doi=1
tncfg:adapt_public> set min_label="iuo"
tncfg:adapt_public> set max_label="iuo"
tncfg:adapt_public> add host=192.168.20.0
tncfg:adapt_public> commit
tncfg:adapt_public> exit
示例 16-11  发送有标签多播消息

在此示例中,在有标签的同构 LAN 中,安全管理员选择可通过其使用标签 PUBLIC 发送包的可用多播地址。

# tncfg -t cipso_public
tncfg:cipso_public> add host=224.4.4.4
tncfg:cipso_public> exit
示例 16-12  从安全模板中删除若干主机

在此示例中,安全管理员从 cipso 安全模板中删除若干主机。管理员使用 info 子命令显示主机,然后键入 remove,再复制并粘贴四个 host= 项。

# tncfg -t cipso info
name=cipso
host_type=cipso
doi=1
min_label=ADMIN_LOW
max_label=ADMIN_HIGH
host=127.0.0.1/32
host=192.168.1.2/32
host=192.168.113.0/24
host=192.168.113.100/25
host=2001:a08:3903:200::0/56
# tncfg -t cipso
tncfg:cipso> remove host=192.168.1.2/32
tncfg:cipso> remove host=192.168.113.0/24
tncfg:cipso> remove host=192.168.113.100/25
tncfg:cipso> remove host=2001:a08:3903:200::0/56
tncfg:cipso> info
...
max_label=ADMIN_HIGH
host=127.0.0.1/32
host=192.168.75.0/24

删除主机后,管理员提交更改并退出安全模板。

tncfg:cipso> commit
tncfg:cipso> exit
#

如何将一系列主机添加到安全模板

开始之前

有关要求,请参见如何将主机添加到安全模板

  1. 要将安全模板指定给子网,请将此子网地址添加到模板中。

    在此示例中,将两个 IPv4 子网添加到 cipso 模板中,然后显示安全模板。

    # tncfg -t cipso
    tncfg:cipso> add host=192.168.75.0
    tncfg:cipso> add host=192.168.113.0
    tncfg:cipso> info
    ...
    host=192.168.75.0/24
    host=192.168.113.0/24
    tncfg:cipso> exit

    前缀长度 /24 指示地址(以 .0 结尾)是子网。

    # tncfg -t cipso
    tncfg:cipso> add host=192.168.113.100/25
    192.168.113.100/25 previously matched the admin_low template
  2. 要将安全模板指定给一系列 IP 地址,请指定 IP 地址和前缀长度。

    在以下示例中,/25 前缀长度涵盖的连续 IPv4 地址为 192.168.113.0192.168.113.127。该地址包括 192.168.113.100

    # tncfg -t cipso
    tncfg:cipso> add host=192.168.113.100/25
    tncfg:cipso> exit

    在以下示例中,/56 前缀长度涵盖的连续 IPv6 地址为 2001:a08:3903:200::02001:a08:3903:2ff:ffff:ffff:ffff:ffff。该地址包括 2001:a08:3903:201:20e:cff:fe08:58c

    # tncfg -t cipso
    tncfg:cipso> add host=2001:a08:3903:200::0/56
    tncfg:cipso> info
    ...
    host=2001:a08:3903:200::0/56
    tncfg:cipso> exit

    如果要添加之前已添加到其他模板中的主机,系统会通知您将替换该主机的安全模板指定。有关信息性消息,请参见Example 16–13

    对于拼错的项也会显示信息性消息,如Example 16–14 所示。

示例 16-13  为一系列主机替换安全模板

此示例说明了在向已经指定模板的一系列主机指定安全模板时显示的信息性消息。

# tncfg -t cipso
tncfg:cipso> add host=192.168.113.100/32
192.168.113.100/32 previously matched the admin_low template
tncfg:cipso> info
...
host=192.168.113.100/32
tncfg:cipso> exit

Trusted Extensions 回退机制可以确保此显式指定会覆盖以前的指定,如可信网络回退机制中所述。

示例 16-14  处理安全模板中拼错的 IP 地址

对于拼错的项会显示一条信息性消息。下面添加的主机在地址中忽略了 :200

# tncfg -t cipso
tncfg:cipso> add host=2001:a08:3903::0/56
Invalid host: 2001:a08:3903::0/56
示例 16-15  在标签 PUBLIC 下创建无标签子网

Example 16–2 中,安全管理员创建了可为不可信主机指定标签 PUBLIC 的安全模板。在此示例中,安全管理员将一个子网指定给 PUBLIC 标签。指定系统上的用户可以将来自此子网的主机中的文件系统挂载到 PUBLIC 区域。

# tncfg -t public
tncfg:public> add host=10.10.0.0/16
tncfg:public> exit

可以在标签 PUBLIC 下立即访问此子网。