PXE-installationsmeny med System Center Configuration Manager

PXE-installationsmeny med System Center Configuration Manager

Vi övervÀger att utöka funktionaliteten hos System Center Configuration Manager (en produkt för hantering av IT-infrastruktur) för att möjliggöra nÀtverksstart av anvÀndarpersondatorer via PXE. Vi skapar en startmeny baserad pÄ PXELinux med funktioner frÄn System Center och lÀgger till funktioner för viruskontroll, samt diagnostik- och ÄterstÀllningsbilder. I slutet av artikeln berör vi specifikationerna för hur System Center 2012 Configuration Manager fungerar tillsammans med Windows Deployment Services (WDS) för att möjliggöra PXE-start.

Alla ÄtgÀrder utförs i en testmiljö dÀr System Center 2012 Configuration Manager SP1 redan Àr installerad, en domÀncontroller och ett antal testmaskiner finns tillgÀngliga. Det förutsÀtts att SCCM redan anvÀnds för nÀtverksutdeployering med PXE.

Inledning

Testmiljön bestÄr av flera virtuella maskiner. Alla maskiner har operativsystemet Microsoft Windows Server 2008 R2 (x64) installerat, nÀtverksadapter E1000, SCSI Controller: LSI Logic SAS.

Namn (Roller)
IP-adress / DNS-namn
Funktionalitet

SCCM (System Center Configuration Manager)
192.168.57.102
sccm2012.test.local

System Center Configuration Manager 2012 SP1 Àr installerad

DC (AD, DHCP, DNS)
192.168.57.10
dc1.test.local

Roll som domÀncontroller, DHCP-server och DNS-server

TEST (Testmaskin)
192.168.57.103
test.test.local

För testning

GW (Gateway)
192.168.57.1
Routing mellan nÀtverk. Roll som gateway.

1. LĂ€gg till PXELinux i SCCM

