
Estamos explorando a possibilidade de expandir os recursos do System Center Configuration Manager (um produto de gerenciamento de infraestrutura de TI) ao inicializar PCs de usuários pela rede usando PXE. Estamos criando um menu de inicialização baseado em PXE.Linux Com a funcionalidade do System Center, adicionam-se recursos de verificação antivírus, imagens de diagnóstico e recuperação. No final do artigo, abordaremos os detalhes de como o System Center 2012 Configuration Manager funciona com o sistema. Windows Serviços de Implantação (WDS) ao inicializar via PXE.
Executamos todas as ações em um ambiente de teste que já possui o System Center 2012 Configuration Manager SP1 instalado, um controlador de domínio e várias máquinas de teste. Presume-se que o SCCM já esteja sendo implantado na rede usando PXE.
Entrada
O ambiente de teste consiste em várias máquinas virtuais. Todas as máquinas executam o sistema operacional convidado da Microsoft. Windows Server Windows Server 2008 R2 (x64), adaptador de rede E1000, controlador SCSI: LSI Logic SAS
Nome (Funções)
Endereço IP / nome DNS
funcional
SCCM (gerenciador de configuração do System Center)
192.168.57.102
sccm2012.test.local
System Center Configuration Manager 2012 SP1 instalado
CC (AD, DHCP, DNS)
192.168.57.10
dc1.teste.local
A função do controlador de domínio, servidor DHCP e servidor DNS
TESTE (máquina de teste)
192.168.57.103
teste.teste.local
Para teste
GW (gateway)
192.168.57.1
Roteamento entre redes. Função de gateway
1. Adicionar PXELinux no SCCM
Executamos ações na máquina onde o System Center Configuration Manager está instalado
- Vamos determinar o diretório onde os arquivos WDS estão localizados para download, para isso procuramos no registro o valor do parâmetro
RootFolderno ramoHKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesWDSServerProvidersWDSTFTP
Valor padrãoC:RemoteInstall
Os arquivos para download do ponto de implantação do SCCM estão localizados nos diretóriossmsbootx86иsmsbootx64dependendo da arquitetura.
Primeiro, configure um diretório para arquitetura de 32 bits, por padrãoc:Remoteinstallsmsbootx86 - Baixe o arquivo com as últimas . Copie de syslinux-5.01.zip para
c:Remoteinstallsmsbootx86os seguintes arquivos:
memdisk, chain.c32, ldlinux.c32, libcom32.c32, libutil.c32, pxechn.c32, vesamenu.c32, pxelinux.0
Arquivos adicionais são necessários para evitar esse erro.
- В
c:Remoteinstallsmsbootx86renomearpxelinux.0вpxelinux.com
Na pastac:remoteinstallsmsbootx86faça uma cópiaabortpxe.come renomeie-o paraabortpxe.0
Se não renomear para extensão.0, então, por exemplo, a instruçãoKernel abortpxe.comfalhará com o seguinte erro: Booting kernel failed: Bad file number
Para PXELINUX, a extensão do arquivo de download deve ser definida de acordo com a placanone 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]Fonte: seção “Arquivo de kernel”
- Para não pressionar a tecla F12 várias vezes ao carregar o SCCM pelo menu, renomeie pxeboot.com para pxeboot.com.f12, copie pxeboot.n12 para pxeboot.com
Se isso não for feito, ao escolher, receberemos essa mensagem todas as vezes
Nota: Não se esqueça de renomear esses arquivos na pasta x64 também. quando carregax86wdsnbp.comda pasta x86, o carregador determina a arquitetura do processador e o próximo arquivo é carregado da pasta com a arquitetura correspondente. Assim, para x64, o arquivo subseqüente não seráx86pxeboot.comEx64pxeboot.com - Baixar / criar , resolução 640x480, copie para a mesma pasta. Criar uma pasta
ISOonde colocaremos as imagens ISO. Criar uma pastapxelinux.cfgpara configurações. - Na pasta pxelinux.cfg, crie um arquivo padrão, em codificação não unicode, com o conteúdo
padrão (Clique para exibir)# используем графическое меню 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.0Na pasta
pxelinux.cfgcriar um arquivographics.confcom conteúdo
graphics.conf (Clique para exibir)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 0Na pasta
pxelinux.cfgcriar um arquivoav.confcom conteúdo
av.conf (Clique para exibir)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, o diretório c:remoteinstallsmsbootx86 contém a estrutura
c:instalações remotasmsbootx86
pxelinux.cfgcadeia.c32
ldlinux.c32
libcom32.c32
libutil.c32
pxechn.c32
vesamenu.c32
pxelinux.com
plano de fundo.png
pxelinux.cfg
pxelinux.cfg
pxelinux.cfg
ISO
abortarpxe.0
wdsnbp.com
bootmgfw.efi
wdsmgfw.efi
bootmgr.exe
pxeboot.n12
pxeboot. com
abortpxe.comomissão
av.conf
gráficos.conf
*.iso - Para a arquitetura x64, copiamos e criamos da mesma forma a mesma estrutura na pasta
c:remoteinstallsmsbootx64
Adição
Ao usar o comandomenu PASSWDa senha pode ser definida como está ou usar um algoritmo de hash adicionando a assinatura correspondente no início do parâmetroAlgoritmo
AssinaturaMD5
$ $ 1SHA-1
$ $ 4SHA-2-256
$ $ 5SHA-2-512
$ $ 6Então, para senha
Qwertye algoritmo MD5menu PASSWD $1$15opgKTx$dP/IaLNiCbfECiC2KPkDC0Você pode gerar uma senha, por exemplo, através de um gerador de hash online , linha
MD5(Unix)
2. Configurar inicialização PXELinux
Agora vamos indicar como carregar pxelinux.com e obter o menu.
A especificação do carregador de inicialização pxelinux.com por meio da funcionalidade WDS não funciona no SCCM. Exibir Comandos
wdsutil /set-server /bootprogram:bootx86pxeboot.com /architecture:x86
não são processados. Você pode verificar se as imagens de inicialização não estão definidas executando o comando output WDS server configuration
wdsutil /get-server /show:images
Portanto, no SCCM 2012, você não pode especificar seu arquivo para download PXE para o provedor SMSPXE. Portanto, configuraremos a área ativa do servidor DHCP.
Nos parâmetros da área ativa do DHCP, defina os parâmetros de acordo com a placa
Opção DHCP
Nome do parâmetro
Valor
066
Nome do host do servidor de inicialização
sccm2012.test.local
067
Nome do arquivo de inicialização
smsbootx86pxelinux.com
006
Servidores DNS
192.168.57.10
015
Nome de domínio DNS
teste.local
Na opção 066 especificamos o nome FQDN do servidor sccm, na opção 067 especificamos o caminho para o bootloader x86 pxelinux.com a partir da raiz TFTP, na opção 006 especificamos o endereço IP do servidor DNS. Se um nome de servidor curto for usado na opção 066, na opção 015 especificamos o sufixo DNS do domínio.
Adição
Descreveu a configuração do DHCP com mais detalhes . Mas emDCa opção 150, endereço IP do servidor TFTP, estava ausente nas configurações do escopo DHCP e a especificação da opção 150 via netsh não funcionou.
3. Verificando o trabalho
As configurações básicas estão concluídas e você pode começar a verificar. Indicamos no computador de teste no BIOS que ele é carregado na rede e carregado no menu
Escolha um item «Start to SCCM» e se uma sequência de tarefas for atribuída ao computador, depois de um tempo a janela "Assistente de Sequência de Tarefas" aparecerá solicitando que você insira uma senha

