Solaris 9 9/04 安装指南

第 43 章 准备使用 WAN Boot 进行安装(任务)

本章说明了为 WAN Boot 安装准备网络时所需执行的以下任务。

准备通过广域网进行安装(任务图)

以下各表列出了准备 WAN Boot 安装时所需执行的任务。

要使用 DHCP 服务器或日志服务器,请完成各表底部列出的可选任务。

表 43–1 任务图: 准备执行安全的 WAN Boot 安装

任务 

说明 

参考 

确定要在安装中使用的安全功能。 

查看安全功能及配置,以确定要在 WAN Boot 安装中使用的安全级别。 

在 WAN Boot 安装期间保护数据

WAN Boot 支持的安全配置(概述)

收集 WAN Boot 安装信息。 

填写工作表单,以记录执行 WAN Boot 安装所需的所有信息。 

收集 WAN Boot 安装的信息

在 WAN Boot 服务器上创建文档根目录。 

创建文档根目录和相应的子目录,供配置文件和安装文件使用。 

创建文档根目录

创建 WAN Boot 最小根文件系统。 

使用 setup_install_server 命令创建 WAN Boot 最小根文件系统。

SPARC: 创建 WAN Boot 最小根文件系统

在 WAN Boot 服务器上安装 wanboot 程序。

wanboot 程序复制到 WAN Boot 服务器的文档根目录中。

在 WAN Boot 服务器上安装 wanboot 程序

在 WAN Boot 服务器上安装 wanboot-cgi 程序。

wanboot-cgi 程序复制到 WAN Boot 服务器的 CGI 目录中。

wanboot-cgi 程序复制到 WAN Boot 服务器

(可选)设置日志服务器。 

配置专用系统,以显示引导和安装日志消息。 

(可选)配置 WAN Boot 日志服务器

设置 /etc/netboot 分层结构。

使用 WAN Boot 安装所需的配置文件和安全文件来总装 /etc/netboot 分层结构。

在 WAN Boot 服务器上创建 /etc/netboot 分层结构

配置 Web 服务器,以使用安全的 HTTP 进行更安全的 WAN Boot 安装。 

标识通过 HTTPS 执行 WAN 安装所需的 Web 服务器要求。 

(可选)使用 HTTPS 保护数据

格式化数字证书,以进行更安全的 WAN Boot 安装。 

将 PKCS#12 文件拆分为专用密钥和证书,以便在 WAN 安装中使用。 

创建信任证书和客户机专用密钥

创建散列密钥和加密密钥,以进行更安全的 WAN Boot 安装。 

使用 wanbootutil keygen 命令创建 HMAC SHA1 密钥、3DES 密钥或 AES 密钥。

创建散列密钥和加密密钥

创建 Solaris Flash 归档文件。 

使用 flar create 命令创建要安装在客户机上的软件的归档文件。

创建 Solaris Flash 归档文件

创建定制 JumpStart 安装的安装文件。 

使用文本编辑器创建以下文件: 

  • sysidcfg

  • 配置文件

  • rules.ok

  • 开始脚本

  • 结束脚本

创建 sysidcfg 文件

创建配置文件

创建 rules 文件

(可选)创建开始脚本和结束脚本

创建系统配置文件。 

设置 system.conf 文件中的配置信息。

创建系统配置文件

创建 WAN Boot 配置文件。 

设置 wanboot.conf 文件中的配置信息。

创建 wanboot.conf 文件

(可选)配置 DHCP 服务器,以支持 WAN Boot 安装。 

设置 DHCP 服务器中的 Sun 供应商选项和宏。 

使用 DHCP 服务预先配置系统配置信息(任务)

表 43–2 任务图: 准备执行不安全的 WAN Boot 安装

任务 

说明 

参考 

确定要在安装中使用的安全功能。 

查看安全功能及配置,以确定要在 WAN Boot 安装中使用的安全级别。 

在 WAN Boot 安装期间保护数据

WAN Boot 支持的安全配置(概述)

收集 WAN Boot 安装信息。 

填写工作表单,以记录执行 WAN Boot 安装所需的所有信息。 

收集 WAN Boot 安装的信息

在 WAN Boot 服务器上创建文档根目录。 

创建文档根目录和相应的子目录,供配置文件和安装文件使用。 

创建文档根目录

创建 WAN Boot 最小根文件系统。 

使用 setup_install_server 命令创建 WAN Boot 最小根文件系统。

SPARC: 创建 WAN Boot 最小根文件系统

在 WAN Boot 服务器上安装 wanboot 程序。

wanboot 程序复制到 WAN Boot 服务器的文档根目录中。

在 WAN Boot 服务器上安装 wanboot 程序

在 WAN Boot 服务器上安装 wanboot-cgi 程序。

wanboot-cgi 程序复制到 WAN Boot 服务器的 CGI 目录中。

wanboot-cgi 程序复制到 WAN Boot 服务器

(可选)设置日志服务器。 

配置专用系统,以显示引导和安装日志消息。 

(可选)配置 WAN Boot 日志服务器

设置 /etc/netboot 分层结构。

使用 WAN Boot 安装所需的配置文件和安全文件来总装 /etc/netboot 分层结构。

在 WAN Boot 服务器上创建 /etc/netboot 分层结构

(可选)创建散列密钥。 

使用 wanbootutil keygen 命令创建 HMAC SHA1 密钥。

对于检查数据完整性的不安全安装,请完成此任务以创建 HMAC SHA1 散列密钥。 

