跳过导航链接 | |
退出打印视图 | |
Oracle Solaris Trusted Extensions 配置指南 Oracle Solaris 10 8/11 Information Library (简体中文) |
3. 将 Trusted Extensions 软件添加到 Solaris OS(任务)
在 Trusted Extensions 中启用 IPv6 网络
在 Trusted Extensions 中初始化 Solaris Management Console 服务器
使全局区域成为 Trusted Extensions 中的客户机
在 Trusted Extensions 中创建安全管理员角色
在 Trusted Extensions 中创建可以承担角色的用户
在 Trusted Extensions 中创建起始目录服务器
在 Trusted Extensions 中使用户能够访问其起始目录
在启用 Trusted Extensions 之后运行了 netservices limited
如何在 Trusted Extensions 中将文件复制到便携介质
如何在 Trusted Extensions 中从便携介质复制文件
5. 为 Trusted Extensions 配置 LDAP(任务)
6. 配置具有 Trusted Extensions 的无显示系统(任务)
txzonemgr 脚本会按步骤引导您完成配置有标签区域的以下所有任务。
注意 - 您必须运行 Solaris 10 8/07 发行版的 Trusted Extensions 或更高发行版才能使用 txzonemgr 过程。或者,必须为 Solaris 10 11/06 发行版安装所有修补程序。 |
如果运行的是不具有最新修补程序的 Solaris 10 11/06 发行版,请使用附录 B中的过程来配置有标签区域。
本节中的说明介绍在最多指定了两个 IP 地址的系统上配置有标签区域。对于其他配置,请参见任务列表:准备和启用 Trusted Extensions中的配置选项。
|
此脚本会按步骤引导您正确完成配置、安装、初始化和引导有标签区域的任务。在该脚本中,您将命名每个区域,将名称与标签关联,安装软件包以创建虚拟 OS,然后引导区域以启动该区域中的服务。此脚本包含复制区域和克隆区域任务。您还可以停止某个区域,更改区域的状态,以及添加特定于区域的网络接口。
此脚本会呈现一个动态确定的菜单,其中仅显示适用于当前环境的有效选项。例如,如果已配置某个区域的状态,则不会显示 “Install zone"(安装区域)菜单项。已完成的任务不会显示在该列表中。
开始之前
您是超级用户。
如果打算克隆区域,则您已完成克隆区域的准备。如果打算使用自己的安全模板,则您已创建相应的模板。
# /usr/sbin/txzonemgr
该脚本将打开 "Labeled Zone Manager"(有标签区域管理器)对话框。此 zenity 对话框会提示您执行相应的任务,具体取决于安装的当前状态。
要执行某项任务,请选择相应菜单项,然后按回车键或单击 "OK"(确定)。在提示您输入文本时,键入文本,然后按回车键或单击 "OK"(确定)。
提示 - 要查看当前的区域完成状态,请在 "Labeled Zone Manager"(有标签区域管理器)中单击 "Return to Main Menu"(返回到主菜单)。
注 - 如果要将系统配置为使用 DHCP,请参阅 OpenSolaris Community: Security Web 页的 Trusted Extensions 部分中的手提电脑说明。
从 Solaris 10 10/08 发行版开始,如果要配置的系统中的每个有标签区域都在其自己的子网上,则可以跳过此步骤,继续命名区域并为其添加标签。完成区域的安装和定制后,在添加网络接口以路由现有的有标签区域中为每个有标签区域添加网络接口。
在此任务中,您将在全局区域中配置网络。必须仅创建一个 all-zones 接口。all-zones 接口由有标签区域和全局区域共享。共享接口用于在有标签区域和全局区域之间路由通信流量。要配置此接口,请执行以下操作之一:
根据某个物理接口创建一个逻辑接口,然后共享该物理接口。
此配置管理起来最简单。如果为系统指定了两个 IP 地址,请选择此配置。在此过程中,逻辑接口将成为全局区域的特定地址,而物理接口则在全局区域和有标签区域之间共享。
共享物理接口
如果为系统指定了一个 IP 地址,请选择此配置。在此配置中,物理接口在全局区域和有标签区域之间共享。
共享虚拟网络接口 vni0
如果要配置 DHCP,或者每个子网位于不同的标签,请选择此配置。有关样例过程,请参阅 OpenSolaris Community: Security Web 页的 Trusted Extensions 部分中的手提电脑说明。
从 Solaris 10 10/08 发行版开始,Trusted Extensions 中的回送接口将创建为 all-zones 接口。因此,不需要创建 vni0 共享接口。
要添加特定于区域的网络接口,请完成区域创建并进行检验,然后再添加接口。有关过程,请参见添加网络接口以路由现有的有标签区域。
开始之前
您是全局区域中的超级用户。
将显示 "Labeled Zone Manager"(有标签区域管理器)。要打开此 GUI,请参见运行 txzonemgr 脚本。
此时将显示接口列表。
注 - 在此示例中,安装过程中向物理接口指定了一个主机名和一个 IP 地址。
有一个接口的系统会显示类似如下的菜单。添加了注释以提供帮助:
vni0 DownVirtual Network Interface eri0 global 10.10.9.9 cipso Up Physical Interface
提供了三个选项:
View Template Assign a label to the interface Share Enable the global zone and labeled zones to use this interface Create Logical Interface Create an interface to use for sharing
在此配置中,主机的 IP 地址应用于所有区域。因此,主机的地址是 all-zones 地址。此主机不能用作多级别服务器。例如,用户不能共享此系统中的文件。该系统不能成为 LDAP 代理服务器、NFS 起始目录服务器或打印服务器。
eri0 all-zones 10.10.9.8 cipso Up
如果物理接口是一个 all-zones 接口,则说明操作成功。继续命名区域并为其添加标签。
然后,共享物理接口。
这是最简单的 Trusted Extensions 网络配置。在此配置中,其他系统可使用主 IP 地址来访问此系统中的任何区域,而逻辑接口是全局区域的特定接口。全局区域可用作多级别服务器。
关闭用于确认新逻辑接口创建操作的对话框。
例如,指定 machine1-services 作为逻辑接口的主机名。该名称指示此主机提供多级别服务。
例如,指定 10.10.9.2 作为逻辑接口的 IP 地址。
该接口将显示为 Up(启用)。
eri0 global 10.10.9.1 cipso Up eri0:1 global 10.10.9.2 cipso Up
eri0 all-zones 10.10.9.1 cipso Up eri0:1 global 10.10.9.2 cipso Up
如果至少一个接口是 all-zones 接口,则说明操作成功。
示例 4-3 在有共享逻辑接口的系统上查看 /etc/hosts 文件
在全局区域有唯一接口并且有标签区域与全局区域共享另一个接口的系统上,/etc/hosts 文件的内容类似如下:
# cat /etc/hosts ... 127.0.0.1 localhost 192.168.0.11 machine1 loghost 192.168.0.12 machine1-services
在缺省配置中,tnrhdb 文件的内容类似如下:
# cat /etc/security/tsol/tnrhdb ... 127.0.0.1:cipso 192.168.0.11:cipso 192.168.0.12:cipso 0.0.0.0:admin_low
如果 all-zones 接口不在 tnrhdb 文件中,则该接口缺省为 cipso。
示例 4-4 在有一个 IP 地址的 Trusted Extensions 系统上显示共享接口
在此示例中,管理员不打算将系统用作多级别服务器。为了节省 IP 地址,将全局区域配置为与每个有标签区域共享其 IP 地址。
管理员为系统上的 hme0 接口选择 "Share"(共享)。软件将所有区域配置为具有逻辑 NIC。这些逻辑 NIC 在全局区域中共享一个物理 NIC。
管理员运行 ifconfig -a 命令来检验网络接口 192.168.0.11 上的物理接口 hme0 是否已共享。显示的值为 all-zones:
lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1 inet 127.0.0.1 netmask ff000000 hme0: flags=1000843<BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 all-zones inet 192.168.0.11 netmask fffffe00 broadcast 192.168.0.255
从 Solaris 10 10/08 发行版开始,Trusted Extensions 中的回送接口将创建为 all-zones 接口。
lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1 all-zones inet 127.0.0.1 netmask ff000000 hme0: flags=1000843<BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 all-zones inet 192.168.0.11 netmask fffffe00 broadcast 192.168.0.255
管理员还会检查 /etc/hostname.hme0 文件的内容。
192.168.0.11 all-zones
您不必为 label_encodings 文件中的每个标签创建一个区域,但您可以这样做。管理 GUI 会枚举可在此系统上为其创建区域的标签。
开始之前
您是全局区域中的超级用户。将显示 "Labeled Zone Manager"(有标签区域管理器)对话框。要打开此 GUI,请参见运行 txzonemgr 脚本。您已在全局区域中配置了网络接口。
您已创建了所需的任何安全模板。除了定义其他属性外,安全模板还定义可指定给网络接口的标签范围。缺省安全模板可能会满足您的需要。
有关安全模板的概述,请参见《Oracle Solaris Trusted Extensions 管理员规程》中的"Trusted Extensions 中的网络安全属性"。
要使用 Solaris Management Console 创建安全模板,请参见《Oracle Solaris Trusted Extensions 管理员规程》中的"配置可信网络数据库(任务列表)"。
此时会提示您输入名称。
提示 - 为区域指定一个与区域标签类似的名称。例如,标签为 CONFIDENTIAL: RESTRICTED(机密:受限)的区域的名称为 restricted(受限)。
例如,缺省 label_encodings 文件包含以下标签:
PUBLIC CONFIDENTIAL: INTERNAL USE ONLY CONFIDENTIAL: NEED TO KNOW CONFIDENTIAL: RESTRICTED SANDBOX: PLAYGROUND MAX LABEL
虽然可以每个标签创建一个区域,但是请考虑创建下面的区域:
在适用于所有用户的系统上,为 PUBLIC 标签创建一个区域,为 CONFIDENTIAL 标签创建三个区域。
在适用于开发者的系统上,为 SANDBOX: PLAYGROUND 标签创建一个区域。对于开发者而言,由于 SANDBOX: PLAYGROUND 定义为不相交标签,所以只有开发者使用的系统需要此标签对应的区域。
不要为 MAX LABEL 标签创建区域,该标签定义为安全许可。
对话框会在任务列表上方显示 zone-name :configured(zone-name:已配置)。
# /usr/sbin/smc &
在出现提示时提供口令。
该对话框将显示没有指定的标签的区域名称。
如果单击了错误的标签,请再次单击该标签以将其取消选中,然后单击正确的标签。
在标签生成器中单击 "OK"(确定),然后在 "Trusted Network Zones Properties"(可信网络区域属性)对话框中单击 "OK"(确定)。
当所需的每个区域都列在面板中时,或者 "Add Zone Configuration"(添加区域配置)菜单项打开的对话框没有区域名称的值时,则说明您已完成。
单击 "Select Label"(选择标签)菜单项,然后单击 "OK"(确定)以显示可用标签列表。
对于名为 public(公共)的区域,从列表中选择标签 PUBLIC(公共)。
此时将显示任务列表。
开始之前
您是全局区域中的超级用户。该区域已进行配置,并指定有一个网络接口。
"Labeled Zone Manager"(有标签区域管理器)对话框显示的副标题为 zone-name:configured(zone-name:已配置)。要打开此 GUI,请参见运行 txzonemgr 脚本。
注意 - 完成此过程需要花费一些时间。请勿在完成此任务的过程中执行其他任务。 |
系统会将软件包从全局区域复制到非全局区域。此任务会在该区域中安装一个有标签的虚拟操作系统。为了继续演示示例,此任务将安装 public(公共)区域。GUI 将显示类似如下内容的输出:
# Labeled Zone Manager: Installing zone-name zone Preparing to install zone <zonename> Creating list of files to copy from the global zone Copying <total> files to the zone Initializing zone product registry Determining zone package initialization order. Preparing to initialize <subtotal> packages on the zone. Initializing package <number> of <subtotal>: percent complete: percent Initialized <subtotal> packages on zone. Zone <zonename> is initialized. The file /zone/internal/root/var/sadm/system/logs/install_log contains a log of the zone installation.
注 - 诸如 cannot create ZFS dataset zone/zonename: dataset already exists(无法创建 ZFS 数据集合 zone/zonename:数据集合已经存在)之类的消息是信息性的。该区域使用现有的数据集合。
安装完成后,系统将提示您输入主机的名称。提供一个名称。
对话框会在任务列表上方显示 zone-name:installed(zone-name:已安装)。
故障排除
如果显示类似如下内容的警告:Installation of these packages generated errors: SUNWpkgname(安装以下软件包时发生错误:SUNWpkgname),请查看安装日志并完成软件包的安装。
开始之前
您是全局区域中的超级用户。该区域已安装,并指定有一个网络接口。
"Labeled Zone Manager"(有标签区域管理器)对话框显示的副标题为 zone-name:installed(zone-name:已安装)。要打开此 GUI,请参见运行 txzonemgr 脚本。
此时将为当前有标签区域显示一个单独的控制台窗口。
Zone Terminal Console(区域终端控制台)会跟踪区域引导进度。如果区域是从头开始创建的,则将在控制台中显示类似如下内容的消息:
[Connected to zone 'public' console] [NOTICE: Zone booting up] ... Hostname: zone-name Loading smf(5) service descriptions: number/total Creating new rsa public/private host key pair Creating new dsa public/private host key pair rebooting system due to change(s) in /etc/default/init [NOTICE: Zone rebooting]
注意 - 请勿在完成此任务的过程中执行其他任务。 |
如果配置并引导了四个缺省区域,Labeled Zone Manager(有标签区域管理器)将按如下所示显示区域:
故障排除
有时,将会显示错误消息,并且区域不会重新引导。在 Zone Terminal Console(区域终端控制台)中,按回车键。如果提示您键入 y 重新引导,请键入 y 并按回车键。区域将会重新引导。
接下来的步骤
如果此区域是从其他区域复制或克隆的,请继续检验区域的状态。
如果此区域是第一个区域,请继续定制有标签区域。
hostname console login: root Password: Type root password
# svcs -xv svc:/application/print/server:default (LP print server) State: disabled since Tue Oct 10 10:10:10 2006 Reason: Disabled by an administrator. See: http://sun.com/msg/SMF-8000-05 See: lpsched(1M) ...
sendmail 和 print 服务不是关键服务。
# ifconfig -a
例如,以下输出结果显示了 hme0 接口的 IP 地址。
# ... hme0: flags=1000843<BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 all-zones inet 192.168.0.11 netmask fffffe00 broadcast 192.168.0.255
# DISPLAY=global-zone-hostname:n.n # export DISPLAY
例如,显示一个时钟。
# /usr/openwin/bin/xclock
如果区域标签处的时钟没有出现,表明区域网络的配置不正确。有关调试建议,请参见有标签区域无法访问 X 服务器。
# zoneadm list -v ID NAME STATUS PATH BRAND IP 0 global running / native shared 3 internal running /zone/internal native shared 4 needtoknow running /zone/needtoknow native shared 5 restricted running /zone/restricted native shared
接下来的步骤
您已完成了有标签区域的配置。要将特定于区域的网络接口添加到区域中,或者为每个有标签区域建立缺省路由,请继续将网络接口和路由添加到有标签区域。否则,请继续在 Trusted Extensions 中创建角色和用户。
如果要克隆区域或复制区域,此过程可将某个区域配置为其他区域的模板。此外,此过程还可配置尚未根据模板创建的区域以供使用。
开始之前
您是全局区域中的超级用户。您已完成了检验区域的状态。
如果要复制或克隆此区域,您禁用的服务将会在新区域中被禁用。在您的系统上处于联机状态的服务依赖于区域的服务清单。使用 netservices limited 命令可关闭有标签区域不需要的服务。
# netservices limited
# svcs ... STATE STIME FMRI online 13:05:00 svc:/application/graphical-login/cde-login:default ...
# svcadm disable svc:/application/graphical-login/cde-login # svcs cde-login STATE STIME FMRI disabled 13:06:22 svc:/application/graphical-login/cde-login:default
有关服务管理框架的信息,请参见 smf(5) 手册页。
在 zone-name: Zone Terminal Console(zone-name:区域终端控制台)中,以下消息表明区域已关闭。
[ NOTICE: Zone halted]
如果不复制或克隆此区域,请使用创建此第一个区域的方式创建其余的区域。否则,请继续执行下一步。
在全局区域的终端窗口中,从 zone-name 区域删除此文件。
# cd /zone/zone-name/root/etc # ls auto_home* auto_home auto_home_zone-name # rm auto_home_zone-name
例如,如果 public(公共)区域是用于克隆其他区域的模板,请删除 auto_home_public 文件:
# cd /zone/public/root/etc # rm auto_home_public
Zone Terminal Console(区域终端控制台)会跟踪区域引导进度。控制台中会显示类似如下的消息:
[Connected to zone 'public' console] [NOTICE: Zone booting up] ... Hostname: zonename
按回车键可出现登录提示。您可以使用 root 用户身份登录。
开始之前
您已完成了定制有标签区域。
将显示 "Labeled Zone Manager"(有标签区域管理器)对话框。要打开此 GUI,请参见运行 txzonemgr 脚本。
有关详细信息,请参见命名区域并为其添加标签。
对于每个新区域,您将重复执行这些步骤。
此时一个窗口会显示复制过程。该过程完成后,区域就安装好了。
如果 Labeled Zone Manager(有标签区域管理器)中显示 zone-name: configured(zone-name:已配置),请继续执行下一步。否则,请继续执行步骤 e。
接下来的步骤
针对每个区域完成检验区域的状态后,如果您希望每个区域位于单独的物理网络上,请继续添加网络接口以路由现有的有标签区域。
如果您尚未创建角色,请继续在 Trusted Extensions 中创建角色和用户。
如果您已经创建了角色,请继续在 Trusted Extensions 中创建起始目录。