Solaris 10 8/07 安装指南:基于网络的安装

(可选)使用 HTTPS 保护数据

要在从 WAN Boot 服务器到客户机的传送期间保护数据,可以使用安全套接字层上的 HTTP (HTTPS)。要使用安全 WAN Boot 安装配置中描述的更多安全安装配置,必须启用您的 Web 服务器以使用 HTTPS。

如果您不想执行安全 WAN Boot,请跳过此部分描述的过程。要继续准备安全性较低的安装,请参见创建自定义 JumpStart 安装文件

要允许 WAN Boot 服务器上的 Web 服务器软件使用 HTTPS,必须执行以下任务。

此部分说明如何在 WAN Boot 安装中使用数字证书和密钥。

Procedure(可选)使用数字证书进行服务器和客户机认证

WAN Boot 安装方法可以使用 PKCS#12 文件,以通过带有服务器认证/客户机和服务器认证的 HTTPS 来执行安装。有关使用 PKCS#12 文件的要求和指南,请参见数字证书要求

要在 WAN Boot 安装中使用 PKCS#12 文件,请执行以下任务。

wanbootutil 命令提供了执行前面列表中的任务的选项。

如果您不想执行安全的 WAN Boot,请跳过此过程。要继续准备安全性较低的安装,请参见创建自定义 JumpStart 安装文件

要创建受信任证书和客户机私钥,请执行以下步骤。

开始之前

拆分 PKCS#12 文件之前,请在 WAN Boot 服务器上创建 /etc/netboot 分层结构的相应子目录。

  1. 采用与 WAN Boot 服务器上的 Web 服务器用户相同的用户角色。

  2. 从 PKCS#12 文件中提取受信任证书。将证书插入 /etc/netboot 分层结构中客户机的 truststore 文件中。


    # wanbootutil p12split -i p12cert \
    -t /etc/netboot/net-ip/client-ID/truststore
    
    p12split

    wanbootutil 命令的选项,用于将 PKCS#12 文件拆分为独立的私钥文件和证书文件。

    -i p12cert

    指定要拆分的 PKCS#12 文件的名称。

    -t /etc/netboot/net-ip /client-ID/truststore

    将证书插入客户机的 truststore 文件中。net-ip 是客户机子网的 IP 地址。client-ID 可以是用户定义的 ID 或 DHCP 客户机 ID。

  3. (可选的)确定是否需要客户机认证。

    • 如果不需要,请转至(可选)创建一个散列密钥和一个加密密钥

    • 如果是,请继续执行以下步骤。

      1. 将客户机证书插入客户机的 certstore 中。


        # wanbootutil p12split -i p12cert -c \
        /etc/netboot/net-ip/client-ID/certstore -k keyfile
        
        p12split

        wanbootutil 命令的选项,用于将 PKCS#12 文件拆分为独立的私钥文件和证书文件。

        -i p12cert

        指定要拆分的 PKCS#12 文件的名称。

        -c /etc/netboot/net-ip/ client-ID/certstore

        将客户机证书插入客户机的 certstore 中。net-ip 是客户机子网的 IP 地址。client-ID 可以是用户定义的 ID 或 DHCP 客户机 ID。

        -k keyfile

        指定通过拆分 PKCS#12 文件而创建的客户机 SSL 私钥文件的名称。

      2. 将私钥插入客户机的 keystore 中。


        # wanbootutil keymgmt -i -k keyfile \
        -s /etc/netboot/net-ip/client-ID/keystore -o type=rsa
        
        keymgmt -i

        在客户机的 keystore 中插入 SSL 私钥

        -k keyfile

        指定在上一步中创建的客户机私钥文件的名称

        -s /etc/netboot/net-ip/ client-ID/keystore

        指定指向客户机的 keystore 的路径

        -o type=rsa

        将密钥类型指定为 RSA


示例 11–6 创建用于服务器认证的受信任证书

在以下示例中,您可以在子网 192.168.198.0 上使用 PKCS#12 文件安装客户机 010003BA152A42。此命令样例首先从名为 client.p12 的 PKCS#12 文件中提取一个证书,然后将受信任证书的内容放入客户机的 truststore 文件中。

在执行这些命令之前,您首先必须采用与 Web 服务器用户相同的用户角色。在本示例中,Web 服务器用户角色为 nobody


server# su nobody
Password:
nobody# wanbootutil p12split -i client.p12 \
-t /etc/netboot/192.168.198.0/010003BA152A42/truststore
nobody# chmod 600 /etc/netboot/192.168.198.0/010003BA152A42/truststore

继续 WAN Boot 安装

创建数字证书后,请创建一个散列密钥和一个加密密钥。有关说明,请参见(可选)创建一个散列密钥和一个加密密钥

另请参见

有关如何创建受信任证书的更多信息,请参见手册页 wanbootutil(1M)

Procedure(可选)创建一个散列密钥和一个加密密钥

