Menú de inicio PXE con System Center Configuration Manager

Menú de inicio PXE con System Center Configuration Manager

Estamos estudiando la posibilidad de ampliar las capacidades de System Center Configuration Manager (un producto de gestión de infraestructura de TI) al arrancar equipos de usuario a través de la red mediante PXE. Estamos creando un menú de arranque basado en PXE.Linux con la funcionalidad de System Center y agregar capacidades de escaneo antivirus, imágenes de diagnóstico y recuperación. Al final del artículo, abordaremos los detalles de cómo System Center 2012 Configuration Manager funciona con Windows Servicios de despliegue (WDS) al arrancar mediante PXE.

Realizamos todas las acciones en un entorno de prueba que ya tiene instalado System Center 2012 Configuration Manager SP1, un controlador de dominio y varias máquinas de prueba. Se supone que SCCM ya se está implementando en la red mediante PXE.

Entrada

El entorno de prueba consta de varias máquinas virtuales. Todas las máquinas ejecutan el sistema operativo invitado de Microsoft. Windows Server Windows Server 2008 R2 (x64), adaptador de red E1000, controlador SCSI: LSI Logic SAS

Nombre (Funciones)
dirección IP / nombre DNS
Funcional

SCCM (Administrador de configuración del centro del sistema)
192.168.57.102
sccm2012.prueba.local

System Center Configuration Manager 2012 SP1 instalado

CC (ANUNCIO, DHCP, DNS)
192.168.57.10
dc1.prueba.local

El papel del controlador de dominio, el servidor DHCP y el servidor DNS

PRUEBA (Máquina de prueba)
192.168.57.103
prueba.prueba.local

Para las pruebas

GW (Puerta de enlace)
192.168.57.1
Enrutamiento entre redes. Función de puerta de enlace

1. Agregar PXELinux en SCCM

Realizamos acciones en la máquina donde está instalado System Center Configuration Manager

  • Determinemos el directorio donde se encuentran los archivos WDS para su descarga, para ello buscamos en el registro el valor del parámetro RootFolder en una rama HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesWDSServerProvidersWDSTFTP
    Valor por defecto C:RemoteInstall
    Los archivos para descargar desde el punto de implementación SCCM se encuentran en los directorios smsbootx86 и smsbootx64 dependiendo de la arquitectura.
    Primero, configure un directorio para la arquitectura de 32 bits, de forma predeterminada c:Remoteinstallsmsbootx86
  • Descargue el archivo con la última syslinux . Copie de syslinux-5.01.zip a c:Remoteinstallsmsbootx86 los siguientes archivos:
    memdisk, chain.c32, ldlinux.c32, libcom32.c32, libutil.c32, pxechn.c32, vesamenu.c32, pxelinux.0
    Se necesitan archivos adicionales para evitar dicho error.
    Menú de inicio PXE con System Center Configuration Manager
  • В c:Remoteinstallsmsbootx86 rebautizar pxelinux.0 в pxelinux.com
    En carpeta c:remoteinstallsmsbootx86 Hacer una copia abortpxe.com y cambiarle el nombre a abortpxe.0
    Si no cambia el nombre a la extensión .0, entonces por ejemplo la instrucción
    Kernel abortpxe.com

    fallará con el siguiente error: Falló el kernel de arranque: número de archivo incorrecto
    Para PXELINUX, la extensión del archivo de descarga debe configurarse de acuerdo con la placa

    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]
    

    Fuente: http://www.syslinux.org/wiki/index.php/SYSLINUX#KERNEL_file sección “Archivo del núcleo”

  • Para no presionar la tecla F12 varias veces al cargar SCCM a través del menú, cambie el nombre de pxeboot.com a pxeboot.com.f12, copie pxeboot.n12 a pxeboot.com
    Si esto no se hace, al elegir, recibiremos ese mensaje cada vez
    Menú de inicio PXE con System Center Configuration Manager
    Nota: No olvide cambiar el nombre de estos archivos en la carpeta x64 también. cuando carga x86wdsnbp.com desde la carpeta x86, el cargador determina la arquitectura del procesador y el siguiente archivo se carga desde la carpeta con la arquitectura correspondiente. Por lo tanto, para x64, el archivo posterior no será x86pxeboot.comY x64pxeboot.com
  • Descargar / crear background.png, resolución 640x480, copiar en la misma carpeta. crear una carpeta ISO donde colocaremos imágenes ISO. crear una carpeta pxelinux.cfg para configuraciones
  • En la carpeta pxelinux.cfg, cree un archivo predeterminado, en una codificación que no sea Unicode, con el contenido
    predeterminado (Haga clic para mostrar)
    # используем графическое меню
    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

    En carpeta pxelinux.cfg crear un archivo graphics.conf con contenido
    graphics.conf (Haga clic para mostrar)

    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

    En carpeta pxelinux.cfg crear un archivo av.conf con contenido
    av.conf (Haga clic para mostrar)

    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
    
  • Como resultado, el directorio c:remoteinstallsmsbootx86 contiene la estructura

    c:instalación remotamsmsbootx86
    pxelinux.cfg

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

    la página predeterminada
    av.conf
    gráficos.conf
    *.Yo asi

  • Para la arquitectura x64, copiamos y creamos de manera similar la misma estructura en la carpeta c:remoteinstallsmsbootx64

Adición
Al usar el comando menu PASSWD la contraseña se puede configurar tal cual o usar un algoritmo hash agregando la firma correspondiente al comienzo del parámetro

Algoritmo
Firma

MD5
$ $ 1

SHA-1
$ $ 4

SHA-2-256
$ $ 5

SHA-2-512
$ $ 6

Entonces para la contraseña Qwerty y algoritmo MD5

menu PASSWD $1$15opgKTx$dP/IaLNiCbfECiC2KPkDC0

Puede generar una contraseña, por ejemplo, a través de un generador de hash en línea www.insidepro.com/hashes.php?lang=rus, línea MD5(Unix)

2. Configurar el arranque PXELinux

Ahora indicaremos cómo cargar pxelinux.com y obtener el menú.
Especificar el gestor de arranque pxelinux.com a través de la funcionalidad WDS no funciona en SCCM. Ver comandos

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

no son procesados. Puede verificar que las imágenes de arranque no estén configuradas ejecutando el comando de configuración del servidor WDS de salida

wdsutil /get-server /show:images

Menú de inicio PXE con System Center Configuration Manager
Por lo tanto, en SCCM 2012, no puede especificar su archivo para descargar PXE al proveedor de SMSPXE. Por tanto, configuraremos el área activa del servidor DHCP.
En los parámetros del área activa DHCP, configure los parámetros de acuerdo con la placa

Opción DHCP
Nombre del parametro
Valor

066
Nombre de host del servidor de arranque
sccm2012.prueba.local

067
Nombre del archivo de arranque
smsbootx86pxelinux.com

006
Servidores DNS
192.168.57.10

015
Nombre de dominio DNS
prueba.local

En la opción 066 especificamos el nombre FQDN del servidor sccm, en la opción 067 especificamos la ruta al gestor de arranque x86 pxelinux.com comenzando desde la raíz TFTP, en la opción 006 especificamos la dirección IP del servidor DNS. Si se usa un nombre de servidor corto en la opción 066, en la opción 015 especificamos el sufijo DNS del dominio.

Adición
Describió la configuración de DHCP con más detalle. mvgolubev aquí. pero en DC la opción 150, dirección IP del servidor TFTP, faltaba en la configuración del alcance de DHCP y especificar la opción 150 a través de netsh no funcionó.Menú de inicio PXE con System Center Configuration Manager

3. Comprobación del trabajo

La configuración básica está completa y puede comenzar a verificar. Indicamos en la computadora de prueba en el BIOS que se carga a través de la red y se carga en el menú
Menú de inicio PXE con System Center Configuration Manager

Elige un artículo «Start to SCCM» y si se asigna una secuencia de tareas a la computadora, luego de un tiempo aparecerá la ventana "Asistente de secuencia de tareas" que le pedirá que ingrese una contraseña
Menú de inicio PXE con System Center Configuration Manager

Reinicie la máquina, vuelva al menú, seleccione en el menú «Antivirus and tools» e ingrese la contraseña Qwerty
Menú de inicio PXE con System Center Configuration Manager

Seleccionamos un elemento arbitrario y observamos la carga de la imagen ISO en la memoria
Menú de inicio PXE con System Center Configuration Manager

Esperando y viendo el resultado
Menú de inicio PXE con System Center Configuration Manager

Verificación completada
Menú de inicio PXE con System Center Configuration Manager

4. Configuraciones y funciones adicionales

Configuración de enrutamiento

Si el cliente, el servidor DHCP y el servidor que contiene el cargador de red están en el mismo segmento de red, no se requiere configuración adicional. Sin embargo, si el cliente y el servidor DHCP o el servidor WDS/SCCM están ubicados en segmentos de red diferentes, se recomienda que configure sus enrutadores para reenviar paquetes de difusión desde el cliente al servidor DHCP activo y al servidor WDS/SCCM activo. En la literatura inglesa, este proceso se conoce como "actualizaciones de la tabla IP Helper". En este caso, el cliente, después de obtener una dirección IP, contacta directamente con el servidor que contiene el cargador de red a través de paquetes DHCP para descargar el cargador de red.
Para enrutadores Cisco, use el comando

ip helper-address {ip address}

donde {ip address} Servidor DHCP o dirección del servidor WDS/SCCM. Este comando también envía los siguientes paquetes de difusión UDP

El puerto
Protocolo

69
TFTP

53
Sistema de nombres de dominio (DNS)

37
servicio de tiempo

137
Servidor de nombres NetBIOS

138
Servidor de datagramas NetBIOS

67
Protocolo Bootstrap (BOOTP)

49
Tacacs

El segundo método para que el cliente obtenga información sobre el cargador de red directamente desde el servidor DHCP es especificar las opciones 60,66,67 en el servidor DHCP. Uso de la opción DHCP 60 con valor «PXEClient» a todos los ámbitos DHCP solo si el servidor DHCP está alojado en el mismo servidor que los servicios de implementación. WindowsEn este caso, el cliente se comunica con el servidor de Servicios de Implementación. Windows Directamente a través de TFTP por el puerto UDP 4011, no mediante DHCP. Microsoft no recomienda este método debido a problemas con el equilibrio de carga, el manejo incorrecto de los parámetros DHCP y los parámetros de respuesta de los servicios de implementación. Windows del lado del cliente. Además, usar solo dos opciones DHCP, 66 y 67, permite omitir la configuración establecida en el servidor de arranque de red.
También necesita abrir los siguientes puertos UDP en el servidor de Servicios de implementación. Windows
puerto 67 (DHCP)
puerto 69 (TFTP)
puerto 4011 (PXE)
y el puerto 68 si se requiere autorización DHCP en el servidor.

Más detalladamente, el proceso de configuración y los matices de redirección entre diferentes servidores WDS se describen a continuación en las fuentes:
Gestión del programa de arranque de red http://technet.microsoft.com/ru-ru/library/cc732351(v=ws.10).aspx
administración del servidor http://technet.microsoft.com/ru-ru/library/cc770637(v=ws.10).aspx
Límites de soporte de los Servicios de soporte de productos de Microsoft (PSS) para el arranque de red de Microsoft Windows Entorno de preinstalación (Windows PE) 2.0 http://support.microsoft.com/kb/926172/en-us
Cómo reenviar la transmisión UDP (BOOTP / DHCP) en Cisco http://www.cisco-faq.com/163/forward_udp_broadcas.html
Características de operación y configuración de DHCP en enrutadores Cisco (Parte 2) http://habrahabr.ru/post/89997/

Opciones adicionales para descarga local

En un entorno de prueba, el comando

localboot 0

da tal error
Menú de inicio PXE con System Center Configuration Manager
De la documentación de syslinux se deduce que cuando

localboot 0

la carga irá desde un disco local. Y al especificar un valor específico 0x00 del disquete primario (primario), al especificar 0x80 del disco duro primario (primario). Al cambiar el comando a

localboot 0x80

el sistema operativo local se ha cargado.
Si es necesario arrancar desde un disco, partición o comando específico localboot no funciona, entonces puede usar las capacidades del módulo chain.c32. Después de cargarlo, use el comando agregar para especificar un disco o partición de disco específico, la numeración de discos comienza desde 0, la numeración de particiones comienza desde 1. si se especifica la partición 0, se carga el MBR. Al especificar un disco, se puede omitir la partición.

KERNEL chain.c32
APPEND hd0 0

o

KERNEL chain.c32
APPEND hd0

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

Orden y descripción de la descarga de archivos a través de PXE

Como se mencionó al principio del artículo, el directorio donde se encuentran los archivos WDS para su descarga está contenido en el valor del parámetro RootFolder en la sucursal del registro HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesWDSServerProvidersWDSTFTP
Valor por defecto C:RemoteInstall
Aquí en el parámetro ReadFilter Se especifican directorios donde el servidor TFTP busca archivos para descargar, comenzando desde la raíz. Con SCCM 2012 SP1 instalado, esta configuración es

boot*
tmp*
SMSBoot*
SMSTemp*
SMSImages*

Si cambia el valor del parámetro a * entonces todos los archivos ubicados en el directorio serán procesados RemoteInstall.

El rol del punto de implementación de SCCM 2012 se especifica en el valor del registro ProvidersOrderubicado en la sucursal HKLMSystemCurrentControlSetWDSServerProvidersWDSPXE
Parámetro ProvidersOrder puede tomar valores

SMSPXE
Punto de servicio PXE en SCCM

SMS.PXE.Filtro
Controlador de secuencias de comandos PXE de MDT (Microsoft Deployment Toolkit)

BINLSVC
Motor estándar WDS y RIS

Con SCCM instalado, el parámetro ProvidersOrder asuntos SMSPXE. Al cambiar el parámetro, puede cambiar el orden en que se cargan los proveedores.

En el catálogo RemoteInstall los siguientes archivos estándar se encuentran

wdsnbp.com

Un programa de arranque de red diseñado para servicios de implementación Windows y realizando las siguientes tareas:
1. Detección de arquitectura.
2. Mantenimiento de los ordenadores de espera. Cuando la política de agregar automáticamente está habilitada, este programa de inicio de red se envía a las computadoras en espera para suspender el inicio de red e informar al servidor de la arquitectura de la computadora cliente.
3. Uso de enlaces de inicio de red (incluido el uso de opciones de DHCP 66 y 67)

PXEboot.com

(Predeterminado) Requiere que el usuario presione F12 para continuar con el arranque de la red

PXEboot.n12

No requiere que el usuario presione la tecla F12 e inicia el arranque de la red inmediatamente

AbortarPXE.com

Arranca la computadora usando el siguiente elemento de arranque en el BIOS sin esperar

bootmgr.exe

Gestor de descargas Windows (Bootmgr.exe o Bootmgr.efi). Carga el gestor de arranque utilizando el firmware. Windows desde una partición de disco específica o a través de una conexión de red (en caso de arranque por red).

Bootmgfw.efi

La versión EFI de PXEboot.com y PXEboot.n12 (en EFI, la elección de iniciar o no iniciar PXE está en el shell EFI, no en el programa de inicio de red). Bootmgfw.efi combina las capacidades de PXEboot.com, PXEboot.n12, abortpxe.com y bootmgr.exe. Actualmente solo existe para arquitecturas x64 e Itanium.

Predeterminado.bcd

Almacén de datos de configuración de arranque (BCD), formato REGF, se puede cargar en REGEDIT, reemplaza el archivo de texto Boot.ini

La carga ocurre en el siguiente orden como se describe arriba
1. Descargue wdsnbp.com.
2. A continuación, se carga pxeboot.com de la arquitectura adecuada
3. PXEBoot.com descarga bootmgr.exe y el almacén de datos de configuración de arranque BCD
4. Bootmgr.exe lee las entradas del sistema operativo de los datos de configuración de arranque (BCD) y carga el archivo Boot.sdi y la imagen. Windows Educación física (baño)
5. Bootmgr.exe comienza a cargarse Windows PE, accediendo a Winload.exe en la imagen Windows PE

Si el RemoteInstall hay carpetas

Boot
Images
Mgmt
Templates
Tmp
WdsClientUnattend

Su presencia significa que antes de agregar el rol de punto de distribución en SCCM 2012 (punto de servicio PXE en SCCM 2007) hubo alguna acción para configurar la instalación. Windows Servicios de implementación (WDS), que crearon automáticamente estas carpetas.
Para la función de punto de distribución (punto de servicio PXE en SCCM 2007), solo las siguientes carpetas son suficientes

SMSBoot
SMSIMAGES
SMSTemp
Stores

Esto no significa que SCCM esté instalado incorrectamente, pero puede señalar una posible fuente de errores.
La solución de varios problemas del paquete WDS, SCCM y PXE se analiza con gran detalle en el artículo. Solución de problemas del punto de servicio PXE y WDS en Configuration Manager 2007

Total

La infraestructura de TI administrada por System Center Configuration Manager ha agregado una nueva herramienta para los administradores de sistemas de campo.

Lista de enlaces a imágenes ISO (Click para mostrar)descargar.f-secure.com/estore/rescue-cd-3.16-52606.iso
git.ipxe.org/releases/wimboot/wimboot-latest.zip
descargar.geo.drweb.com/pub/drweb/livecd/drweb-livecd-602.iso
rescatedisk.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

Gracias por su atención!
Menú de inicio PXE con System Center Configuration Manager

Fuente: habr.com

Compre alojamiento confiable para sitios con protección DDoS, servidores VPS VDS 🔥 Compra alojamiento web fiable con protección DDoS, servidores VPS VDS | ProHoster