Menu de démarrage PXE avec System Center Configuration Manager

Menu de démarrage PXE avec System Center Configuration Manager

Nous envisageons d'étendre les capacités de System Center Configuration Manager (un produit de gestion de l'infrastructure informatique) lors du démarrage des PC des utilisateurs sur un réseau à l'aide de PXE. Nous créons un menu de démarrage basé sur PXELinux avec la fonctionnalité System Center et ajoutons des images d'analyse antivirus, de diagnostic et de récupération. À la fin de l'article, nous abordons les fonctionnalités de System Center 2012 Configuration Manager en conjonction avec les services de déploiement Windows (WDS) lors du démarrage via PXE.

Nous effectuons toutes les actions sur un environnement de test sur lequel System Center 2012 Configuration Manager SP1 est déjà installé, un contrôleur de domaine et un certain nombre de machines de test. Il est supposé que SCCM se déploie déjà sur le réseau à l'aide de PXE.

Entrée

L'environnement de test se compose de plusieurs machines virtuelles. Toutes les machines sont équipées d'un système d'exploitation invité Microsoft Windows Server 2008 R2 (x64), d'un adaptateur réseau E1000, d'un contrôleur SCSI : LSI Logic SAS

Nom (Rôles)
Adresse IP / nom DNS
fonctionnel

SCCM (gestionnaire de configuration du centre système)
192.168.57.102
sccm2012.test.local

Installé System Center Configuration Manager 2012 SP1

CC (ANNONCE, DHCP, DNS)
192.168.57.10
dc1.test.local

Le rôle du contrôleur de domaine, du serveur DHCP et du serveur DNS