如果要使用 HTTPS 传送数据,那么您必须创建 HMAC SHA1 散列密钥和加密密钥。如果计划通过半专用网络进行安装,则可能不需要加密安装数据。您可以使用 HMAC SHA1 散列密钥检查 wanboot 程序的完整性。

通过使用 wanbootutil keygen 命令,可以生成这些密钥并将它们存储在相应的 /etc/netboot 目录中。

如果您不想执行安全的 WAN Boot,请跳过此过程。要继续准备安全性较低的安装,请参见创建自定义 JumpStart 安装文件

要创建散列密钥和加密密钥,请执行以下步骤。

  1. 采用与 WAN Boot 服务器上的 Web 服务器用户相同的用户角色。

  2. 创建主 HMAC SHA1 密钥。


    # wanbootutil keygen -m
    
    keygen -m

    创建 WAN Boot 服务器的主 HMAC SHA1 密钥

  3. 从主密钥中创建客户机的 HMAC SHA1 散列密钥。


    # wanbootutil keygen -c -o [net=net-ip,{cid=client-ID,}]type=sha1
    
    -c

    从主密钥中创建客户机的散列密钥。

    -o

    指示包含 wanbootutil keygen 命令的附加选项。

    (可选)net=net-ip

    指定客户机子网的 IP 地址。如果不使用 net 选项,密钥将存储在 /etc/netboot/keystore 文件中,可被所有 WAN Boot 客户机使用。

    (可选)cid=client-ID

    指定客户机 ID。客户机 ID 可以是用户自定义的 ID,也可以是 DHCP 客户机 ID。cid 选项之前必须有一个有效的 net= 值。如果指定 net 选项时未带有 cid 选项,密钥将存储在 /etc/netboot/net-ip/keystore 文件中。net-ip 子网上的所有 WAN Boot 客户机均可使用此密钥。

    type=sha1

    指示 wanbootutil keygen 实用程序创建客户机的 HMAC SHA1 散列密钥。

  4. 确定是否要创建客户机的加密密钥。

    您需要创建加密密钥以通过 HTTPS 执行 WAN Boot 安装。在客户机与 WAN Boot 服务器建立 HTTPS 连接之前,WAN Boot 服务器会将加密数据和信息传送至客户机。在安装期间,加密密钥使客户机解密此信息,然后使用其中的信息。

    • 如果要通过带有服务器认证的 HTTPS 执行更安全的 WAN 安装,请继续。

    • 如果只是要检查 wanboot 程序的完整性,则无需创建加密密钥。请转至步骤 6

  5. 为客户机创建加密密钥。


    # wanbootutil keygen -c -o [net=net-ip,{cid=client-ID,}]type=key-type
    
    -c

    创建客户机的加密密钥。

    -o

    指示包含 wanbootutil keygen 命令的附加选项。

    (可选)net=net-ip

    指定客户机的网络 IP 地址。如果不使用 net 选项,密钥将存储在 /etc/netboot/keystore 文件中,可被所有 WAN Boot 客户机使用。

    (可选)cid=client-ID

    指定客户机 ID。客户机 ID 可以是用户自定义的 ID,也可以是 DHCP 客户机 ID。cid 选项之前必须有一个有效的 net= 值。如果指定 net 选项时未带有 cid 选项,密钥将存储在 /etc/netboot/net-ip/keystore 文件中。net-ip 子网上的所有 WAN Boot 客户机均可使用此密钥。

    type=key-type

    指示 wanbootutil keygen 实用程序创建客户机的加密密钥。key-type 可以具有 3des 的值,也可以具有 aes 的值。

  6. 在客户机系统上安装密钥。

    有关如何在客户机上安装密钥的说明,请参见在客户机上安装密钥


示例 11–7 创建通过 HTTPS 执行 WAN Boot 安装时所需的密钥

以下示例创建了 WAN Boot 服务器的主 HMAC SHA1 密钥,还创建了子网 192.168.198.0 上的客户机 010003BA152A42 的 HMAC SHA1 散列密钥和 3DES 加密密钥。

在执行这些命令之前,您首先必须采用与 Web 服务器用户相同的用户角色。在本示例中,Web 服务器用户角色为 nobody


server# su nobody
Password:
nobody# wanbootutil keygen -m
nobody# wanbootutil keygen -c -o net=192.168.198.0,cid=010003BA152A42,type=sha1
nobody# wanbootutil keygen -c -o net=192.168.198.0,cid=010003BA152A42,type=3des

继续 WAN Boot 安装

创建散列密钥和加密密钥后,您必须创建安装文件。有关说明,请参见创建自定义 JumpStart 安装文件

另请参见

有关散列密钥和加密密钥的概述信息,请参见在 WAN Boot 安装期间保护数据

有关如何创建散列密钥和加密密钥的更多信息,请参见手册页 wanbootutil(1M)