ÅtgĂ€rderna utförs pĂ„ maskinen dĂ€r System Center Configuration Manager Ă€r installerad.

  • Vi definierar katalogen dĂ€r WDS-filerna för start ligger. För att göra detta, kollar vi vĂ€rdet pĂ„ parametern i registret. RootFolder i grenen HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesWDSServerProvidersWDSTFTP
    StandardvÀrde C:RemoteInstall
    Filerna för start frÄn distributionspunkten SCCM finns i katalogerna smsbootx86 och smsbootx64 beroende pÄ arkitektur.
    Först konfigurerar vi katalogen för 32-bitars arkitektur, som standard c:Remoteinstallsmsbootx86
  • Vi laddar ner arkivet med den senaste syslinux . Vi kopierar följande filer frĂ„n syslinux-5.01.zip till c:Remoteinstallsmsbootx86 de följande filerna:
    memdisk, chain.c32, ldlinux.c32, libcom32.c32, libutil.c32, pxechn.c32, vesamenu.c32, pxelinux.0
    Ytterligare filer Àr nödvÀndiga för att undvika ett sÄdant fel.
    PXE-installationsmeny med System Center Configuration Manager
  • I c:Remoteinstallsmsbootx86 Vi döper om pxelinux.0 pĂ„ pxelinux.com
    I mappen c:remoteinstallsmsbootx86 gör vi en kopia av abortpxe.com och döper om den till abortpxe.0
    Om vi inte döper om den till Àndelsen .0, dÄ exempelvis instruktionen
    Kernel abortpxe.com

    kommer att utföras med felet: Booting kernel failed: Bad file number.
    För PXELINUX bör filens startÀndelse anges enligt tabellen.

    ingen eller annan	Linux kÀrnbild
     .0		PXE startprogram (NBP) [endast PXELINUX]
     .bin		"CD startsektor" [endast ISOLINUX]
     .bs		Startsektor [endast SYSLINUX]
     .bss		Startsektor, DOS superblock kommer att patchas in [endast SYSLINUX]
     .c32		COM32-bild (32-bitars COMBOOT)
     .cbt		COMBOOT-bild (kan inte köras frÄn DOS)
     .com		COMBOOT-bild (kan köras frÄn DOS)
     .img		Diskbild [endast ISOLINUX]
    

    KĂ€lla: http://www.syslinux.org/wiki/index.php/SYSLINUX#KERNEL_file avsnitt "Kernelfil"

  • För att slippa trycka flera gĂ„nger pĂ„ F12 under uppstart av SCCM via menyn, omdöper vi pxeboot.com till pxeboot.com.f12, kopierar pxeboot.n12 till pxeboot.com
    Om detta inte görs kommer vi varje gÄng att fÄ detta meddelande
    PXE-installationsmeny med System Center Configuration Manager
    AnmÀrkning: Glöm inte att döpa om dessa filer i mappen för x64 ocksÄ, eftersom de laddas x86wdsnbp.com frÄn x86-mappen, laddar bootloader arkitekturen och nÀsta fil laddas redan frÄn mappen med motsvarande arkitektur. För x64 kommer nÀsta fil att bli inte x86pxeboot.com, och x64pxeboot.com
  • Ladda ner/skapa background.png, med en upplösning pĂ„ 640x480, kopiera till samma mapp. Skapa mappen ISO dĂ€r vi ska placera ISO-bilder. Skapa mappen pxelinux.cfg för konfigurationer.
  • I mappen pxelinux.cfg skapar vi filen default, i icke-unicode kodning, med innehĂ„llet
    default (Klicka för att visa)
    # ĐžŃĐżĐŸĐ»ŃŒĐ·ŃƒĐ”ĐŒ графОчДсĐșĐŸĐ” ĐŒĐ”ĐœŃŽ
    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

    I mappen pxelinux.cfg skapa filen graphics.conf med innehÄllet
    graphics.conf (Klicka för att visa)

    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

    I mappen pxelinux.cfg skapa filen av.conf med innehÄllet
    av.conf (Klicka för att visa)

    DEFAULT vesamenu.c32
    PROMPT 0
    MENU TITLE Antivirus och verktyg
    MENU INCLUDE pxelinux.cfg/graphics.conf
    
    label main menu
    menu label gÄ tillbaka till huvudmenyn
    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
    
    #Ladda ISO frÄn fullstÀndig vÀg, kan laddas frÄn annan TFTP
    label winpe
    menu label WinPE frÄn en annan 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
    
  • Som resultat innehĂ„ller katalogen c:remoteinstallsmsbootx86 strukturen

    c:remoteinstallsmsbootx86
    pxelinux.cfg

    chain.c32
    ldlinux.c32
    libcom32.c32
    libutil.c32
    pxechn.c32
    vesamenu.c32
    pxelinux.com
    background.png
    pxelinux.cfg
    pxelinux.cfg
    pxelinux.cfg
    ISO
    abortpxe.0
    wdsnbp.com
    bootmgfw.efi
    wdsmgfw.efi
    bootmgr.exe
    pxeboot.n12
    pxeboot.com
    abortpxe.com

    default
    av.conf
    graphics.conf
    *.iso

  • För arkitekturen x64 kopierar vi pĂ„ samma sĂ€tt och skapar en liknande struktur i mappen c:remoteinstallsmsbootx64

TillÀgg
Vid anvÀndning av kommandot menu PASSWD kan lösenordet anges antingen som det Àr, eller anvÀnda hash-algoritmen genom att lÀgga till den motsvarande signaturen i början av parametern

Algoritm
Signatur

MD5
$1$

SHA-1
$4$

SHA-2-256
$5$

SHA-2-512
$6$

SÄledes för lösenordet Qwerty och i MD5-algoritmen

menu PASSWD $1$15opgKTx$dP/IaLNiCbfECiC2KPkDC0

Du kan generera ett lösenord, till exempel genom en online hashgenerator www.insidepro.com/hashes.php?lang=rus, strÀng MD5(Unix)

2. Konfigurera PXELinux-laddning

Vi anger nu hur vi ska ladda pxelinux.com och fÄ menyn.
Att ange bootloader pxelinux.com med hjÀlp av WDS-funktionen fungerar inte i SCCM. Kommandon av typen

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

hanteras inte. För att sÀkerstÀlla att bootbilderna inte Àr angivna kan du köra kommandot för att visa WDS-serverkonfigurationen