Reinicie a máquina, volte ao menu, selecione no menu «Antivirus and tools» e digite a senha Qwerty
Selecionamos um item arbitrário e observamos o carregamento da imagem ISO na memória
Esperando e vendo o resultado
Verificação concluída

4. Configurações e recursos adicionais
Configuração de roteamento
Se o cliente, o servidor DHCP e o servidor que contém o carregador de rede estiverem no mesmo segmento de rede, nenhuma configuração adicional será necessária. No entanto, se o cliente e o servidor DHCP ou servidor WDS/SCCM estiverem localizados em segmentos de rede diferentes, é recomendável configurar seus roteadores para encaminhar pacotes de transmissão do cliente para o servidor DHCP ativo e o servidor WDS/SCCM ativo. Na literatura inglesa, esse processo é conhecido como "atualizações da tabela IP Helper". Nesse caso, o cliente, após obter um endereço IP, contata o servidor que contém o carregador de rede diretamente por meio de pacotes DHCP para fazer o download do carregador de rede.
Para roteadores Cisco, use o comando
ip helper-address {ip address}
onde {ip address} Servidor DHCP ou endereço do servidor WDS/SCCM. Este comando também envia os seguintes pacotes de transmissão UDP
Porto
Protocolo
69
TFTP
53
Sistema de nomes de domínio (DNS)
37
Serviço de tempo
137
Servidor de nomes NetBIOS
138
Servidor de Datagrama NetBIOS
67
Protocolo Bootstrap (BOOTP)
49
Tacacs
O segundo método para o cliente obter informações sobre o carregador de rede diretamente do servidor DHCP é especificar as opções 60,66,67 no servidor DHCP. Usando a opção DHCP 60 com valor «PXEClient» Para todos os escopos DHCP somente se o servidor DHCP estiver hospedado no mesmo servidor que os serviços de implantação. WindowsNesse caso, o cliente entra em contato com o servidor de Serviços de Implantação. Windows Diretamente via TFTP pela porta UDP 4011, e não via DHCP. Este método não é recomendado pela Microsoft devido a problemas com balanceamento de carga, tratamento incorreto de parâmetros DHCP e parâmetros de resposta dos serviços de implantação. Windows do lado do cliente. Além disso, usar apenas duas opções de DHCP, 66 e 67, permite ignorar as configurações definidas no servidor de inicialização de rede.
Você também precisa abrir as seguintes portas UDP no servidor de Serviços de Implantação. Windows
porta 67 (DHCP)
porta 69 (TFTP)
porta 4011 (PXE)
e a porta 68 se a autorização DHCP for necessária no servidor.
Mais detalhadamente, o processo de configuração e as nuances de redirecionamento entre diferentes servidores WDS são descritos abaixo nas fontes:
Gerenciamento do programa de inicialização de rede
Gerenciamento de servidor
Os Serviços de Suporte a Produtos da Microsoft (PSS) oferecem suporte a limites para inicialização de rede. Windows Ambiente de pré-instalação (Windows PE) 2.0
Como encaminhar transmissão UDP (BOOTP / DHCP) no Cisco
Recursos de operação e configuração do DHCP em roteadores Cisco (Parte 2)
Opções adicionais para download local
Em um ambiente de teste, o comando
localboot 0 dá um erro desses