创建散列密钥和加密密钥

创建 Solaris Flash 归档文件。 

使用 flar create 命令创建要安装在客户机上的软件的归档文件。

创建 Solaris Flash 归档文件

创建定制 JumpStart 安装的安装文件。 

使用文本编辑器创建以下文件: 

  • sysidcfg

  • 配置文件

  • rules.ok

  • 开始脚本

  • 结束脚本

创建 sysidcfg 文件

创建配置文件

创建 rules 文件

(可选)创建开始脚本和结束脚本

创建系统配置文件。 

设置 system.conf 文件中的配置信息。

创建系统配置文件

创建 WAN Boot 配置文件。 

设置 wanboot.conf 文件中的配置信息。

创建 wanboot.conf 文件

(可选)配置 DHCP 服务器,以支持 WAN Boot 安装。 

设置 DHCP 服务器中的 Sun 供应商选项和宏。 

使用 DHCP 服务预先配置系统配置信息(任务)

配置 WAN Boot 服务器

WAN Boot 服务器是 Web 服务器,它可以在 WAN Boot 安装期间提供引导和配置数据。 有关 WAN Boot 服务器的系统要求列表,请参见表 42–1

本节说明了为 WAN Boot 安装配置 WAN Boot 服务器时所需执行的以下任务。

创建文档根目录

要使用配置文件和安装文件,您必须使 WAN Boot 服务器上的 Web 服务器软件可以访问这些文件。 使这些文件能被访问的方法之一是将它们存储在 WAN Boot 服务器的文档根目录中。

如果要通过文档根目录来使用配置文件和安装文件,那么必须创建该目录。 有关如何创建文档根目录的信息,请参见 Web 服务器文档。 有关如何设计文档根目录的详细信息,请参见在文档根目录中存储安装和配置文件

创建 WAN Boot 最小根文件系统

WAN Boot 使用已修改的特殊 Solaris 最小根文件系统来执行 WAN Boot 安装。 WAN Boot 最小根文件系统包含 Solaris 最小根文件系统中的一个软件子集。 要执行 WAN Boot 安装,必须将最小根文件系统从 Solaris DVD 或 Solaris Software 1 of 2 CD 复制到 WAN Boot 服务器。 请使用带有 -w 选项的 setup_install_server 命令将 WAN Boot 最小根文件系统从 Solaris 软件介质复制到系统硬盘。

此过程将使用 SPARC 介质创建 SPARC WAN Boot 最小根文件系统。 如果要通过基于 x86 的服务器使用 SPARC WAN Boot 最小根文件系统,那么您必须在 SPARC 计算机上创建最小根文件系统。 创建最小根文件系统后,请将其复制到基于 x86 的服务器上的文档根目录中。

有关 setup_install_server 命令的详细信息,请参见第 15 章,准备使用 CD 介质从网络安装(任务)

SPARC: 创建 WAN Boot 最小根文件系统

此过程假设 WAN Boot 服务器正在运行卷管理器。 如果您未使用卷管理器,请参见 System Administration Guide: Devices and File Systems, 以获得有关在没有卷管理器的情况下管理可移动介质的信息。

  1. 成为 WAN Boot 服务器上的超级用户。

    系统必须满足以下要求。

    • 包含 CD-ROM 驱动器或 DVD-ROM 驱动器

    • 是站点网络和名称服务的一部分

      如果您使用了名称服务,那么该系统必须已包含在名称服务(如 NIS、NIS+、DNS 或 LDAP)中。 如果您未使用名称服务,那么必须按照站点策略来发布有关此系统的信息。

  2. 将 Solaris Software 1 of 2 CD 或 Solaris DVD 插入安装服务器的驱动器中。

  3. 为 WAN Boot 最小根文件系统和 Solaris 安装映像创建目录。


    # mkdir -p wan-dir-path install-dir-path
    
    -p

    指示 mkdir 命令为要创建的目录创建所有必需的父目录。

    wan-dir-path

    指定安装服务器上要用来创建 WAN Boot 最小根文件系统的目录。 该目录需要容纳最小根文件系统(通常为 250 MB)。

    install-dir-path

    指定安装服务器上 Solaris 软件映像将被复制到其中的目录。 在此过程中,该目录稍后可以删除。

  4. 更改到已装载磁盘上的 Tools 目录。


    # cd /cdrom/cdrom0/s0/Solaris_9/Tools
    

    在上面的实例中,cdrom0 是指向包含 Solaris 操作环境介质的驱动器的路径。

  5. 将 WAN Boot 最小根文件系统和 Solaris 软件映像复制到 WAN Boot 服务器的硬盘。


    # ./setup_install_server -w wan-dir-path install-dir-path
    
    wan-dir-path

    指定 WAN Boot 最小根文件系统将被复制到其中的目录

    install-dir-path

    指定 Solaris 软件映像将被复制到其中的目录


    注意:

    setup_install_server 命令会报告是否有足够的磁盘空间可用于 Solaris Software 磁盘映像。 要确定可用磁盘空间,请使用 df -kl 命令。


    setup_install_server -w 命令可以创建 WAN Boot 最小根文件系统和 Solaris 软件的网络安装映像。

  6. (可选的) 删除网络安装映像。

    使用 Solaris Flash 归档文件执行 WAN 安装时无需 Solaris 软件映像。 如果该网络安装映像不再用于其它网络安装,请执行此操作以释放磁盘空间。 请键入以下命令,以删除网络安装映像。


    # rm -rf install-dir-path
    
  7. 通过以下方法之一使 WAN Boot 最小根文件系统可用于 WAN Boot 服务器。

    • 在 WAN Boot 服务器的文档根目录中创建指向 WAN Boot 最小根文件系统的符号链接。


      # cd /document-root-directory/miniroot
      # ln -s /wan-dir-path/miniroot .
      
      document-root-directory/miniroot

      指定 WAN Boot 服务器的文档根目录中,要链接到 WAN Boot 最小根文件系统的目录。

      /wan-dir-path/miniroot

      指定指向 WAN Boot 最小根文件系统的路径。

    • 将 WAN Boot 最小根文件系统移到 WAN Boot 服务器上的文档根目录中。


      # mv /wan-dir-path/miniroot /document-root-directory/miniroot/miniroot-name
      
      wan-dir-path/miniroot

      指定指向 WAN Boot 最小根文件系统的路径。

      /document-root-directory/miniroot/

      指定 WAN Boot 服务器的文档根目录中,指向 WAN Boot 最小根文件系统目录的路径。

      miniroot-name

      指定 WAN Boot 最小根文件系统的名称。 请描述性地命名该文件,例如 miniroot.s9_sparc