wdsutil /get-server /show:images

PXE-installationsmeny med System Center Configuration Manager
SÄledes kan man i SCCM 2012 inte ange sin egen fil för att ladda via PXE för SMSPXE-leverantören. Vi kommer dÀrför att konfigurera den aktiva DHCP-omrÄdet.
I instÀllningarna för den aktiva DHCP-omrÄdet anger vi parametrarna enligt tabellen

DHCP-alternativ
Parameter namn
VĂ€rde

066
Boot server host name
sccm2012.test.local

067
Bootfile name
smsbootx86pxelinux.com

006
DNS-servrar
192.168.57.10

015
DNS domÀnnamn
test.local

I alternativ 066 anges FQDN-namn pÄ sccm-servern, i alternativ 067 anger vi sökvÀgen till x86 bootloader pxelinux.com som börjar frÄn roten av TFTP, i alternativ 006 anger vi IP-adressen till DNS-servern. Om alternativ 066 anvÀnder ett kort namn pÄ servern, anges DNS-suffixet för domÀnen i alternativ 015.

TillÀgg
Mer detaljerad information om DHCP-konfigurationen har beskrivits av mvgolubev hÀr. Men i DC alternativ 150, IP-adressen för TFTP-servern, saknades i instÀllningarna för DHCP-omrÄdet och angivande av alternativ 150 via netsh fungerade inte.PXE-installationsmeny med System Center Configuration Manager

3. Testa funktionen

De grundlÀggande instÀllningarna Àr klara och vi kan börja testa. Vi anger pÄ testdatorn i BIOS att den ska starta frÄn nÀtverket och laddar menyn
PXE-installationsmeny med System Center Configuration Manager

Vi vÀljer alternativet «Start to SCCM» och om datorn har tilldelats en uppgiftssekvens, kommer ett fönster med meddelandet «Guiden för att skapa uppgiftssekvens» att dyka upp efter en stund och be om att ange lösenord
PXE-installationsmeny med System Center Configuration Manager

Vi startar om maskinen, gÄr Äter in i menyn och vÀljer i menyn «Antivirus and tools» och anger lösenordet Qwerty
PXE-installationsmeny med System Center Configuration Manager

Vi vÀljer ett valfritt alternativ och ser ISO-avbildningen laddas i minnet
PXE-installationsmeny med System Center Configuration Manager

Vi vÀntar och observerar resultatet
PXE-installationsmeny med System Center Configuration Manager

Testet Àr klart
PXE-installationsmeny med System Center Configuration Manager

4. Ytterligare instÀllningar och funktioner

Konfigurering av routing

Om klienten, DHCP-servern och servern som innehÄller nÀtverksstartprogrammet befinner sig i samma nÀtverkssegment, krÀvs ingen ytterligare konfiguration. Om klienten och DHCP-servern eller WDS/SCCM-servern befinner sig i olika nÀtverkssegment, rekommenderas att konfigurera routerarna för att vidarebefordra bredbroadcast-paket frÄn klienten till den aktiva DHCP-servern och den aktiva WDS/SCCM-servern. I engelsksprÄkig litteratur Àr denna process kÀnd som "IP Helper table updates". I detta fall kontaktar klienten, efter att ha fÄtt en IP-adress, servern som innehÄller nÀtverksstartprogrammet direkt via DHCP-paket för att ladda ner nÀtverksstartprogrammet.
För Cisco-routrar anvÀnds kommandot

ip helper-address {ip address}

w {ip address} adressen till DHCP-servern eller WDS/SCCM-servern. NÀr detta kommando anvÀnds vidarebefordras Àven följande bredbroadcast-UDP-paket

Port
Protokoll

69
TFTP

53
Domain Name System (DNS)

37
TidstjÀnst

137
NetBIOS Namnserver

138
NetBIOS Datagramserver

67
Bootstrap Protocol (BOOTP)

49
TACACS

