Vous trouverez dans ce chapitre des exemples de paramétrage et d'installation de systèmes clients via une connexion WAN. Ces exemples décrivent la procédure d'installation et initialisation via connexion WAN à l'aide d'une connexion HTTPS.
Création de la miniracine de l'initialisation via connexion WAN
Vérification de l'OBP client pour la prise en charge de l'initialisation via une connexion WAN
Installation du programme wanboot sur le serveur d'initialisation via connexion WAN
Copie du programme wanboot-cgi vers le serveur d'initialisation via connexion WAN
Configuration du serveur d'initialisation via connexion WAN en vue d'utiliser l'HTTPS
(Facultatif) Utilisation d'une clé privée et d'un certificat pour l'authentification client
La Figure 15–1 présente la paramétrage du site pour cet exemple.
Cet exemple de site présente les caractéristiques suivantes :
Le serveur wanserver-1 doit être configuré en tant que serveur d'initialisation via connexion WAN et serveur d'installation.
L'adresse IP de wanserver-1 est 192.168.198.2.
Le nom de domaine de wanserver-1 est www.example.com.
wanserver-1 exécute le système d'exploitation Solaris 10 6/06.
wanserver-1 utilise le serveur Web Apache. Le logiciel Apache de wanserver-1 est configuré pour prendre en charge le protocole HTTPS.
Le client à installer est nommé wanclient-1.
wanclient-1 est un système UltraSPARCII.
L'ID client pour wanclient-1 est 010003BA152A42.
L'adresse IP de wanclient-1 est 192.168.198.210.
L'adresse IP du sous-réseau du client est 192.168.198.0.
Le système client wanclient-1 dispose d'un accès à Internet, mais n'est pas directement connecté au réseau incluant wanserver-1.
wanclient-1 est un nouveau système qui doit être installé avec le logiciel Solaris 10 6/06.
Pour stocker les fichiers et les données d'installation, définissez les répertoires suivants dans le répertoire racine du document (/opt/apache/htdocs) de wanserver-1.
Répertoire Solaris Flash
wanserver-1# mkdir -p /opt/apache/htdocs/flash/ |
Répertoire miniracine de l'initialisation via une connexion WAN
wanserver-1# mkdir -p /opt/apache/htdocs/miniroot/ |
Répertoire du programme wanboot
wanserver-1# mkdir -p /opt/apache/htdocs/wanboot/ |
Utilisez la commande setup_install_server(1M) avec l'option -w pour copier la miniracine de l'initialisation via une connexion WAN et l'image du logiciel Solaris dans le répertoire /export/install/Solaris_10 de wanserver-1.
Insérez le support Logiciel Solaris dans le lecteur relié à wanserver-1. Entrez les commandes suivantes :
wanserver-1# mkdir -p /export/install/sol_10_sparc wanserver-1# cd /cdrom/cdrom0/s0/Solaris_10/Tools wanserver-1# ./setup_install_server -w /export/install/sol_10_sparc/miniroot \ /export/install/sol_10_sparc |
Déplacez la miniracine de l'initialisation via une connexion WAN vers le répertoire document racine (/opt/apache/htdocs/) du serveur d'initialisation via une connexion WAN.
wanserver-1# mv /export/install/sol_10_sparc/miniroot/miniroot \ /opt/apache/htdocs/miniroot/miniroot.s10_sparc |
Déterminez si l'OBP client prend en charge l'initialisation via connexion WAN en entrant la commande suivante sur le système client :
# eeprom | grep network-boot-arguments network-boot-arguments: data not available |
Dans l'exemple précédent, le résultat network-boot-arguments: data not available indique que l'OBP client prend en charge l'initialisation via connexion WAN.
Pour installer le programme wanboot sur le serveur d'initialisation via une connexion WAN, copiez le programme à partir du média logiciel Logiciel Solaris vers le répertoire document racine du serveur d'initialisation via une connexion WAN.
Insérez le Solaris DVD ou le Logiciel Solaris - 1 dans le lecteur de support relié à wanserver-1 et entrez les commandes suivantes :
wanserver-1# cd /cdrom/cdrom0/s0/Solaris_10/Tools/Boot/platform/sun4u/ wanserver-1# cp wanboot /opt/apache/htdocs/wanboot/wanboot.s10_sparc |
Créez les sous-répertoires wanclient-1 du répertoire /etc/netboot sur le serveur d'initialisation via une connexion WAN. Lors de l'installation, les programmes d'installation et initialisation via connexion WAN extraient des informations de configuration et de sécurité à partir de ce répertoire.
wanclient-1 se trouve sur le sous-réseau 192.168.198.0 et son ID client est 010003BA152A42. Pour créer un sous-répertoire /etc/netboot pour wanclient-1, procédez comme indiqué ci-dessous.
Créez le répertoire /etc/netboot.
Modifiez les autorisations du répertoire /etc/netboot sur 700.
Modifiez la propriété du répertoire /etc/netboot en l'attribuant au propriétaire du processus du serveur Web.
Endossez le même rôle d'utilisateur que l'utilisateur du serveur Web.
Créez un sous-répertoire de /etc/netboot nommé comme le sous-réseau (192.168.198.0).
Créez un sous-répertoire du répertoire du sous-réseau nommé comme l'ID client.
Modifiez les autorisations du sous-répertoire /etc/netboot sur 700.
wanserver-1# cd / wanserver-1# mkdir /etc/netboot/ wanserver-1# chmod 700 /etc/netboot wanserver-1# chown nobody:admin /etc/netboot wanserver-1# exit wanserver-1# su nobody Password: nobody# mkdir -p /etc/netboot/192.168.198.0/010003BA152A42 nobody# chmod 700 /etc/netboot/192.168.198.0 nobody# chmod 700 /etc/netboot/192.168.198.0/010003BA152A42 |
Sur des systèmes qui exécutent le OS Solaris 10 6/06, le programme wanboot-cgi se trouve dans le répertoire /usr/lib/inet/wanboot/. Pour permettre au serveur d'initialisation via une connexion WAN de transmettre les données d'installation, copiez le programme wanboot-cgi vers le répertoire cgi-bin du répertoire du logiciel du serveur Web.
wanserver-1# cp /usr/lib/inet/wanboot/wanboot-cgi \ /opt/apache/cgi-bin/wanboot-cgi wanserver-1# chmod 755 /opt/apache/cgi-bin/wanboot-cgi |
Par défaut, tous les messages de journalisation via une connexion WAN sont affichés sur le système client. Ce paramètre par défaut vous permet de déboguer rapidement les problèmes d'installation.
Pour visualiser les messages d'initialisation et d'installation sur le serveur d'initialisation via une connexion WAN, copiez le script bootlog-cgi dans le répertoire cgi-bin sur wanserver-1.
wanserver-1# cp /usr/lib/inet/wanboot/bootlog-cgi /opt/apache/cgi-bin/ wanserver-1# chmod 755 /opt/apache/cgi-bin/bootlog-cgi |
Pour utiliser l'HTTPS lors de votre installation et initialisation via une connexion WAN, vous devez activer le support SSL du logiciel du serveur Web. Vous devez également installer un certificat numérique sur le serveur d'initialisation via connexion WAN. Dans cet exemple, on suppose que le serveur Web Apache sur wanserver-1 est configuré pour utiliser le protocole SSL. Il suppose également qu'un certificat numérique et une autorité de certification établissant l'identité de wanserver-1 sont déjà installés sur wanserver-1.
Vous trouverez des exemples de configuration du logiciel de votre serveur Web pour l'utilisation du SSL dans sa documentation.
En demandant au serveur de s'authentifier auprès du client, vous protégez les données transmises au client à partir du serveur via HTTPS. Pour permettre l'authentification du serveur, vous devez fournir un certificat de confiance au client. Ce certificat permet au client de vérifier l'identité du serveur lors de l'installation.
Pour fournir ce certificat de confiance au client, vous devez utiliser le même rôle d'utilisateur que l'utilisateur du serveur Web. Divisez ensuite le certificat pour extraire un certificat de confiance. Then, insert the trusted certificate in the client's truststore file in the /etc/netboot hierarchy.
Dans cet exemple, vous utilisez le rôle d'utilisateur du serveur Web nobody. Vous divisez ensuite le certificat du serveur PKCS#12 appelé cert.p12 et insérez le certificat de confiance dans le répertoire /etc/netboot pour wanclient-1.
wanserver-1# su nobody Password: wanserver-1# wanbootutil p12split -i cert.p12 -t \ /etc/netboot/192.168.198.0/010003BA152A42/truststore |
Pour protéger davantage vos données au cours de l'installation, vous pouvez aussi demander au client wanclient-1 de s'authentifier auprès du serveur wanserver-1. Pour permettre l'authentification client lors de votre installation et initialisation via connexion WAN, insérez le certificat et la clé privée client dans le sous-répertoire client de la hiérarchie /etc/netboot.
Pour fournir une clé privée et un certificat au client, exécutez les tâches suivantes :
endosser le même rôle d'utilisateur que l'utilisateur du serveur Web ;
diviser le fichier PKCS#12 afin d'obtenir une clé privée et un certificat client ;
insérer le certificat dans le fichier certstore du client ;
insérer la clé privée dans le fichier keystore du client.
Dans cet exemple, vous utilisez le rôle d'utilisateur du serveur Web nobody. Vous divisez ensuite le certificat du serveur PKCS#12 nommé cert.p12. Vous insérez le certificat dans la hiérarchie /etc/netboot pour wanclient-1. Vous insérez ensuite la clé privée que vous avez appelée wanclient.key dans le fichier keystore du client.
wanserver-1# su nobody Password: wanserver-1# wanbootutil p12split -i cert.p12 -c \ /etc/netboot/192.168.198.0/010003BA152A42/certstore -k wanclient.key wanserver-1# wanbootutil keymgmt -i -k wanclient.key \ -s /etc/netboot/192.168.198.0/010003BA152A42/keystore \ -o type=rsa |
Pour protéger les données transmises entre le serveur et le client, vous créez une clé de hachage et une clé de chiffrement. Le serveur utilise la clé de hachage pour protéger l'intégrité du programme wanboot et la clé de chiffrement pour chiffrer les données de configuration et d'installation. Le client utilise la clé de hachage pour vérifier l'intégrité du programme wanboot téléchargé et la clé de chiffrement pour déchiffrer les données lors de l'installation.
Endossez d'abord le même rôle d'utilisateur que l'utilisateur du serveur Web. Dans cet exemple, le rôle de l'utilisateur du serveur Web est nobody.
wanserver-1# su nobody Password: |
Utilisez ensuite la commande wanbootutil keygen pour créer une clé HMAC SHA1 maîtresse pour wanserver-1.
wanserver-1# wanbootutil keygen -m |
Puis créez une clé de hachage et une clé de chiffrement pour wanclient-1.
wanserver-1# wanbootutil keygen -c -o net=192.168.198.0,cid=010003BA152A42,type=sha1 wanserver-1# wanbootutil keygen -c -o net=192.168.198.0,cid=010003BA152A42,type=3des |
La commande précédente crée une clé de hachage HMAC SHA1 et une clé de chiffrement 3DES pour wanclient-1. 192.168.198.0 indique le sous-réseau de wanclient-1, et 010003BA152A42 l'ID client de wanclient-1.
Dans cet exemple, vous créez votre archive Solaris Flash en clonant le système maître wanserver-1. Le nom de l'archive est sol_10_sparc et cette archive est copiée à partir du système maître. L'archive est une copie exacte du système maître. L'archive est stockée dans sol_10_sparc.flar. Vous sauvegardez l'archive dans le sous-répertoire flash/archives du répertoire document racine sur le serveur d'initialisation via connexion WAN.
wanserver-1# flarcreate -n sol_10_sparc \ /opt/apache/htdocs/flash/archives/sol_10_sparc.flar |
Pour préconfigurer le système wanclient-1, indiquez les mots-clés et les valeurs dans le fichier sysidcfg. Sauvegardez ce fichier dans le sous-répertoire approprié du répertoire document racine sur wanserver-1.
Un exemple de fichier sysidcfg pour wanclient-1 est présenté ci-après. Le nom d'hôte, l'adresse IP et le masque de réseau de ces systèmes ont été préconfigurés dans le service de noms. Ce fichier est situé dans le répertoire /opt/apache/htdocs/flash/.
network_interface=primary {hostname=wanclient-1 default_route=192.168.198.1 ip_address=192.168.198.210 netmask=255.255.255.0 protocol_ipv6=no} timezone=US/Central system_locale=C terminal=xterm timeserver=localhost name_service=NIS {name_server=matter(192.168.254.254) domain_name=leti.example.com } security_policy=none
Pour le système wanclient-1, créez un profil appelé wanclient_1_prof. Le fichier wanclient_1_prof comporte les entrées ci-dessous définissant le logiciel Solaris 10 6/06 à installer sur le système wanclient-1.
# profile keywords profile values # ---------------- ------------------- install_type flash_install archive_location https://192.168.198.2/flash/archives/sol_10_sparc.flar partitioning explicit filesys c0t1d0s0 4000 / filesys c0t1d0s1 512 swap filesys c0t1d0s7 free /export/home
La liste suivante décrit quelques mots-clés et quelques valeurs issus de cet exemple.
Le profil installe une archive Solaris Flash sur le système clone. Tous les fichiers sont écrasés, comme dans une installation initiale.
L'archive compressée Solaris Flash est extraite de wanserver-1.
Les tranches des systèmes de fichiers sont déterminées par le mot-clé filesys, associé à la valeur explicit. La taille de la racine (/) est basée sur la taille de l'archive Solaris Flash. La taille de swap est réglée en fonction des besoins. Ce système de fichiers est installé sur c0t1d0s1. /export/home est basé sur l'espace de disque restant. /export/home est installé sur c0t1d0s7.
Les programmes JumpStart personnalisés utilisent le fichier rules pour sélectionner le profil d'installation approprié pour le système wanclient-1. Créez un fichier texte appelé rules. Ajoutez ensuite à ce fichier les mots-clés et les valeurs.
L'adresse IP du système wanclient-1 est 192.168.198.210, et le masque de réseau est 255.255.255.0. Utilisez le mot-clé network pour indiquer le profil que les programmes JumpStart personnalisés doivent utiliser pour installer wanclient-1.
network 192.168.198.0 - wanclient_1_prof - |
Ce fichier rules transmet des instructions aux programmes JumpStart personnalisés pour utiliser wanclient_1_prof afin d'installer le logiciel Solaris 10 6/06 sur wanclient-1.
Appelez ce fichier de règle wanclient_rule.
Une fois le profil et le fichier rules créés, exécutez le script check pour vérifier la validité des fichiers.
wanserver-1# ./check -r wanclient_rule |
Si le script check ne détecte aucune erreur, le script crée le fichier rules.ok.
Enregistrez le fichier rules.ok dans le répertoire /opt/apache/htdocs/flash/ .
Créez un fichier de configuration système répertoriant les emplacements du fichier sysidcfg et des fichiers JumpStart personnalisés sur le serveur d'installation. Sauvegardez ce fichier dans un répertoire accessible au serveur d'initialisation via une connexion WAN.
Dans l'exemple suivant, le programme wanboot-cgi cherche le fichier sysidcfg ainsi que les fichiers JumpStart personnalisés dans le répertoire document racine du serveur d'initialisation via connexion WAN. Le nom du domaine du serveur d'initialisation via connexion WAN est https://www.example.com. Ce serveur est configuré pour utiliser le protocole sécurisé HTTP, par conséquent les données et fichiers sont protégés lors de l'installation.
Dans cet exemple, le fichier de configuration système est appelé sys-conf.s10–sparc , et il est sauvegardé au niveau de la hiérarchie /etc/netboot du serveur d'installation et initialisation via une connexion WAN. Les fichiers sysidcfg et JumpStart personnalisés se trouvent dans le sous-répertoire flash du répertoire racine du document.
SsysidCF=https://www.example.com/flash/ SjumpsCF=https://www.example.com/flash/
L'installation et initialisation via connexion WAN utilise les informations de configuration incluses dans le fichier wanboot.conf pour installer la machine client. Créez le fichier wanboot.conf dans un éditeur de texte. Sauvegardez le fichier dans le sous-répertoire client adéquat de la hiérarchie /etc/netboot sur le serveur d'initialisation via connexion WAN.
Le fichier wanboot.conf suivant de wanclient-1 détient des informations de configuration autorisant une installation via une connexion WAN utilisant le protocole HTTP sécurisé. Ce fichier invite également l'initialisation via connexion WAN à utiliser une clé de hachage HMAC SHA1 ainsi qu'une clé de chiffrement 3DES afin de protéger les données.
boot_file=/wanboot/wanboot.s10_sparc root_server=https://www.example.com/cgi-bin/wanboot-cgi root_file=/miniroot/miniroot.s10_sparc signature_type=sha1 encryption_type=3des server_authentication=yes client_authentication=no resolve_hosts= boot_logger= system_conf=sys-conf.s10–sparc
Ce fichier wanboot.conf spécifie la configuration suivante :
Le programme wanboot s'appelle wanboot.s10_sparc. Il se trouve dans le répertoire wanboot du répertoire document racine sur wanserver-1.
Le programme wanboot-cgi de wanserver-1 se trouve à l'adresse suivante https://www.example.com/cgi-bin/wanboot-cgi . La partie https de l'URL indique que cette installation et initialisation via connexion WAN utilise le protocole sécurisé HTTP.
La miniracine d'installation et initialisation via une connexion WAN s'appelle miniroot.s10_sparc . Elle se situe dans le répertoire miniroot du répertoire racine du document sur wanserver-1.
Le programme wanboot et le système de fichiers d'installation et initialisation via connexion WAN sont signés par l'utilisation d'une clé de hachage HMAC SHA1.
Le programme wanboot et le système de fichiers d'installation et initialisation via connexion WAN sont chiffrés à l'aide d'une clé 3DES.
Le serveur est authentifié lors de l'installation.
Le client n'est pas authentifié lors de l'installation.
Si vous avez effectué les tâches de la section (Facultatif) Utilisation d'une clé privée et d'un certificat pour l'authentification client, affectez à ce paramètre la valeur client_authentication=yes
Aucun nom d'hôte supplémentaire n'est nécessaire pour l'installation via une connexion WAN. Tous les noms d'hôtes requis par le programme wanboot-cgi sont indiqués dans le fichier wanboot.conf et le certificat client.
Des messages du journal d'initialisation et d'installation s'affichent sur la console du système. Si vous avez configuré le serveur de journalisation à l'étape (Facultatif) Configuration du serveur d'initialisation via une connexion WAN comme serveur d'enregistrement., et que vous vouliez que les messages provenant de la connexion WAN apparaissent également sur le serveur d'installation et d'initialisation, définissez le paramètre comme suit : boot_logger=https://www.example.com/cgi-bin/bootlog-cgi .
Le fichier de configuration système indiquant les emplacements des fichiers sysidcfg et JumpStart se trouve dans le fichier sys-conf.s10–sparc au niveau de la hiérarchie /etc/netboot sur wanserver-1.
Dans cet exemple, vous sauvegardez le fichier wanboot.conf dans le répertoire /etc/netboot/192.168.198.0/010003BA152A42 sur wanserver-1.
Pour initialiser le client via connexion WAN à l'aide de la commande boot net, l'alias de périphérique net doit être défini au niveau du périphérique réseau principal du client. À l'invite ok du client, entrez la commande devalias afin de vérifier que l'alias net est défini au niveau du périphérique réseau principal /pci@1f,0/pci@1,1/network@c,1.
ok devalias screen /pci@1f,0/pci@1,1/SUNW,m64B@2 net /pci@1f,0/pci@1,1/network@c,1 net2 /pci@1f,0/pci@1,1/network@5,1 disk /pci@1f,0/pci@1/scsi@8/disk@0,0 cdrom /pci@1f,0/pci@1,1/ide@d/cdrom@0,0:f keyboard /pci@1f,0/pci@1,1/ebus@1/su@14,3083f8 mouse /pci@1f,0/pci@1,1/ebus@1/su@14,3062f8 |
Dans cet exemple de résultat, le périphérique réseau principal /pci@1f,0/pci@1,1/network@c,1 est affecté à l'alias net. Vous n'avez pas besoin de réinitialiser l'alias.
Dans la partie Création des clés pour le serveur et le client, vous avez créé une clé de hachage et une clé de chiffrement pour protéger vos données lors de l'installation. Afin de permettre au client de déchiffrer les données transmises à partir de wanserver-1 lors de l'installation, installez ces clés sur wanclient-1.
Affichez les valeurs des clés sur wanserver-1.
wanserver-1# wanbootutil keygen -d -c -o net=192.168.198.0,cid=010003BA152A42,type=sha1 b482aaab82cb8d5631e16d51478c90079cc1d463 wanserver-1# wanbootutil keygen -d -c -o net=192.168.198.0,cid=010003BA152A42,type=3des 9ebc7a57f240e97c9b9401e9d3ae9b292943d3c143d07f04 |
Cet exemple utilise les informations suivantes :
Indique l'adresse IP du sous-réseau du client.
Indique l'ID client.
Indique la valeur de la clé de hachage HMAC SHA1 du client.
Indique la valeur de la clé de chiffrement 3DES du client.
Si vous utilisez une clé de chiffrement AES dans votre installation, remplacez type=3des par type=aes pour afficher sa valeur.
À l'invite ok sur wanclient-1, installez les clés.
ok set-security-key wanboot-hmac-sha1 b482aaab82cb8d5631e16d51478c90079cc1d463 ok set-security-key wanboot-3des 9ebc7a57f240e97c9b9401e9d3ae9b292943d3c143d07f04 |
Ces commandes effectuent les tâches suivantes :
installation de la clé de hachage HMAC SHA1 avec une valeur de b482aaab82cb8d5631e16d51478c90079cc1d463 sur le wanclient-1 ;
installation de la clé de chiffrement 3DES avec une valeur de 9ebc7a57f240e97c9b9401e9d3ae9b292943d3c143d07f04 sur le wanclient-1.
Vous pouvez effectuer une installation sans surveillance en définissant les variables de l'argument d'initialisation du réseau pour wanclient-1 à l'invite ok, puis en initialisant le client.
ok setenv network-boot-arguments host-ip=192.168.198.210, router-ip=192.168.198.1,subnet-mask=255.255.255.0,hostname=wanclient-1, file=http://192.168.198.2/cgi-bin/wanboot-cgi ok boot net - install Resetting ... Sun Blade 100 (UltraSPARC-IIe), No Keyboard Copyright 1998-2003 Sun Microsystems, Inc. All rights reserved. OpenBoot 4.x.build_28, 512 MB memory installed, Serial #50335475. Ethernet address 0:3:ba:e:f3:75, Host ID: 83000ef3. Rebooting with command: boot net - install Boot device: /pci@1f,0/network@c,1 File and args: - install <time unavailable> wanboot progress: wanbootfs: Read 68 of 68 kB (100%) <time unavailable> wanboot info: wanbootfs: Download complete Fri Jun 20 09:16:06 wanboot progress: miniroot: Read 166067 of 166067 kB (100%) Fri Jun 20Tue Apr 15 09:16:06 wanboot info: miniroot: Download complete SunOS Release 5.10 Version WANboot10:04/11/03 64-bit Copyright 1983-2003 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Configuring devices. |
Les variables suivantes sont définies :
L'adresse IP client est définie sur 192.168.198.210.
L'adresse IP du routeur du client est définie sur 192.168.198.1
Le masque de sous-réseau du client est défini sur 255.255.255.0
Le nom d'hôte du client est défini sur wanclient-1
Le programme wanboot-cgi se trouve sur http://192.168.198.2/cgi-bin/wanboot-cgi
Le client s'installe sur le réseau étendu. Si le programme wanboot ne trouve pas toutes les informations nécessaires à l'installation, vous serez probablement invité à fournir les informations manquantes sur la ligne de commande.