Segue da documentação do syslinux que quando
localboot 0carregamento irá de um disco local. E ao especificar um valor específico 0x00 do disquete primário (principal), ao especificar 0x80 do disco rígido primário (primário). Ao alterar o comando para
localboot 0x80 o sistema operacional local foi carregado.
Se houver necessidade de inicializar a partir de um disco, partição ou comando específico localboot não funciona, então você pode usar os recursos do módulo chain.c32. Depois de carregá-lo, use o comando append para especificar um disco específico ou partição de disco, a numeração do disco começa em 0, a numeração da partição começa em 1. se a partição 0 for especificada, o MBR será carregado. Ao especificar um disco, a partição pode ser omitida.
KERNEL chain.c32
APPEND hd0 0ou
KERNEL chain.c32
APPEND hd0 Fontes:
Ordem e descrição do download de arquivos via PXE
Conforme mencionado no início do artigo, o diretório onde estão os arquivos WDS para download está contido no valor do parâmetro RootFolder no ramo de registro HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesWDSServerProvidersWDSTFTP
Valor padrão C:RemoteInstall
Aqui no parâmetro ReadFilter os diretórios são especificados onde o servidor TFTP procura arquivos para download, começando pela raiz. Com o SCCM 2012 SP1 instalado, esta configuração é
boot*
tmp*
SMSBoot*
SMSTemp*
SMSImages* Se você alterar o valor do parâmetro para * então todos os arquivos localizados no diretório serão processados RemoteInstall.
A função do ponto de implantação do SCCM 2012 é especificada no valor do registro ProvidersOrderlocalizado na filial HKLMSystemCurrentControlSetWDSServerProvidersWDSPXE
Parâmetro ProvidersOrder pode receber valores
SMSPXE
Ponto de serviço PXE no SCCM
SMS.PXE.Filtro
Manipulador de script PXE do MDT (Microsoft Deployment Toolkit)
BINLSVC
Motor padrão WDS e RIS
Com o SCCM instalado, o parâmetro ProvidersOrder assuntos SMSPXE. Ao alterar o parâmetro, você pode alterar a ordem em que os provedores são carregados.
No catálogo RemoteInstall os seguintes arquivos padrão estão localizados
wdsnbp.com
Um programa de inicialização de rede projetado para serviços de implantação. Windows e executar as seguintes tarefas:
1. Detecção de arquitetura.
2. Manutenção de computadores em espera. Quando a política de adição automática está habilitada, esse programa de inicialização de rede é enviado aos computadores em espera para suspender a inicialização de rede e informar o servidor sobre a arquitetura do computador cliente.
3. Usando links de inicialização de rede (incluindo o uso das opções DHCP 66 e 67)
PXEboot. com
(Padrão) Requer que o usuário pressione F12 para continuar a inicialização da rede
PXEboot.n12
Não exige que o usuário pressione a tecla F12 e inicia a inicialização da rede imediatamente
AbortPXE.com
Inicializa o computador usando o próximo item de inicialização no BIOS sem esperar
bootmgr.exe
Gerenciador de downloads Windows (Bootmgr.exe ou Bootmgr.efi). Carrega o carregador de inicialização usando o firmware. Windows a partir de uma partição de disco específica ou através de uma conexão de rede (no caso de inicialização pela rede)
Bootmgfw.efi
A versão EFI de PXEboot.com e PXEboot.n12 (no EFI, a opção de inicializar ou não o PXE está no shell EFI, não no programa de inicialização da rede). Bootmgfw.efi combina os recursos de PXEboot.com, PXEboot.n12, abortpxe.com e bootmgr.exe. Atualmente, existe apenas para arquiteturas x64 e Itanium.
Padrão.bcd
Boot Configuration Data Store (BCD), formato REGF, pode ser carregado no REGEDIT, substitui o arquivo de texto Boot.ini
O carregamento ocorre na seguinte ordem conforme descrito acima
1. Baixe wdsnbp.com.
2. Em seguida, pxeboot.com da arquitetura apropriada é carregado
3. PXEBoot.com baixa bootmgr.exe e o armazenamento de dados de configuração de inicialização BCD
4. O Bootmgr.exe lê as entradas do sistema operacional nos Dados de Configuração de Inicialização (BCD) e carrega o arquivo e a imagem Boot.sdi. Windows PE (boot.wim)
5. O Bootmgr.exe começa a carregar. Windows PE, acessando Winload.exe na imagem Windows PE
Se o RemoteInstall existem pastas
Boot
Images
Mgmt
Templates
Tmp
WdsClientUnattend A presença deles significa que, antes de adicionar a função de ponto de distribuição no SCCM 2012 (ponto de serviço PXE no SCCM 2007), foi realizada alguma ação para configurar o instalado. Windows Serviços de Implantação (WDS), que criaram essas pastas automaticamente.
Para a função de ponto de distribuição (ponto de serviço PXE no SCCM 2007), apenas as seguintes pastas são suficientes
SMSBoot
SMSIMAGES
SMSTemp
StoresIsso não significa que o SCCM esteja instalado incorretamente, mas pode apontar para uma possível fonte de erros.
A solução de vários problemas do pacote WDS, SCCM e PXE é discutida em detalhes no artigo.
Total
A infraestrutura de TI gerenciada pelo System Center Configuration Manager adicionou uma nova ferramenta para administradores de sistema de campo.
Lista de links para imagens ISO (Clique para exibir)
Obrigado!

Fonte: habr.com