Den andra metoden för att fÄ klienten information om nÀtverksstartprogrammet direkt frÄn DHCP-servern Àr genom att ange alternativ 60,66,67 pÄ DHCP-servern. AnvÀndning av DHCP-parametern 60 med vÀrdet "PXEClient" i alla DHCP-scope, endast om DHCP-servern Àr placerad pÄ samma server som Windows-installationstjÀnster. I detta fall kontaktar klienten Windows-installationstjÀnst-servern direkt via TFTP-protokollet över UDP-port 4011, istÀllet för via DHCP. Microsoft rekommenderar inte denna metod pÄ grund av problem med belastningsbalansering, felaktig hantering av DHCP-parametrar och svar frÄn installationsservicetjÀnster pÄ klientsidan. Dessutom tillÄter anvÀndningen av endast de tvÄ alternativen 66 och 67 av DHCP att kringgÄ parametrarna som definieras pÄ nÀtverksstartservern.
Det Àr ocksÄ nödvÀndigt att öppna följande UDP-portar pÄ Windows-installationstjÀnst-servern
port 67 (DHCP)
port 69 (TFTP)
port 4011 (PXE)
och port 68, om DHCP-autentisering pÄ servern krÀvs.

Processen för konfiguration och detaljer om vidarebefordran mellan olika WDS-servrar beskrivs mer ingÄende nedan i kÀllorna:
Hantera program för nÀtverksstart http://technet.microsoft.com/ru-ru/library/cc732351(v=ws.10).aspx
Hantera servern http://technet.microsoft.com/ru-ru/library/cc770637(v=ws.10).aspx
Microsoft Product Support Services (PSS) supportgrÀnser för nÀtverksstart av Microsoft Windows Preinstallation Environment (Windows PE) 2.0 http://support.microsoft.com/kb/926172/en-us
Hur man vidarebefordrar UDP-broadcast (BOOTP / DHCP) pÄ Cisco http://www.cisco-faq.com/163/forward_udp_broadcas.html
Funktioner och konfiguration av DHCP pÄ Cisco-routrar (Del 2) http://habrahabr.ru/post/89997/

Ytterligare möjligheter för lokal start

I testmiljön anvÀnds kommandot

localboot 0

ger en sÄdan felkod
PXE-installationsmeny med System Center Configuration Manager
FrÄn dokumentationen för syslinux framgÄr att

localboot 0

start kommer att ske frÄn den lokala disken. NÀr man anger ett specifikt vÀrde 0x00 frÄn den huvudsakliga (primary) diskettstationen, eller 0x80 frÄn den huvudsakliga (primary) hÄrddisken. Genom att Àndra kommandot till

localboot 0x80

det lokala operativsystemet har startat.
Om det Àr nödvÀndigt att starta frÄn en specifik disk, partition eller kommando localboot inte fungerar, kan man utnyttja modulfunktionerna chain.c32. Efter att ha laddat den, anger vi det specifika disken eller partitionen med kommandot append, diskar numreras frÄn 0, partitioner frÄn 1 eftersom nÀr partition 0 anges, laddas MBR. Vid angivelse av disk behöver partitionen inte anges.

KERNEL chain.c32
APPEND hd0 0

eller

KERNEL chain.c32
APPEND hd0

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

Ordning och beskrivning av filerna för att starta via PXE

Som redan nÀmnts i början av artikeln, katalogen dÀr WDS-filer för start finns, anges i vÀrdet av parametern RootFolder i registret HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesWDSServerProvidersWDSTFTP
StandardvÀrde C:RemoteInstall
HÀr anges Àven parametern ReadFilter som specificerar katalogerna dÀr TFTP-servern letar efter startfiler, börjar frÄn roten. NÀr SCCM 2012 SP1 Àr installerat, Àr detta parameter vÀrde

boot*
tmp*
SMSBoot*
SMSTemp*
SMSImages*

Om vÀrdet av parametern Àndras till * kommer alla filer som finns i katalogen att bearbetas RemoteInstall.

SCCM 2012 distributionsroll anges i registreringsparameter ProvidersOrder, belÀgen i grenen HKLMSystemCurrentControlSetWDSServerProvidersWDSPXE
Parameter ProvidersOrder kan anta vÀrdena

SMSPXE
PXE-tjÀnstpunkt i SCCM