在 WAN Boot 服务器上安装 wanboot 程序

WAN Boot 使用特殊的二级引导程序 (wanboot) 来安装客户机。 wanboot 程序将装入执行 WAN Boot 安装所需的 WAN Boot 最小根文件系统、客户机配置文件以及安装文件。

要执行 WAN Boot 安装,必须在安装期间为客户机提供 wanboot 程序。 可以使用以下方法为客户机提供此程序。

SPARC: 在 WAN Boot 服务器上安装 wanboot 程序

此过程假设 WAN Boot 服务器正在运行卷管理器。 如果您未使用卷管理器,请参见 System Administration Guide: Devices and File Systems, 以获得有关在没有卷管理器的情况下管理可移动介质的信息。

  1. 成为安装服务器上的超级用户。

  2. 将 Solaris Software 1 of 2 CD 或 Solaris DVD 插入安装服务器的驱动器中。

  3. 更改到 Solaris Software 1 of 2 CD 或 Solaris DVD 上的 sun4u 平台目录中。


    # cd /cdrom/cdrom0/s0/Solaris_9/Tools/Boot/platform/sun4u/
    
  4. wanboot 程序复制到安装服务器。


    # cp wanboot /document-root-directory/wanboot/wanboot-name
    
    document-root-directory

    指定 WAN Boot 服务器的文档根目录。

    wanboot-name

    指定 wanboot 程序的名称。 请描述性地命名此文件,例如 wanboot.s9_sparc

  5. 通过以下方法之一使 wanboot 程序可用于 WAN Boot 服务器。

    • 在 WAN Boot 服务器的文档根目录中创建指向 wanboot 程序的符号链接。


      # cd /document-root-directory/wanboot
      # ln -s /wan-dir-path/wanboot .
      
      document-root-directory/wanboot

      指定 WAN Boot 服务器的文档根目录中,要链接到 wanboot 程序的目录。

      /wan-dir-path/wanboot

      指定指向 wanboot 程序的路径。

    • 将 WAN Boot 最小根文件系统移到 WAN Boot 服务器上的文档根目录中。


      # mv /wan-dir-path/wanboot /document-root-directory/wanboot/wanboot-name
      
      wan-dir-path/wanboot

      指定指向 wanboot 程序的路径。

      /document-root-directory/wanboot/

      指定 WAN Boot 服务器的文档根目录中,指向 wanboot 程序目录的路径。

      wanboot-name

      指定 wanboot 程序的名称。 请描述性地命名此程序,例如 wanboot.s9_sparc

在 WAN Boot 服务器上创建 /etc/netboot 分层结构

在安装期间,WAN Boot 将参考 Web 服务器上的 /etc/netboot 分层结构的内容,以获得有关如何执行安装的指令。 此目录包含 WAN Boot 安装所需的配置信息、专用密钥、数字证书和认证机构。 在安装期间,wanboot-cgi 程序首先将此信息转换到 WAN Boot 文件系统中, 然后将 WAN Boot 文件系统传送至客户机。

您可以在 /etc/netboot 目录中创建子目录,以定制 WAN 安装的范围。 请使用以下目录结构,以定义如何在您要安装的客户机之间共享配置信息。

有关如何设计 /etc/netboot 分层结构的详细规划信息,请参见/etc/netboot 分层结构中存储配置和安全信息

创建 /etc/netboot 分层结构
  1. 成为 WAN Boot 服务器上的超级用户。

  2. 创建 /etc/netboot 目录。


    # mkdir /etc/netboot
    
  3. /etc/netboot 目录的权限更改为 700。


    # chmod 700 /etc/netboot
    
  4. /etc/netboot 目录的属主更改为 Web 服务器属主。


    # chown web-server-user:web-server-group /etc/netboot/
    
    web-server-user

    指定 Web 服务器进程的用户属主

    web-server-group

    指定 Web 服务器进程的组属主

  5. 退出超级用户角色。


    # exit
    
  6. 假设用户角色为 Web 服务器属主。

  7. 创建 /etc/netboot 目录的客户机子目录。


    # mkdir -p /etc/netboot/net-ip/client-ID
    
    -p

    指示 mkdir 命令为要创建的目录创建所有必需的父目录

    (可选)net-ip

    指定客户机子网的网络 IP 地址。

    (可选)client-ID

    指定客户机 ID。 客户机 ID 可以是用户自定义的 ID,也可以是 DHCP 客户机 ID。 client-ID 目录必须是 net-ip 目录的子目录。

  8. /etc/netboot 分层结构中各个目录的权限更改为 700。


    # chmod 700 /etc/netboot/dir-name
    
    dir-name

    指定 /etc/netboot 分层结构中的目录名称。