TEST (Machine d'essai)
192.168.57.103
test.test.local

Pour tester

GW (Passerelle)
192.168.57.1
Routage entre réseaux. Rôle de passerelle

1. Ajouter PXELinux à SCCM

Nous effectuons des actions sur la machine sur laquelle System Center Configuration Manager est installé

  • Déterminons le répertoire où se trouvent les fichiers WDS pour le téléchargement, pour cela nous cherchons dans le registre la valeur du paramètre RootFolder dans la branche HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesWDSServerProvidersWDSTFTP
    Valeur par défaut C:RemoteInstall
    Les fichiers à télécharger à partir du point de déploiement SCCM se trouvent dans les répertoires smsbootx86 и smsbootx64 en fonction de l'architecture.
    Tout d'abord, configurez un répertoire pour l'architecture 32 bits, par défaut c:Remoteinstallsmsbootx86
  • Téléchargez l'archive avec les dernières syslinux . Copiez depuis syslinux-5.01.zip vers c:Remoteinstallsmsbootx86 les fichiers suivants :
    memdisk, chain.c32, ldlinux.c32, libcom32.c32, libutil.c32, pxechn.c32, vesamenu.c32, pxelinux.0
    Des fichiers supplémentaires sont nécessaires pour éviter une telle erreur.
    Menu de démarrage PXE avec System Center Configuration Manager
  • В c:Remoteinstallsmsbootx86 Renommer pxelinux.0 в pxelinux.com
    Dans le dossier c:remoteinstallsmsbootx86 faire une copie abortpxe.com et renommez-le en abortpxe.0
    Si ce n'est pas le cas, renommez-le en extension .0, alors par exemple l'instruction

    Kernel abortpxe.com

    échouera avec l'erreur suivante : Échec du démarrage du noyau : numéro de fichier incorrect
    Pour PXELINUX, l'extension du fichier de téléchargement doit être définie en fonction de la plaque

    none or other	Linux kernel image
     .0		PXE bootstrap program (NBP) [PXELINUX only]
     .bin		"CD boot sector" [ISOLINUX only]
     .bs		Boot sector [SYSLINUX only]
     .bss		Boot sector, DOS superblock will be patched in [SYSLINUX only]
     .c32		COM32 image (32-bit COMBOOT)
     .cbt		COMBOOT image (not runnable from DOS)
     .com		COMBOOT image (runnable from DOS)
     .img		Disk image [ISOLINUX only]
    

    Source: http://www.syslinux.org/wiki/index.php/SYSLINUX#KERNEL_file section "Fichier du noyau"

  • Afin de ne pas appuyer plusieurs fois sur la touche F12 lors du chargement de SCCM via le menu, renommez pxeboot.com en pxeboot.com.f12, copiez pxeboot.n12 en pxeboot.com
    Si cela n'est pas fait, alors lors du choix, nous recevrons un tel message à chaque fois
    Menu de démarrage PXE avec System Center Configuration Manager
    Remarque : n'oubliez pas de renommer également ces fichiers dans le dossier x64. quand il charge x86wdsnbp.com à partir du dossier x86, le chargeur détermine l'architecture du processeur et le fichier suivant est chargé à partir du dossier avec l'architecture correspondante. Ainsi, pour x64, le fichier suivant ne sera pas x86pxeboot.comEt x64pxeboot.com
  • Télécharger / créer background.png, résolution 640x480, copie dans le même dossier. Créer un dossier ISO où nous placerons les images ISO. Créer un dossier pxelinux.cfg pour les configurations.
  • Dans le dossier pxelinux.cfg, créez un fichier par défaut, dans un encodage non unicode, avec le contenu
    par défaut (Cliquez pour afficher)

    # используем графическое меню
    DEFAULT vesamenu.c32
    PROMPT 0
    timeout 80
    TOTALTIMEOUT 9000
    
    MENU TITLE PXE Boot Menu (x86)
    MENU INCLUDE pxelinux.cfg/graphics.conf
    MENU AUTOBOOT Starting Local System in 8 seconds
    
    # Boot local HDD (default)
    LABEL bootlocal
    menu label Boot Local
    menu default
    localboot 0x80
    # if it doesn't work 
    #kernel chain.c32
    #append hd0
    
    # Вход в меню по паролю Qwerty, алгоритм MD5
    label av
    menu label Antivirus and tools
    menu PASSWD $1$15opgKTx$dP/IaLNiCbfECiC2KPkDC0
    kernel vesamenu.c32
    append pxelinux.cfgav.conf 
    
    label sccm
    menu label Start to SCCM
    COM32 pxechn.c32
    APPEND sccm2012.test.local::smsbootx86wdsnbp.com -W
    
    label pxe64
    menu label Start to x64 pxelinux
    COM32 pxechn.c32
    APPEND sccm2012.test.local::smsbootx64pxelinux.com
    
    LABEL Abort
    MENU LABEL Exit
    KERNEL abortpxe.0

    Dans le dossier pxelinux.cfg créer un fichier graphics.conf avec contenu
    graphics.conf (Cliquez pour afficher)

    MENU MARGIN 10
    MENU ROWS 16
    MENU TABMSGROW 21
    MENU TIMEOUTROW 26
    MENU COLOR BORDER 30;44 #00000000 #00000000 none
    MENU COLOR SCROLLBAR 30;44 #00000000 #00000000 none
    MENU COLOR TITLE 0 #ffffffff #00000000 none
    MENU COLOR SEL 30;47 #40000000 #20ffffff
    MENU BACKGROUND background.png
    NOESCAPE 0
    ALLOWOPTIONS 0

    Dans le dossier pxelinux.cfg créer un fichier av.conf avec contenu
    av.conf (Cliquez pour afficher)

    DEFAULT vesamenu.c32
    PROMPT 0
    MENU TITLE Antivirus and tools
    MENU INCLUDE pxelinux.cfg/graphics.conf
    
    label main menu
    menu label return to main menu
    kernel vesamenu.c32
    append pxelinux.cfg/default
    
    label drweb
    menu label DrWeb
    kernel memdisk
    append iso raw initrd=isodrweb.iso
    
    label eset
    menu label Eset
    kernel memdisk
    append iso raw initrd=isoeset_sysrescue.iso
    
    label kav
    menu label KAV Rescue CD
    KERNEL kav/rescue
    APPEND initrd=kav/rescue.igz root=live rootfstype=auto vga=791 init=/init kav_lang=ru udev liveimg doscsi nomodeset quiet splash
    
    #Загружаем ISO по полному пути, можно загружать с другого TFTP
    label winpe
    menu label WinPE  from another TFTP
    kernel sccm2012.test.local::smsbootx86memdisk
    append iso raw initrd=sccm2012.test.local::smsbootx86isoWinPE_RaSla.iso
    
    label clonezilla
    menu label Clonezilla
    kernel memdisk
    append iso raw initrd=isoclonezilla.iso
    
  • Par conséquent, le répertoire c:remoteinstallsmsbootx86 contient la structure

    c:installationsdistantesmsbootx86
    pxelinux.cfg

    chaîne.c32
    ldlinux.c32
    libcom32.c32
    libutil.c32
    pxechn.c32
    vesamenu.c32
    pxelinux.com
    background.png
    pxelinux.cfg
    pxelinux.cfg
    pxelinux.cfg
    ISO
    abandonpxe.0
    www.wdsnbp.com
    bootmgfw.efi
    wdsmgfw.efi
    bootmgr.exe
    pxeboot.n12
    pxeboot.com
    abortpxe.com

    défaut
    av.conf
    graphiques.conf
    *.iso

  • Pour l'architecture x64, nous copions et créons de la même manière la même structure dans le dossier c:remoteinstallsmsbootx64

Addition
Lors de l'utilisation de la commande menu PASSWD le mot de passe peut être défini soit tel quel, soit utiliser un algorithme de hachage en ajoutant la signature correspondante au début du paramètre

Algorithme
Signature

MD5
1 XNUMX $

SHA-1
4 XNUMX $

SHA-2-256
5 XNUMX $

SHA-2-512
6 XNUMX $

Donc pour le mot de passe Qwerty et algorithme MD5

menu PASSWD $1$15opgKTx$dP/IaLNiCbfECiC2KPkDC0

Vous pouvez générer un mot de passe, par exemple, via un générateur de hachage en ligne www.insidepro.com/hashes.php?lang=rus, ligne MD5(Unix)

2. Configurer le démarrage PXELinux

Nous allons maintenant indiquer comment charger pxelinux.com et obtenir le menu.
La spécification du chargeur de démarrage pxelinux.com via la fonctionnalité WDS ne fonctionne pas dans SCCM. Afficher les commandes

wdsutil /set-server /bootprogram:bootx86pxeboot.com /architecture:x86

ne sont pas traitées. Vous pouvez vérifier que les images de démarrage ne sont pas définies en exécutant la commande de configuration du serveur WDS de sortie

wdsutil /get-server /show:images

Menu de démarrage PXE avec System Center Configuration Manager
Par conséquent, dans SCCM 2012, vous ne pouvez pas spécifier votre fichier pour le téléchargement PXE au fournisseur SMSPXE. Par conséquent, nous allons configurer la zone active du serveur DHCP.
Dans les paramètres de la zone active DHCP, réglez les paramètres en fonction de la plaque

Options DHCP
Nom du paramètre
Valeur

066
Nom d'hôte du serveur de démarrage
sccm2012.test.local

067
Nom du fichier de démarrage
smsbootx86pxelinux.com

006
Serveurs DNS
192.168.57.10

015
Nom de domaine DNS
test.local

Dans l'option 066 nous spécifions le nom FQDN du serveur sccm, dans l'option 067 nous spécifions le chemin vers le bootloader x86 pxelinux.com à partir de la racine TFTP, dans l'option 006 nous spécifions l'adresse IP du serveur DNS. Si un nom de serveur court est utilisé dans l'option 066, dans l'option 015, nous spécifions le suffixe DNS du domaine.

Addition
Décrit la configuration DHCP plus en détail mvgolubev ici. Mais sur DC l'option 150, l'adresse IP du serveur TFTP, manquait dans les paramètres d'étendue DHCP et la spécification de l'option 150 via netsh ne fonctionnait pas.Menu de démarrage PXE avec System Center Configuration Manager

3. Vérification du travail

Les réglages de base sont terminés et vous pouvez commencer à vérifier. Nous indiquons sur l'ordinateur de test dans le BIOS qu'il est chargé sur le réseau et chargé dans le menu
Menu de démarrage PXE avec System Center Configuration Manager

Sélectionner un article «Start to SCCM» et si une séquence de tâches est attribuée à l'ordinateur, après un certain temps, la fenêtre "Assistant de séquence de tâches" apparaîtra vous invitant à entrer un mot de passe
Menu de démarrage PXE avec System Center Configuration Manager

Redémarrez la machine, revenez au menu, sélectionnez dans le menu «Antivirus and tools» et entrez le mot de passe Qwerty
Menu de démarrage PXE avec System Center Configuration Manager

Nous sélectionnons un élément arbitraire et observons le chargement de l'image ISO en mémoire
Menu de démarrage PXE avec System Center Configuration Manager

Attendre et voir le résultat
Menu de démarrage PXE avec System Center Configuration Manager

Chèque terminé
Menu de démarrage PXE avec System Center Configuration Manager

4. Paramètres et fonctionnalités supplémentaires

Configuration du routage

Si le client, le serveur DHCP et le serveur contenant le chargeur de réseau se trouvent dans le même segment de réseau, aucune configuration supplémentaire n'est requise. Toutefois, si le client et le serveur DHCP ou le serveur WDS/SCCM se trouvent sur des segments de réseau différents, il est recommandé de configurer vos routeurs pour transférer les paquets de diffusion du client vers le serveur DHCP actif et le serveur WDS/SCCM actif. Dans la littérature anglaise, ce processus est connu sous le nom de "IP Helper table updates". Dans ce cas, le client, après avoir obtenu une adresse IP, contacte le serveur contenant le chargeur de réseau directement via des paquets DHCP afin de télécharger le chargeur de réseau.
Pour les routeurs Cisco, utilisez la commande

ip helper-address {ip address}

{ip address} Adresse du serveur DHCP ou du serveur WDS/SCCM. Cette commande envoie également les paquets de diffusion UDP suivants

Port
Protocole

69
TFTP

53
Système de nom de domaine (DNS)

37
Prestation horaire

137
Serveur de noms NetBIOS

138
Serveur de datagrammes NetBIOS

67
Protocole d'amorçage (BOOTP)

49
Tacacs

La deuxième méthode permettant au client d'obtenir des informations sur le chargeur de réseau directement à partir du serveur DHCP consiste à spécifier les options 60,66,67, 60, XNUMX sur le serveur DHCP. Utilisation de l'option DHCP XNUMX avec la valeur «PXEClient» à toutes les étendues DHCP, uniquement si le serveur DHCP est hébergé sur le même serveur que les services de déploiement Windows. Dans ce cas, le client communique directement avec le serveur des services de déploiement Windows en utilisant TFTP sur le port UDP 4011 au lieu d'utiliser DHCP. Cette méthode n'est pas recommandée par Microsoft en raison de problèmes d'équilibrage de charge, d'une gestion incorrecte des options DHCP et des options de réponse des services de déploiement Windows côté client. Et aussi parce que l'utilisation de seulement deux options DHCP 66 et 67 vous permet de contourner les paramètres définis sur le serveur de démarrage réseau.
Vous devez également ouvrir les ports UDP suivants sur le serveur des services de déploiement Windows
port 67 (DHCP)
port 69 (TFTP)
port 4011 (PXE)
et le port 68 si une autorisation DHCP est requise sur le serveur.

Plus en détail, le processus de configuration et les nuances de redirection entre différents serveurs WDS sont décrits ci-dessous dans les sources :
Gestion du programme de démarrage réseau http://technet.microsoft.com/ru-ru/library/cc732351(v=ws.10).aspx
Gestion du serveur http://technet.microsoft.com/ru-ru/library/cc770637(v=ws.10).aspx
Limites de prise en charge des services de support technique Microsoft (PSS) pour le démarrage réseau Microsoft Windows Preinstallation Environment (Windows PE) 2.0 http://support.microsoft.com/kb/926172/en-us
Comment transférer la diffusion UDP (BOOTP / DHCP) sur Cisco http://www.cisco-faq.com/163/forward_udp_broadcas.html
Fonctionnalités de fonctionnement et de configuration du DHCP sur les routeurs Cisco (Partie 2) http://habrahabr.ru/post/89997/

Options supplémentaires pour le téléchargement local

Dans un environnement de test, la commande

localboot 0

donne une telle erreur
Menu de démarrage PXE avec System Center Configuration Manager
Il découle de la documentation de syslinux que lorsque

localboot 0

le chargement ira à partir d'un disque local. Et lors de la spécification d'une valeur spécifique 0x00 à partir de la disquette principale (primaire), lors de la spécification de 0x80 à partir du disque dur principal (primaire). En changeant la commande en

localboot 0x80

le système d'exploitation local a été chargé.
S'il est nécessaire de démarrer à partir d'un disque, d'une partition ou d'une commande spécifique localboot ne fonctionne pas, alors vous pouvez utiliser les capacités du module chain.c32. Après l'avoir chargé, utilisez la commande append pour spécifier un disque ou une partition de disque spécifique, la numérotation des disques commence à 0, la numérotation des partitions commence à 1. si la partition 0 est spécifiée, le MBR est chargé. Lors de la spécification d'un disque, la partition peut être omise.

KERNEL chain.c32
APPEND hd0 0

ou

KERNEL chain.c32
APPEND hd0

Sources: http://www.syslinux.org/wiki/index.php/SYSLINUX#LOCALBOOT_type_.5BISOLINUX.2C_PXELINUX.5D
http://www.gossamer-threads.com/lists/syslinux/users/7127

Ordre et description des téléchargements de fichiers via PXE

Comme mentionné au début de l'article, le répertoire où se trouvent les fichiers WDS à télécharger est contenu dans la valeur du paramètre RootFolder dans la branche du registre HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesWDSServerProvidersWDSTFTP
Valeur par défaut C:RemoteInstall
Ici dans le paramètre ReadFilter Les répertoires sont spécifiés où le serveur TFTP recherche les fichiers à télécharger, en commençant par la racine. Avec SCCM 2012 SP1 installé, ce paramètre est

boot*
tmp*
SMSBoot*
SMSTemp*
SMSImages*

Si vous changez la valeur du paramètre en * alors tous les fichiers situés dans le répertoire seront traités RemoteInstall.

Le rôle de point de déploiement SCCM 2012 est spécifié dans la valeur de registre ProvidersOrdersitué dans la succursale HKLMSystemCurrentControlSetWDSServerProvidersWDSPXE
Paramètre ProvidersOrder peut prendre des valeurs

SMSPXE
Point de service PXE dans SCCM

SMS.PXE.Filtre
Gestionnaire de script PXE de MDT (Microsoft Deployment Toolkit)

BINLSVC
Moteur WDS et RIS standard

Avec SCCM installé, le paramètre ProvidersOrder questions SMSPXE. En modifiant le paramètre, vous pouvez modifier l'ordre dans lequel les fournisseurs sont chargés.

Dans le catalogue RemoteInstall les fichiers standard suivants se trouvent

www.wdsnbp.com

Un programme de démarrage réseau conçu pour les services de déploiement Windows qui effectue les tâches suivantes :
1. Détection d'architecture.
2. Maintenance des ordinateurs en attente. Lorsque la stratégie d'ajout automatique est activée, ce programme de démarrage réseau est envoyé aux ordinateurs en attente pour suspendre le démarrage réseau et informer le serveur de l'architecture de l'ordinateur client.
3. Utilisation des liens de démarrage réseau (y compris l'utilisation des options DHCP 66 et 67)

PXEboot.com

(Par défaut) Nécessite que l'utilisateur appuie sur F12 pour continuer le démarrage réseau

PXEboot.n12

Ne nécessite pas que l'utilisateur appuie sur la touche F12 et démarre immédiatement le démarrage du réseau

AbandonnerPXE.com

Démarre l'ordinateur en utilisant l'élément de démarrage suivant dans le BIOS sans attendre

bootmgr.exe

Gestionnaire de démarrage Windows (Bootmgr.exe ou Bootmgr.efi). Charge le chargeur de démarrage Windows à l'aide du micrologiciel à partir d'une partition de disque spécifique ou via une connexion réseau (dans le cas d'un démarrage réseau)

Bootmgfw.efi

La version EFI de PXEboot.com et PXEboot.n12 (dans EFI, le choix de démarrer ou de ne pas démarrer PXE se trouve dans le shell EFI, pas dans le programme de démarrage réseau). Bootmgfw.efi combine les fonctionnalités de PXEboot.com, PXEboot.n12, abortpxe.com et bootmgr.exe. Il n'existe actuellement que pour les architectures x64 et Itanium.

Par défaut.bcd

Boot Configuration Data Store (BCD), format REGF, peut être chargé dans REGEDIT, remplace le fichier texte Boot.ini

Le chargement se produit dans l'ordre suivant comme décrit ci-dessus
1. Chargez wdsnbp.com.
2. Ensuite, pxeboot.com de l'architecture appropriée est chargé
3. PXEBoot.com télécharge bootmgr.exe et le magasin de données de configuration de démarrage BCD
4. Bootmgr.exe lit les entrées du système d'exploitation des données de configuration de démarrage BCD et charge le fichier Boot.sdi et l'image Windows PE (boot.wim)
5. Bootmgr.exe démarre le chargement de Windows PE en accédant à Winload.exe dans l'image Windows PE

Si l' RemoteInstall il y a des dossiers

Boot
Images
Mgmt
Templates
Tmp
WdsClientUnattend

leur présence signifie qu'avant d'ajouter le rôle de point de distribution dans SCCM 2012 (points de service PXE dans SCCM 2007), il y avait une action de configuration sur les services de déploiement Windows (WDS) installés qui créaient automatiquement ces dossiers.
Pour le rôle de point de distribution (point de service PXE dans SCCM 2007), seuls les dossiers suivants sont suffisants

SMSBoot
SMSIMAGES
SMSTemp
Stores

Cela ne signifie pas que SCCM n'est pas installé correctement, mais cela peut indiquer une source possible d'erreurs.
La solution de divers problèmes du bundle WDS, SCCM et PXE est discutée en détail dans l'article. Dépannage du point de service PXE et du WDS dans Configuration Manager 2007

Total

L'infrastructure informatique gérée par System Center Configuration Manager a ajouté un nouvel outil pour les administrateurs système sur le terrain.

Liste des liens vers les images ISO (Cliquez pour afficher)download.f-secure.com/estore/rescue-cd-3.16-52606.iso
git.ipxe.org/releases/wimboot/wimboot-latest.zip
download.geo.drweb.com/pub/drweb/livecd/drweb-livecd-602.iso
Rescuedisk.kaspersky-labs.com/rescuedisk/updatable/kav_rescue_10.iso
esetsupport.com/eset_sysrescue.iso
boot.ipxe.org/ipxe.iso
citylan.dl.sourceforge.net/project/clonezilla/clonezilla_live_alternative/20130226-quantal/clonezilla-live-20130226-quantal-i386.iso
ftp.rasla.ru/_Distr_/WinPE/RaSla/WinPE_RaSla.iso
www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-5.01.zip

Je vous remercie!
Menu de démarrage PXE avec System Center Configuration Manager

Source: habr.com

Ajouter un commentaire