要在从 WAN Boot 服务器到客户机的传送期间保护数据,可以使用安全套接字层上的 HTTP (HTTPS)。 要使用安全 WAN Boot 安装配置 中介绍的更安全的安装配置,必须允许 Web 服务器使用 HTTPS。
要允许 WAN Boot 服务器上的 Web 服务器软件使用 HTTPS,必须执行以下任务。
激活 Web 服务器软件中的安全套接字层 (SSL) 支持。
启用 SSL 支持和客户机认证的进程随 Web 服务器的不同而不同。 本文档未说明如何在 Web 服务器上启用这些安全功能。 有关这些功能的信息,请参见以下文档。
有关在 SunONE Web 服务器和 iPlanet Web 服务器上激活 SSL 的信息,请分别参见 http://docs.sun.com 上的 Sun ONE 文档集和 iPlanet 文档集。
有关在 Apache Web 服务器上激活 SSL 的信息,请参见 http://httpd.apache.org/docs-project/ 上的 Apache 文档项目。
如果您使用的 Web 服务器软件未在前面的列表中列出,请参见相应 Web 服务器软件的文档。
在 WAN Boot 服务器上安装数字证书。
有关与 WAN Boot 一起使用数字证书的信息,请参见使用数字证书进行服务器和客户机认证 。
为客户机提供信任证书。
有关如何创建信任证书的说明,请参见使用数字证书进行服务器和客户机认证 。
创建散列密钥和加密密钥。
有关如何创建密钥的说明,请参见创建散列密钥和加密密钥 。
(可选)配置 Web 服务器软件,以支持客户机认证。
有关如何配置 Web 服务器,以支持客户机认证的信息,请参见 Web 服务器的文档。
WAN Boot 安装方法可以使用 PKCS#12 文件,以通过带有服务器认证/客户机和服务器认证的 HTTPS 来执行安装。 有关使用 PKCS#12 文件的要求和原则,请参见数字证书要求 。
要在 WAN Boot 安装中使用 PKCS#12 文件,请执行以下任务。
将 PKCS#12 文件拆分为独立的 SSL 专用密钥文件和信任证书文件。
将信任证书插入 /etc/netboot 分层结构中客户机的 truststore 文件中。 信任证书将指示客户机信任服务器。
(可选)将 SSL 专用密钥文件的内容插入 /etc/netboot 分层结构中客户机的 keystore 文件中。
wanbootutil 命令提供了执行前面列表中的任务的选项。
拆分 PKCS#12 文件之前,请在 WAN Boot 服务器上创建 /etc/netboot 分层结构的相应子目录。
有关 /etc/netboot 分层结构的概述信息,请参见在 /etc/netboot 分层结构中存储配置和安全信息 。
有关如何创建 /etc/netboot 分层结构的说明,请参见在 WAN Boot 服务器上创建 /etc/netboot 分层结构 。
假设用户角色为 WAN Boot 服务器上的 Web 服务器用户。
从 PKCS#12 文件中提取信任证书。 将证书插入 /etc/netboot 分层结构中客户机的 truststore 文件中。
# wanbootutil p12split -i p12cert \ -t /etc/netboot/net-ip/client-ID/truststore |
wanbootutil 命令的选项,用于将 PKCS#12 文件拆分为独立的专用密钥文件和证书文件。
指定要拆分的 PKCS#12 文件的名称。
将证书插入客户机的 truststore 文件中。 net-ip 是客户机子网的 IP 地址。 client-ID 可以是用户自定义的 ID,也可以是 DHCP 客户机 ID。
(可选的) 确定是否需要客户机认证。
如果是,请继续执行以下步骤。
如果否,请执行创建散列密钥和加密密钥 。
将客户机证书插入客户机的 certstore 中。
# wanbootutil p12split -i p12cert -c \ /etc/netboot/net-ip/client-ID/certstore -k keyfile |
wanbootutil 命令的选项,用于将 PKCS#12 文件拆分为独立的专用密钥文件和证书文件。
指定要拆分的 PKCS#12 文件的名称。
将客户机证书插入客户机的 certstore 中。 net-ip 是客户机子网的 IP 地址。 client-ID 可以是用户自定义的 ID,也可以是 DHCP 客户机 ID。
指定通过拆分 PKCS#12 文件而创建的客户机 SSL 专用密钥文件的名称。
将专用密钥插入客户机的 keystore 中。
# wanbootutil keymgmt -i -k keyfile \ -s /etc/netboot/net-ip/client-ID/keystore -o type=rsa |
将 SSL 专用密钥插入客户机的 keystore 中
指定在上一步中创建的客户机专用密钥文件的名称
指定指向客户机的 keystore 的路径
指定密钥类型为 RSA
在以下实例中,您将使用 PKCS#12 文件安装位于子网 192.168.255.0 上的客户机 010003BA152A42。此命令样例从 PKCS#12 文件 client.p12 中提取了一个证书, 然后将信任证书的内容放入客户机的 truststore 文件中。
在执行这些命令之前,您首先必须假设用户角色为 Web 服务器用户。 在此实例中,Web 服务器用户的角色为 nobody。
server# su nobody Password: nobody# wanbootutil p12split -i client.p12 \ -t /etc/netboot/192.168.255.0/010003BA152A42/truststore nobody# chmod 600 /etc/netboot/192.168.255.0/010003BA152A42/truststore |
如果要使用 HTTPS 传送数据,那么您必须创建 HMAC SHA1 散列密钥和加密密钥。 如果计划通过半专用网络进行安装,则可能不需要加密安装数据。 您可以使用 HMAC SHA1 散列密钥检查 wanboot 程序的完整性。 有关散列密钥和加密密钥的概述信息,请参见在 WAN Boot 安装期间保护数据 。
通过使用 wanbootutil keygen 命令,可以生成这些密钥并将其存储在相应的 /etc/netboot 目录中。
假设用户角色为 WAN Boot 服务器上的 Web 服务器用户。
创建主 HMAC SHA1 密钥。
# wanbootutil keygen -m |
创建 WAN Boot 服务器的主 HMAC SHA1 密钥
从主密钥中创建客户机的 HMAC SHA1 散列密钥。
# wanbootutil keygen -c -o [net=net-ip,{cid=client-ID,}]type=sha1 |
从主密钥中创建客户机的散列密钥。
指示包含 wanbootutil keygen 命令的附加选项。
指定客户机子网的 IP 地址。 如果不使用 net 选项,密钥将存储在 /etc/netboot/keystore 文件中,可被所有 WAN Boot 客户机使用。
指定客户机 ID。 客户机 ID 可以是用户自定义的 ID,也可以是 DHCP 客户机 ID。 cid 选项之前必须有一个有效的 net= 值。 如果未指定带有 net 选项的 cid 选项,密钥将存储在 /etc/netboot/net-ip/keystore 文件中。 net-ip 子网上的所有 WAN Boot 客户机均可使用此密钥。
指示 wanbootutil keygen 公用程序创建客户机的 HMAC SHA1 散列密钥。
确定是否要创建客户机的加密密钥。
您需要创建加密密钥以通过 HTTPS 执行 WAN Boot 安装。 在客户机与 WAN Boot 服务器建立 HTTPS 连接之前,WAN Boot 服务器会将加密数据和信息传送至客户机。 在安装期间,加密密钥使客户机解密此信息,然后使用其中的信息。
如果要通过带有服务器认证的 HTTPS 执行更安全的 WAN 安装,请继续。
如果只是要检查 wanboot 程序的完整性,那么您无需创建加密密钥。 请执行步骤 6。
创建客户机的加密密钥。
# wanbootutil keygen -c -o [net=net-ip,{cid=client-ID,}]type=key-type |
创建客户机的加密密钥。
指示包含 wanbootutil keygen 命令的附加选项。
指定客户机的网络 IP 地址。 如果不使用 net 选项,密钥将存储在 /etc/netboot/keystore 文件中,可被所有 WAN Boot 客户机使用。
指定客户机 ID。 客户机 ID 可以是用户自定义的 ID,也可以是 DHCP 客户机 ID。 cid 选项之前必须有一个有效的 net= 值。 如果未指定带有 net 选项的 cid 选项,密钥将存储在 /etc/netboot/net-ip/keystore 文件中。 net-ip 子网上的所有 WAN Boot 客户机均可使用此密钥。
指示 wanbootutil keygen 公用程序创建客户机的加密密钥。 key-type 可以具有 3des 的值,也可以具有 aes 的值。
在客户机系统上安装密钥。
有关如何在客户机上安装密钥的说明,请参见在客户机上安装密钥 。
以下实例创建了 WAN Boot 服务器的主 HMAC SHA1 密钥, 还创建了位于子网 192.168.255.0 上的客户机 010003BA152A42 的 HMAC SHA1 散列密钥和 3DES 加密密钥。
在执行这些命令之前,您首先必须假设用户角色为 Web 服务器用户。 在此实例中,Web 服务器用户的角色为 nobody。
server# su nobody Password: nobody# wanbootutil keygen -m nobody# wanbootutil keygen -c -o net=192.168.255.0,cid=010003BA152A42,type=sha1 nobody# wanbootutil keygen -c -o net=192.168.255.0,cid=010003BA152A42,type=3des |