实例 43–1 在 WAN Boot 服务器上创建 /etc/netboot 分层结构

以下实例显示了如何为子网 192.168.255.0 上的客户机 010003BA152A42 创建 /etc/netboot 分层结构。在此实例中,Web 服务器进程的属主是用户 nobody 和组 admin

本实例中的命令执行以下任务。


# cd /
# mkdir /etc/netboot/
# chmod 700 /etc/netboot
# chown nobody:admin /etc/netboot
# exit
server# su nobody
Password:
nobody# mkdir -p /etc/netboot/192.168.255.0/010003BA152A42
nobody# chmod 700 /etc/netboot/192.168.255.0
nobody# chmod 700 /etc/netboot/192.168.255.0/010003BA152A42

将 WAN Boot CGI 程序复制到 WAN Boot 服务器

wanboot-cgi 程序用于创建数据流,以将以下文件从 WAN Boot 服务器传送至客户机。

安装 Solaris 9 12/03 或兼容版本时,将在系统上安装 wanboot-cgi 程序。 要允许 WAN Boot 服务器使用该程序,请将此程序复制到 WAN Boot 服务器的 cgi-bin 目录中。

wanboot-cgi 程序复制到 WAN Boot 服务器
  1. 成为 WAN Boot 服务器上的超级用户。

  2. wanboot-cgi 程序复制到 WAN Boot 服务器。


    # cp /usr/lib/inet/wanboot/wanboot-cgi /WAN-server-root/cgi-bin/wanboot-cgi
    
    /WAN-server-root

    指定 WAN Boot 服务器上 Web 服务器软件的根目录。

  3. 在 WAN Boot 服务器上,将 CGI 程序的权限更改为 755。


    # chmod 755 /WAN-server-root/cgi-bin/wanboot-cgi
    

(可选)配置 WAN Boot 日志服务器

如果要在非客户机的系统上记录引导和安装日志消息,必须设置一个日志服务器。 在安装期间,如果使用具有 HTTPS 的日志服务器,必须将 WAN Boot 服务器配置为日志服务器。

要配置日志服务器,请按以下步骤执行操作。

配置日志服务器
  1. bootlog-cgi 脚本复制到日志服务器的 CGI 脚本目录中。


    # cp /usr/lib/inet/wanboot/bootlog-cgi \
      log-server-root/cgi-bin
    
    log-server-root/cgi-bin

    指定日志服务器的 Web 服务器目录中的 cgi-bin 目录。

  2. bootlog-cgi 脚本的权限更改为 755。


    # chmod 755 log-server-root/cgi-bin/bootlog-cgi
    
  3. 设置 wanboot.conf 文件中的 boot_logger 参数值。

    wanboot.conf 文件中,指定日志服务器上的 bootlog-cgi 脚本的 URL。

    有关设置 wanboot.conf 文件中的参数的详细信息,请参见创建 wanboot.conf 文件

    在安装期间,引导和安装日志消息记录在日志服务器的 /tmp 目录中。 日志文件的文件名为 bootlog.hostname,其中 hostname 是客户机的主机名。


实例 43–2 通过 HTTPS 配置 WAN Boot 安装的日志服务器

以下实例将 WAN Boot 服务器配置为日志服务器。


# cp /usr/lib/inet/wanboot/bootlog-cgi /opt/apache/cgi-bin/
# chmod 755 /opt/apache/cgi-bin/bootlog-cgi

(可选)使用 HTTPS 保护数据

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

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

使用数字证书进行服务器和客户机认证

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

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

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

拆分 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

      将 SSL 专用密钥插入客户机的 keystore

      -k keyfile

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

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

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

      -o type=rsa

      指定密钥类型为 RSA


实例 43–3 创建用于服务器认证的信任证书

在以下实例中,您将使用 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 目录中。

创建散列密钥和加密密钥
  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. 在客户机系统上安装密钥。

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


实例 43–4 创建通过 HTTPS 执行 WAN Boot 安装时所需的密钥

以下实例创建了 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

创建定制 JumpStart 安装文件

WAN Boot 执行定制 JumpStart 安装,以便在客户机上安装 Solaris Flash 归档文件。 定制 JumpStart 安装方法是一个命令行界面,允许您基于创建的配置文件自动安装若干个系统。 配置文件定义了特定软件安装要求。 您还可以结合使用 shell 脚本,以包含安装之前和安装之后的任务。 您可以选择安装或升级所用的配置文件和脚本。 定制 JumpStart 安装方法基于您选择的配置文件和脚本来安装或升级系统。 此外,您可以使用 sysidcfg 文件指定配置信息,以便使定制 JumpStart 安装完全不需要手动干预。

要准备 WAN Boot 安装的定制 JumpStart 文件,请完成以下任务。

有关定制 JumpStart 安装方法的详细信息,请参见第 25 章,定制 JumpStart(概述)