SMS.PXE.Filter
PXE-skriptshanterare frÄn MDT (Microsoft Deployment Toolkit)

BINLSVC
Standard WDS och RIS-hanterare

NÀr SCCM Àr installerat, Àr parameter ProvidersOrder betydelse SMSPXE. Genom att Àndra parametern kan man Àndra ordningen för provÀrdering av leverantörer.

I kataloget RemoteInstall finns följande standardfiler

wdsnbp.com

NÀtverksstartprogrammet, utformat för Windows-distributions tjÀnster och utför följande uppgifter:
1. UpptÀckte arkitekturen.
2. Hantera vÀntande datorer. NÀr policyn för automatisk tillÀgg Àr aktiverad, skickas detta nÀtverksstartprogram till vÀntande datorer för att avbryta nÀtverksstarten och rapportera servern klientdatorns arkitektur.
3. AnvÀndning av lÀnkar för nÀtverksstart (inklusive anvÀndningen av parametrarna 66 och 67 i DHCP-protokollet)

PXEboot.com

(Som standard) KrÀver att anvÀndaren trycker pÄ F12-tangenten för att fortsÀtta med nÀtverksstarten

PXEboot.n12

KrÀver inte att anvÀndaren trycker pÄ F12 och börjar omedelbart nÀtverksstarta

AbortPXE.com

Startar datorn med hjÀlp av nÀsta startalternativ i BIOS utan att vÀnta

Bootmgr.exe

Windows boot manager (Bootmgr.exe eller Bootmgr.efi). Laddar Windows-laddaren frÄn en angiven diskpartition eller via en nÀtverksanslutning (vid nÀtverksstart)

Bootmgfw.efi

EFI-versionen av programmen PXEboot.com och PXEboot.n12 (i EFI vÀljs det att ladda eller inte ladda PXE i EFI-skalet, inte av nÀtverksstartprogrammet). Programmet Bootmgfw.efi kombinerar funktionerna hos PXEboot.com, PXEboot.n12, abortpxe.com och bootmgr.exe. För nÀrvarande finns det endast för x64- och Itanium-arkitekturer

Default.bcd

Lagring av startkonfigurationsdata (BCD), REGF-format, kan laddas i REGEDIT, ersÀtter textfilen Boot.ini

Starten sker i följande ordning i enlighet med beskrivningen ovan
1. wdsnbp.com laddas.
2. DÀrefter laddas den arkitektur som överensstÀmmer med pxeboot.com
3. PXEBoot.com laddar bootmgr.exe och lagringen av startkonfigurationsdata BCD
4. Bootmgr.exe lÀser operativsystemets poster frÄn lagringen av startkonfigurationsdata BCD och laddar filen Boot.sdi och bilden av Windows PE (boot.wim)
5. Bootmgr.exe pÄbörjar starten av Windows PE genom att hÀnvisa till Winload.exe i Windows PE-bilden

Om det finns RemoteInstall mappar

Boot
Images
Mgmt
Templates
Tmp
WdsClientUnattend

deras nÀrvaro innebÀr att det gjordes nÄgon form av konfiguration av den installerade Windows Deployment Services (WDS) innan rollen som distributionspunkt lades till i SCCM 2012 (PXE-servrar i SCCM 2007), vilket resulterade i att dessa mappar skapades automatiskt.
För rollen som distributionspunkt (PXE-server i SCCM 2007) rÀcker det med följande mappar

SMSBoot
SMSIMAGES
SMSTemp
Stores

Detta innebÀr inte att SCCM Àr felaktigt installerat, men kan indikera en potentiell felkÀlla.
En mycket detaljerad lösning pÄ olika problem med integrationen av WDS, SCCM och PXE beskrivs i artikeln Troubleshooting the PXE Service Point and WDS in Configuration Manager 2007

Resultat

I IT-infrastrukturen som hanteras av System Center Configuration Manager har ett nytt verktyg tillkommit för systemadministratörer pÄ plats.

Lista med lÀnkar till ISO-avbilder (Klicka för att visa)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.ru/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

Tack för uppmÀrksamheten!
PXE-installationsmeny med System Center Configuration Manager

KĂ€lla: habr.com

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster