Menú de inicio PXE con System Center Configuration Manager
Estamos considerando expandir las capacidades de System Center Configuration Manager (un producto para administrar la infraestructura de TI) al arrancar las PC de los usuarios a través de una red usando PXE. Creamos un menú de inicio basado en PXELinux con la funcionalidad de System Center y agregamos imágenes de escaneo, diagnóstico y recuperación antivirus. Al final del artículo, nos referimos a las funciones de System Center 2012 Configuration Manager junto con los Servicios de implementación de Windows (WDS) cuando se inicia a través de 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 tienen instalado el sistema operativo invitado Microsoft 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. Agregue PXELinux a 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.
В 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]
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 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
tu préstamo estudiantil
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
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
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. mvgolubevaquí. 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ó.
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ú
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
Reinicie la máquina, vuelva al menú, seleccione en el menú «Antivirus and tools» e ingrese la contraseña Qwerty
Seleccionamos un elemento arbitrario y observamos la carga de la imagen ISO en la memoria
Esperando y viendo el resultado
Verificación completada
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 de Windows. En este caso, el cliente se comunica directamente con el servidor de Servicios de implementación de Windows mediante TFTP en el puerto UDP 4011 en lugar de utilizar DHCP. Microsoft no recomienda este método debido a problemas con el equilibrio de carga, el manejo incorrecto de las opciones de DHCP y las opciones de respuesta de los Servicios de implementación de Windows en el lado del cliente. Y también porque usar solo dos opciones DHCP 66 y 67 le permite omitir los parámetros establecidos en el servidor de arranque de red.
También debe abrir los siguientes puertos UDP en el servidor de Servicios de implementación de Windows
puerto 67 (DHCP)
puerto 69 (TFTP)
puerto 4011 (PXE)
y el puerto 68 si se requiere autorización DHCP en el servidor.
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.
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 inicio de red diseñado para los Servicios de implementación de Windows que realiza 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
Administrador de arranque de Windows (Bootmgr.exe o Bootmgr.efi). Carga el cargador de arranque de Windows utilizando el firmware de una partición de disco específica o a través de una conexión de red (en el caso de un arranque de 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 datos de configuración de arranque BCD y carga el archivo Boot.sdi y la imagen de Windows PE (boot.wim)
5. Bootmgr.exe comienza a cargar Windows PE accediendo a Winload.exe en la imagen de Windows PE
Si el RemoteInstall hay carpetas
Boot
Images
Mgmt
Templates
Tmp
WdsClientUnattend
su presencia significa que antes de agregar la función de punto de distribución en SCCM 2012 (puntos de servicio PXE en SCCM 2007), hubo alguna acción de configuración en los Servicios de implementación de Windows (WDS) instalados 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
La infraestructura de TI administrada por System Center Configuration Manager ha agregado una nueva herramienta para los administradores de sistemas de campo.