创建 Solaris Flash 归档文件

Solaris Flash 安装功能允许您在称之为“主系统”的系统上使用 Solaris 操作环境的单个参考安装。 然后,您可以创建 Solaris Flash 归档文件,即主系统的副本映像。 您还可以在网络中的其它系统上安装 Solaris Flash 归档文件,以创建克隆系统。

本节说明了如何创建 Solaris Flash 归档文件,以在 WAN Boot 安装中使用。 创建 Solaris Flash 归档文件之前,首先必须先安装主系统。

创建 Solaris Flash 归档文件

有关如何创建 Solaris Flash 归档文件的详细说明,请参见创建 Solaris Flash 归档文件

  1. 引导主系统。

    尽可能在未激活状态下运行主系统。 如果可能,请在单用户模式下运行该系统。 如果不可能在未激活状态下运行主系统,请关闭所有要归档的应用程序和所有需要大量操作系统资源的应用程序。

  2. 要创建归档文件,请使用 flar create 命令。


    # flar create -n name [optional-parameters]  document-root/flash/filename
    
    name

    为归档文件指定的名称。 所指定的 name 将成为 content_name 关键字的值。

    optional-parameters

    您可以使用 flar create 命令的若干个选项,以定制 Solaris Flash 归档文件。 有关这些选项的详细说明,请参见第 23 章,Solaris Flash(参考)

    document-root/flash

    指向安装服务器文档根目录的 Solaris Flash 子目录的路径。

    filename

    归档文件的名称。

    为了节省磁盘空间,您可能需要在 flar create 命令中使用 -c 选项来压缩归档文件。 但是,压缩归档文件会影响 WAN Boot 安装的性能。 有关创建压缩归档文件的详细信息,请参见手册页 flar create(1M)

    • 如果归档文件创建成功,flar create 命令将返回退出代码 0。

    • 如果归档文件创建失败,flar create 命令将返回一个非零的退出代码。

有关如何创建 Solaris Flash 归档文件的实例,请参见实例 - 创建用于初始安装的归档文件

创建 sysidcfg 文件

您可以在 sysidcfg 文件中指定一组关键字,以预先配置系统。 有关 sysidcfg 关键字及其值的详细信息,请参见使用 sysidcfg 文件进行预先配置

创建 sysidcfg 文件
  1. 使用文本编辑器,在安装服务器上创建一个名为 sysidcfg 的文件。

  2. 键入所需的 sysidcfg 关键字。

    有关 sysidcfg 关键字的详细信息,请参见sysidcfg 文件关键字

  3. sysidcfg 文件保存在 WAN Boot 服务器可以访问的位置。

    请将该文件保存到以下位置之一。

    • 如果 WAN Boot 服务器和安装服务器在同一台计算机上,请将该文件保存到 WAN Boot 服务器上文档根目录的 flash 子目录中。

    • 如果 WAN Boot 服务器和安装服务器不在同一台计算机上,请将该文件保存到安装服务器的文档根目录的 flash 子目录中。


实例 43–5 用于 WAN Boot 安装的 sysidcfg 文件

以下实例是一个基于 SPARC 的系统的 sysidcfg 文件。 该系统的主机名、IP 地址和网络掩码均已通过编辑名称服务进行了预先配置。

network_interface=primary {hostname=seahag
                           default_route=192.168.88.1
                           ip_address=192.168.88.210
                           netmask=255.255.0.0
                           protocol_ipv6=no}
timezone=US/Central
system_locale=C
terminal=xterm
timeserver=localhost
name_service=NIS {name_server=matter(192.168.255.255)
                  domain_name=mind.over.example.com
                  }
security_policy=none

创建配置文件

配置文件是一种文本文件,用于指示定制 JumpStart 程序如何在系统上安装 Solaris 软件。 配置文件定义了安装元素,例如要安装的软件组。

有关如何创建配置文件的详细信息,请参见创建配置文件

创建配置文件
  1. 在安装服务器上创建一个文本文件, 然后描述性地命名该文件。

    请确保配置文件的名称能够反映您要使用该配置文件在系统上安装 Solaris 软件的方式。 例如,您可以将配置文件命名为 basic_installeng_profileuser_profile

  2. 将配置文件关键字和值增加到配置文件中。

    有关配置文件关键字和值的列表,请参见配置文件关键字和值

    配置文件关键字及其值区分大小写。

  3. 将配置文件保存在 WAN Boot 服务器可以访问的位置。

    请将配置文件保存在以下位置之一。

    • 如果 WAN Boot 服务器和安装服务器在同一台计算机上,请将该文件保存到 WAN Boot 服务器上文档根目录的 flash 子目录中。

    • 如果 WAN Boot 服务器和安装服务器不在同一台计算机上,请将该文件保存到安装服务器的文档根目录的 flash 子目录中。

  4. 确保该配置文件位于 root 中,且权限被设置为 644。

  5. (可选)测试配置文件。

    测试配置文件中包含了有关测试配置文件的信息。


实例 43–6 从安全 HTTP 服务器检索 Solaris Flash 归档文件

在以下实例中,配置文件指示定制 JumpStart 程序从安全 HTTP 服务器检索 Solaris Flash 归档文件。

# profile keywords         profile values
# ----------------         -------------------
install_type               flash_install
archive_location           https://192.168.255.255/solarisupdate.flar
partitioning               explicit
filesys                    c0t1d0s0 4000 /
filesys                    c0t1d0s1 512 swap
filesys                    c0t1d0s7 free /export/home

下表说明了此实例中的一些关键字和值。

install_type

该配置文件在克隆系统上安装 Solaris Flash 归档文件。 所有的文件都将被覆盖,如同在初始安装中一样。

archive_location

从安全 HTTP 服务器检索已压缩的 Solaris Flash 归档文件。

partitioning

文件系统片由 filesys 关键字和 explicit 值来确定。 根 (/) 的大小基于 Solaris Flash 归档文件的大小。 swap 的大小设置为所需大小;swap 安装在 c0t1d0s1 上。 /export/home 基于剩余的磁盘空间; /export/home 安装在 c0t1d0s7 上。


创建 rules 文件

rules 文件是一种文本文件,其中包含了针对要在其上安装 Solaris 操作环境的各个组系统的规则。 每条规则区分一组系统,这些系统基于一个或多个系统属性。 每条规则将对应的组链接到一个配置文件。 配置文件是一种文本文件,定义了在组中的各个系统上安装 Solaris 软件的方式。 例如,以下规则指定 JumpStart 程序使用 basic_prof 配置文件中的信息来安装 sun4u 平台组中的系统。

karch sun4u - basic_prof -

rules 文件用于创建定制 JumpStart 安装所需的 rules.ok 文件。

有关如何创建 rules 文件的详细信息,请参见创建 rules 文件

创建 rules 文件
  1. 在安装服务器上,创建一个名为 rules 的文本文件。

  2. rules 文件中,为要安装的每组系统增加一条规则。

    有关如何创建 rules 文件的详细信息,请参见创建 rules 文件

  3. rules 文件保存在安装服务器上。

  4. 验证 rules 文件。


    $ ./check [[-p path -r file-name]]
    -p path

    使用 Solaris 9 软件映像中的 check 脚本,而不是所用系统中的 check 脚本来验证 rulespath 是本地磁盘上的映像或已装载的 Solaris DVD 或 Solaris Software 1 of 2 CD。

    如果您的系统运行的是早期版本的 Solaris,请使用此选项以运行最新版本的 check

    -r file_name

    指定一个规则文件(不是名为 rules 的规则文件)。 使用此选项,您可以在将某条规则集成到 rules 文件中之前,测试该规则的有效性。

    check 脚本运行时,它会报告检查 rules 文件和各个配置文件的有效性的结果。 如果没有遇到任何错误,脚本将报告: 定制 JumpStart 配置正常。 然后,check 脚本将创建 rules.ok 文件。

  5. rules.ok 文件保存在 WAN Boot 服务器可以访问的位置。

    请将该文件保存到以下位置之一。

    • 如果 WAN Boot 服务器和安装服务器在同一台计算机上,请将该文件保存到 WAN Boot 服务器上文档根目录的 flash 子目录中。

    • 如果 WAN Boot 服务器和安装服务器不在同一台计算机上,请将该文件保存到安装服务器的文档根目录的 flash 子目录中。

  6. 确保 rules.ok 文件位于 root 下,且权限被设置为 644。

有关 rules 文件的实例,请参见rules 文件实例

(可选)创建开始脚本和结束脚本

开始脚本和结束脚本是您在 rules 文件中指定的用户自定义的 Bourne shell 脚本。 开始脚本在将 Solaris 软件安装到系统上之前执行任务。 结束脚本在将 Solaris 软件安装到系统上之后、系统重新引导之前执行任务。 仅当使用定制 JumpStart 来安装 Solaris 时,才能使用这些脚本。

您可以使用开始脚本创建派生配置文件。 而结束脚本则允许您执行各种安装之后的任务,如增加文件、软件包、修补程序或其它软件。

您必须将开始脚本和结束脚本存储在安装服务器上 sysidcfg 文件、rules.ok 文件和配置文件所在的目录中。

创建配置文件

WAN Boot 使用以下文件指定执行 WAN Boot 安装所需的数据和文件的位置。

本节说明了如何创建和存储这两个文件。

创建系统配置文件

在系统配置文件中,您可以将 WAN Boot 安装程序定向到以下文件。

WAN Boot 将按照系统配置文件中的指示来安装和配置客户机。

系统配置文件是纯文本文件,必须按以下模式进行格式化。

setting=value

要使用系统配置文件以将 WAN 安装程序定向到 sysidcfg 文件、rules.ok 文件和配置文件,请按照以下步骤执行操作。

创建系统配置文件
  1. 假设用户角色为 WAN Boot 服务器上的 Web 服务器用户。

  2. 创建一个文本文件, 然后描述性地命名该文件,例如 sys-conf.s9–sparc

  3. 将以下各项增加到系统配置文件中。

    SsysidCF=sysidcfg-file-URL

    此设置指向安装服务器上包含 sysidcfg 文件的 flash 目录。 请确保此 URL 与指向您在创建 sysidcfg 文件中创建的 sysidcfg 文件的路径相匹配。

    对于使用 HTTPS 的 WAN 安装,请将该值设置为有效的 HTTPS URL。

    SjumpsCF=jumpstart-files-URL

    此设置指向安装服务器上包含 rules.ok 文件、配置文件以及开始脚本和结束脚本的 Solaris Flash 目录。 请确保此 URL 与指向您在创建配置文件创建 rules 文件中创建的定制 JumpStart 文件的路径相匹配。

    对于使用 HTTPS 的 WAN 安装,请将该值设置为有效的 HTTPS URL。

  4. 将该文件保存到 WAN Boot 服务器可以访问的目录中。

    为了便于管理,您可能需要将该文件保存到 WAN Boot 服务器上 /etc/netboot 目录中相应的客户机目录中。

  5. 将系统配置文件的权限更改为 600。


    # chmod 600 /path/system-conf-file
    
    path

    指定指向包含系统配置文件的目录的路径。

    system-conf-file

    指定系统配置文件的名称。


实例 43–7 用于通过 HTTPS 进行 WAN Boot 安装的系统配置文件

在以下实例中,WAN Boot 程序检查位于端口 1234 上的 Web 服务器 https://www.example.com 上的 sysidcfg 文件和定制 JumpStart 文件。在安装期间,Web 服务器使用安全 HTTP 来加密数据和文件。

sysidcfg 文件和定制 JumpStart 文件位于文档根目录 htdocsflash 子目录中。

SsysidCF=https://www.example.com:1234/htdocs/flash
SjumpsCF=https://www.example.com:1234/htdocs/flash


实例 43–8 用于不安全的 WAN Boot 安装的系统配置文件

在以下实例中,WAN Boot 程序检查 Web 服务器 http://www.example.com 上的 sysidcfg 文件和定制 JumpStart 文件。 Web 服务器使用 HTTP,因此在安装期间数据和文件不受保护。

sysidcfg 文件和定制 JumpStart 文件位于文档根目录 htdocsflash 子目录中。

SsysidCF=http://www.example.com/htdocs/flash
SjumpsCF=http://www.example.com/htdocs/flash

创建 wanboot.conf 文件

wanboot.conf 文件是一种纯文本配置文件,WAN Boot 程序使用该文件执行 WAN 安装。 wanboot-cgi 程序、引导文件系统和 WAN Boot 最小根文件系统均使用 wanboot.conf 文件中包含的信息来安装客户机。

请将 wanboot.conf 文件保存在 WAN Boot 服务器上 /etc/netboot 分层结构中的相应客户机子目录中。 有关如何使用 /etc/netboot 分层结构定义 WAN Boot 安装范围的信息,请参见在 WAN Boot 服务器上创建 /etc/netboot 分层结构

如果 WAN Boot 服务器运行的是 Solaris 9 12/03 操作环境或兼容版本,那么 /etc/netboot/wanboot.conf.sample 中会有一个 wanboot.conf 文件样例。 您可以将此样例用作 WAN Boot 安装的模板。

wanboot.conf 文件中必须包含以下信息。

表 43–3 wanboot.conf 文件的信息

信息类型 

说明 

WAN Boot 服务器信息 

  • 指向 WAN Boot 服务器上 wanboot 程序的路径

  • WAN Boot 服务器上 wanboot-cgi 程序的 URL

安装服务器信息 

  • 指向安装服务器上 WAN Boot 最小根文件系统的路径

  • 指向 WAN Boot 服务器上系统配置文件的路径,该文件指定了 sysidcfg 文件和定制 JumpStart 文件的位置

安全信息 

  • 用于 WAN Boot 文件系统或 WAN Boot 最小根文件系统的签名类型

  • 用于 WAN Boot 文件系统的加密类型

  • 在 WAN Boot 安装期间,是否应对服务器进行认证

  • 在 WAN Boot 安装期间,是否应对客户机进行认证

可选信息 

  • 在 WAN Boot 安装期间,可能需要为客户机解析的附加主机

  • 指向日志服务器上 bootlog-cgi 脚本的 URL

指定某个信息时,请使用以下格式列出相应的参数及其关联值。

parameter=value

有关 wanboot.conf 文件参数和语法的详细信息,请参见wanboot.conf 文件参数和语法

创建 wanboot.conf 文件
  1. 假设用户角色为 WAN Boot 服务器上的 Web 服务器用户。

  2. 创建 wanboot.conf 文本文件。

    您可以创建一个名为 wanboot.conf 的新文本文件,也可以使用位于 /etc/netboot/wanboot.conf.sample 中的样例文件。 如果使用样例文件,请在增加参数后将该文件重命名为 wanboot.conf

  3. 针对您的安装键入 wanboot.conf 参数和值。

    有关 wanboot.conf 参数和值的详细说明,请参见wanboot.conf 文件参数和语法

  4. wanboot.conf 文件保存到 /etc/netboot 分层结构的相应子目录中。

    有关如何创建 /etc/netboot 分层结构的信息,请参见在 WAN Boot 服务器上创建 /etc/netboot 分层结构

  5. 验证 wanboot.conf 文件。


    # bootconfchk /etc/netboot/path-to-wanboot.conf/wanboot.conf
    
    path-to-wanboot.conf

    指定指向 WAN Boot 服务器上客户机的 wanboot.conf 文件的路径

    • 如果 wanboot.conf 文件在结构上有效,bootconfchk 命令将返回退出代码 0。

    • 如果 wanboot.conf 文件无效,bootconfchk 命令将返回一个非零的退出代码。

  6. wanboot.conf 文件的权限更改为 600。


    # chmod 600 /etc/netboot/path-to-wanboot.conf/wanboot.conf
    

实例 43–9 用于通过 HTTPS 进行 WAN Boot 安装的 wanboot.conf 文件

以下 wanboot.conf 文件实例包含使用安全 HTTP 的 WAN 安装的配置信息。 wanboot.conf 文件还表明此安装中使用了 3DES 加密密钥。

boot_file=/wanboot/wanboot.s9_sparc
root_server=https://www.example.com:1234/cgi-bin/wanboot-cgi
root_file=/miniroot/miniroot.s9_sparc
signature_type=sha1
encryption_type=3des
server_authentication=yes
client_authentication=no
resolve_hosts=
boot_logger=https://www.example.com:1234/cgi-bin/bootlog-cgi
system_conf=system.conf

wanboot.conf 文件指定了以下配置。

boot_file=/wanboot/wanboot.s9_sparc

二级引导程序名为 wanboot.s9_sparc。 此程序位于 WAN Boot 服务器的文档根目录的 /wanboot 目录中。

root_server=https://www.example.com:1234/cgi-bin/wanboot-cgi

wanboot-cgi 程序在 WAN Boot 服务器上的位置是 https://www.example.com:1234/cgi-bin/wanboot-cgi。 URL 的 https 部分表示此 WAN Boot 安装使用安全 HTTP。

root_file=/miniroot/miniroot.s9_sparc

WAN Boot 最小根文件系统名为 miniroot.s9_sparc。 此最小根文件系统位于 WAN Boot 服务器的文档根目录的 /miniroot 目录中。

signature_type=sha1

使用 HMAC SHA1 散列密钥为 wanboot.s9_sparc 程序和 WAN Boot 文件系统进行签名。

encryption_type=3des

使用 3DES 密钥为 wanboot.s9_sparc 程序和引导文件系统进行加密。

server_authentication=yes

在安装过程中,对服务器进行认证。

client_authentication=no

在安装过程中,不对客户机进行认证。

resolve_hosts=

执行 WAN 安装时不需要附加主机的名称。 所有需要的文件和信息均位于 WAN Boot 服务器上的文档根目录中。

boot_logger=https://www.example.com:1234/cgi-bin/bootlog-cgi

(可选)使用安全 HTTP 将引导和安装日志消息记录在 WAN Boot 服务器上。

有关如何为 WAN Boot 安装设置日志服务器的说明,请参见(可选)配置 WAN Boot 日志服务器

system_conf=system.conf

包含 sysidcfg 文件和 JumpStart 文件的位置信息的系统配置文件位于 /etc/netboot 分层结构的相应子目录中。 系统配置文件名为 system.conf



实例 43–10 用于不安全的 WAN Boot 安装的 wanboot.conf 文件

以下 wanboot.conf 文件实例包含了使用 HTTP 的安全性较低的 WAN Boot 安装的配置信息。 此 wanboot.conf 文件还表明该安装未使用加密密钥或散列密钥。

boot_file=/wanboot/wanboot.s9_sparc
root_server=http://www.example.com/cgi-bin/wanboot-cgi
root_file=/miniroot/miniroot.s9_sparc
signature_type=
encryption_type=
server_authentication=no
client_authentication=no
resolve_hosts=
boot_logger=http://www.example.com/cgi-bin/bootlog-cgi
system_conf=system.conf

wanboot.conf 文件指定了以下配置。

boot_file=/wanboot/wanboot.s9_sparc

二级引导程序名为 wanboot.s9_sparc。 此程序位于 WAN Boot 服务器的文档根目录的 /wanboot 目录中。

root_server=http://www.example.com/cgi-bin/wanboot-cgi

wanboot-cgi 程序在 WAN Boot 服务器上的位置是 http://www.example.com/cgi-bin/wanboot-cgi。 此安装不使用安全 HTTP。

root_file=/miniroot/miniroot.s9_sparc

WAN Boot 最小根文件系统名为 miniroot.s9_sparc。 此最小根文件系统位于 WAN Boot 服务器的文档根目录的 /miniroot 子目录中。

signature_type=

不使用散列密钥为 wanboot.s9_sparc 程序和 WAN Boot 文件系统进行签名。

encryption_type=

wanboot.s9_sparc 程序和引导文件系统不进行加密。

server_authentication=no

在安装期间,不使用密钥或证书对服务器进行认证。

client_authentication=no

在安装期间,不使用密钥或证书对客户机进行认证。

resolve_hosts=

执行安装时不需要附加主机名。 所有需要的文件和信息均位于 WAN Boot 服务器上的文档根目录中。

boot_logger=http://www.example.com/cgi-bin/bootlog-cgi

(可选)将引导和安装日志消息记录在 WAN Boot 服务器上。

有关如何为 WAN Boot 安装设置日志服务器的说明,请参见(可选)配置 WAN Boot 日志服务器

system_conf=system.conf

包含 sysidcfg 文件和 JumpStart 文件的位置信息的系统配置文件名为 system.conf。 此文件位于 /etc/netboot 分层结构的相应客户机子目录中。


(可选)使用 DHCP 服务器提供配置信息

如果在网络中使用 DHCP 服务器,那么可以配置 DHCP 服务器,以提供以下信息。

您可以在 WAN Boot 安装中使用以下 DHCP 供应商选项。

SHTTPproxy

指定网络代理服务器的 IP 地址

SbootURI

指定 WAN Boot 服务器上 wanboot-cgi 程序的 URL

有关设置 Solaris DHCP 服务器上这些供应商选项的信息,请参见使用 DHCP 服务预先配置系统配置信息(任务)

有关设置 Solaris DHCP 服务器的详细信息,请参见 System Administration Guide: IP Services 中的 “Configuring DHCP Service (Task)”