PSD - MDT em PowerShell: instalação e configuração

Sumário

Neste tutorial, vamos ver como instalar, configurar e utilizar o PSD (PowerShell Deployment), que é uma versão do MDT reescrita em PowerShell

Para contextualizar um pouco o PSD e o MDT, é importante saber que a Microsoft já não mantém o MDT, uma ferramenta que permite implementar instalações personalizadas do Windows com pouca interação do utilizador.

Se não conhece o MDT, convido-o, em primeiro lugar, a ler este tutorial: MDT – Instalação e configuração – Microsoft Deployment Toolkit – Otimização da implementação do Window s .

Para quem utiliza o MDT e já teve contacto com ele, este está escrito em VBS, que também já não é suportado pela Microsoft e deverá desaparecer do Windows.

Desta constatação surgiu o: PowerShell Deployment Extension Kit, que permite continuar a utilizar o MDT numa versão mais moderna baseada no PowerShell e traz também melhorias como a implementação através da Web (443).

Neste tutorial, vou explicar o PowerShell Deployment

Pré-requisitos

Antes de começar, vamos abordar os diferentes pré-requisitos.

Para começar, é obrigatório ter um Windows Server instalado em inglês, que pode ser a versão 2016, 2019 ou 2022.

Passemos agora aos pré-requisitos de software, que são:

  • Windows ADK para Windows 11 21H2 (10.1.22000.1)
  • MDT 8456

Instalação do ADK para Windows 11 21H2

Comece por descarregar o ficheiro de instalação: https://go.microsoft.com/fwlink/?linkid=2165884

Execute o ficheiro e aguarde enquanto o assistente de instalação carrega…

Ao iniciar o assistente, clique em Seguinte 1 e mantenha as opções predefinidas.

Configure a recolha de informações para a Microsoft 1 e clique em Seguinte 2 .

Clique em Aceitar 1 .

Deixe as funcionalidades predefinidas e clique em Instalar 1 .

Aguarde enquanto o Windows ADK é descarregado e instalado…

Quando a instalação terminar, saia do assistente de instalação clicando no botão Fechar 1 .

Instalação do WinPE Addon 21H2 para Windows 11

Vamos agora instalar: WinPE Addon 21H2 para Windows 11, que permitirá criar os ambientes de arranque para instalar o Windows através do MDT.

Descarregue o WinPE Addon 21H2 para Windows 11: https://go.microsoft.com/fwlink/?linkid=2166133

Execute o ficheiro; ao iniciar o assistente, clique em Next 1 , mantendo as opções predefinidas.

Clique em seguida em Next 1 ; a opção de recolha é normalmente aquela que foi selecionada durante a instalação do Windows ADK.

Clique em Accept 1 .

Por fim, clique em Install 1 .

Aguarde enquanto o download e a instalação decorrem…

Quando a instalação estiver concluída, clique em Fechar 1 .

Instalação do MDT

Para concluir a instalação dos softwares necessários, é necessário instalar o MDT, que pode ser descarregado aqui: https://www.microsoft.com/en-us/download/details.aspx?id=54259 ou https://static.rdr-it.com/files/MicrosoftDeploymentToolkit_x64.msi

Execute o ficheiro de instalação do MDT.

Ao iniciar o assistente, clique em Next 1 .

Marque a caixa 1 para aceitar a licença e, em seguida, clique em Next 2 .

Com as opções de instalação predefinidas, clique em Next 1 .

Selecione «I don’t want to join the program at this time» 1 e, em seguida, clique no botão «Next» 2 .

Clique agora em «Install» 1 .

A instalação do MDT demora apenas alguns segundos… Quando a instalação estiver concluída, feche o assistente clicando em FInish 1 .

Criar um registo DNS para o servidor Web

No seu servidor DNS, crie um registo para o acesso Web que aponte para o servidor; neste tutorial, escolhi psd.rdr-it.lab.

Criar um utilizador local dedicado ao PSD

Altere a política de execução do PowerShell

É necessário permitir a execução de scripts PowerShell; sem esta alteração, não consegui gerar o ficheiro ISO para poder utilizar o ambiente WinPE.

No futuro servidor, introduza o seguinte comando:

Set-ExecutionPolicy Bypass

É necessário confirmar a execução de todos os scripts.

Descarregar o PSD

Aceda ao repositório Github: https://github.com/FriendsOfMDT/PSD

Clique no botão Code 1 e, em seguida, em Download ZIP 2 .

Depois de descarregado, descompacte o arquivo.

Configurar o PSD

Como irá ver, não existe propriamente uma instalação para o PowerShell Deployment, mas sim uma lista de scripts a executar, uma vez que o PSD se baseia na consola MDT para a configuração.

O conjunto de comandos a seguir deve ser executado a partir de um prompt de comando do PowerShell iniciado como administrador e deve estar na pasta descompactada do PSD.

Outras informações sobre a configuração:

  • O caminho físico no meu servidor DeploymentShare é o seguinte: E:\PSD
  • O nome da partilha: PSD
  • A pasta virtual no IIS: psd
  • O nome DNS: psd.rdr-it.lab

Cabe-lhe a si adaptar estes diferentes parâmetros nos comandos ao seu ambiente.

Criação do Deployment Share para o PSD

O primeiro passo será a configuração da pasta no MDT que será utilizada pelo PSD para o armazenamento destes ficheiros, mas também dos diferentes sistemas operativos, controladores, aplicações…

Para isso, vamos executar o scriptInstall-PSD.ps1, passando-lhe dois parâmetros:

  • psDeploymentFolder : que corresponde ao caminho absoluto no servidor para a localização da pasta
  • psDeploymentShare : o nome da partilha

O que nos dá:

.\Install-PSD.ps1 -psDeploymentFolder E:\psd -psDeploymentShare psd

Se tudo correr bem, deverá obter isto:

No servidor, podemos ver que o ficheiro psd foi criado e, se o abrirmos, encontramos praticamente a mesma estrutura de pastas que numa pasta de implementação MDT.

Instalação do servidor Web IIS para PSD

Como mencionado no início do tutorial, uma das novas funcionalidades é a utilização de um servidor Web para aceder à partilha em vez do caminho UNC e, para isso, o PSD baseia-se no IIS e disponibiliza um script para a instalação da função com as diferentes funcionalidades necessárias.

Vá até à pasta Tools e vamos executar o ficheiro New-PSDWebInstance.ps1

.\New-PSDWebInstance.ps1

Aguarde durante a instalação do IIS…

Concluída a instalação, o servidor precisa de ser reiniciado.

Para reiniciar o servidor, introduza o seguinte comando:

Restart-Computer

Configuração do IIS para a implementação do PowerShell

Na pasta Tools encontra-se o scriptSet-PSDWebInstance.ps1que permite configurar o site do IIS.

Introduza o seguinte comando:

.\Set-PSDWebInstance.ps1 -psDeploymentFolder E:\psd -psVirtualDirectory psd

Se o script for executado com sucesso, receberá apenas uma mensagem a indicar que a execução foi concluída.

Geração de certificados

Vamos agora gerar uma autoridade de certificação e um certificado para o servidor Web IIS emitido por essa autoridade; neste caso, não é necessária a função Windows ADCS, tudo é feito através do script PowerShell.

Se tiver uma CA interna, é possível ignorar esta parte, mas terá de adicionar o certificado raiz no PSD e também gerar um certificado para o servidor IIS, instalá-lo no servidor e associá-lo ao site.

O primeiro passo é a geração da autoridade de certificação; para isso, vamos executar o scriptNew-PSDRootCACert.ps1que se encontra na pasta Tools.

Introduza o seguinte comando:

.\New-PSDRootCACert.ps1 -RootCAName PSDRootCA -ValidityPeriod 20 -psDeploymentFolder E:\psd

Se consultar a pastaPSDRessources\Certificates do Deployment Share do PSD, encontrará o certificado da autoridade de certificação que foi criado nela; é necessário colocá-lo aqui, pois será adicionado ao ficheiro de arranque do WinPE para evitar erros SSL ao ligar-se ao servidor Web.

Agora, vamos gerar o certificado para o serviço Web utilizando a autoridade de certificação que acabámos de criar. No script que vamos utilizar, deve indicar-lhe o nome DNS, o que resulta em:

.\New-PSDServerCert.ps1 -DNSName fqdn.psd.local -FriendlyName fqdn.psd.local -ValidityPeriod 5 -RootCACertFriendlyName PSDRootCA

Para verificar a geração do certificado, pode fazê-lo através da consola do IIS, verificando o mapeamento do site por predefinição ao nível do HTTPS.

Terminámos com os scripts PowerShell; o PowerShell Deployment está agora pronto a ser «utilizado»

Utilizar o PowerShell Deployment

Vamos agora passar à utilização do PSD ou do MDT, pois, como irá ver, toda a sua utilização e personalização é feita diretamente na consola do MDT e há muito poucas diferenças em relação a uma instalação do MDT; por isso, se estiver habituado a utilizar o MDT, não se sentirá perdido.

Comece por iniciar a consola MDT:

Como se pode ver, a partilha (Deployment Share) do PSD foi adicionada à consola MDT. Para quem está a descobrir o MDT, vou explicar passo a passo como proceder para que possam iniciar a implementação do Windows; para quem já está habituado ao MDT, procedam como habitualmente: adicionar o SO, adicionar os controladores, adicionar as aplicações e, em seguida, criar a sequência de tarefas (que recomendo que leiam, pois há uma subtileza).

Para uma exploração completa da consola MDT, convido-vos a ler este tutorial: MDT – Instalação e configuração – Microsoft Deployment Toolkit – Otimização da implementação do Windows

Adicionar um sistema operativo

A primeira coisa a fazer é adicionar o sistema operativo que se pretende implementar; neste caso, vou utilizar a ISO que utilizei para criar a máquina virtual, ou seja, o Windows Server 2019 EN.

Para começar, criei uma pasta em «Operating systems» para organizar os meus SO. Uma vez no local pretendido, clique em «Import Operating System» 1 .

Selecione o tipo de SO que vai importar; neste caso, vou apenas utilizar o ficheiro WIM da ISO, pelo que vou escolher Custom Image File 1 e clicar em Next 2 .

Indique a localização do ficheiro install.wim 1 e clique em Next 2 .

Deixe a opção «Setup file are not needed» 1 e clique no botão «Next» 2 .

Aqui, indique o nome da pasta onde o SO será armazenado 1 e clique em Next 2 .

É apresentado um resumo da importação do SO; clique em Next 1 .

Aguarde enquanto a importação decorre…

Quando a importação terminar, clique em «Finish» 1 para fechar o assistente.

O SO está disponível no MDT / PSD.

Adicionar uma aplicação MSI na consola MDT / PSD

Com o objetivo de personalizar a implementação, vamos adicionar uma aplicação MSI que poderá ser selecionada durante a configuração do computador na fase de implementação.

Para ilustrar esta parte, utilizei o Microsoft Edge; para o importar corretamente para o MDT, é imperativo criar uma pasta que contenha o ficheiro .msi, tal como na captura de ecrã.

A partir da consola MDT, aceda a Applications 1 e clique em New Application 2 .

Tal como acontece com os sistemas operativos, é possível criar pastas para organizar as aplicações.

Selecione o tipo: «Application with sources files» 1 e clique no botão «Next» 2 .

Nos detalhes da aplicação, indique, no mínimo, o nome da aplicação 1 e clique em Next 2 .

Indique a localização das fontes 1 no servidor e clique em Next 2 .

Indique o nome da pasta 1 que será criada na partilha de implementação e clique em Next 2 .

Introduza o comando a executar para instalar o ficheiro .msi; a vantagem deste tipo de ficheiro é que a instalação silenciosa é padrão; para tal, introduza o comando 1 seguinte e clique em Next 2 .

msiexec.exe /i filename.msi /qn

Confirme a adição da aplicação clicando em Next 1 .

Com a aplicação adicionada, feche o assistente clicando em Concluir 1 .

A aplicação está adicionada e disponível na consola MDT.

Adicionar uma sequência de tarefas

A sequência de tarefas (Task Sequence) no MDT permite configurar uma série de ações a realizar, como, por exemplo, a instalação do Windows.

Clique com o botão direito do rato em «Task Sequences» e, em seguida, clique em «New Task Sequence» 1 .

Introduza o ID 1 da sequência de tarefas e um nome 2 e, em seguida, clique em Next 3 .

Na lista de modelos (Template), selecione PSD Standard Client Task Sequence 1 e clique em Next 2 .

Escolha o sistema operativo (OS) 1 a instalar e clique no botão Next 2 .

Se necessário, introduza a chave do produto 1 e clique em Next 2 .

Introduza o nome da sua organização 1 e clique em Next 2 .

Escolha uma opção para a palavra-passe da conta Administrator 1 e clique em Next 2 .

Por predefinição, ser-lhe-á solicitado que configure a palavra-passe da conta de Administrador durante a implementação.

É apresentado um resumo da sequência de tarefas; clique em Next 1 para confirmar a sua criação.

A sequência de tarefas foi adicionada; clique em Concluir 1 para fechar o assistente.

A sequência de tarefas está disponível na consola MDT.

Configurar e criar o ambiente de arranque WinPE

Agora, para poder utilizar o MDT, teremos de configurar e gerar o ambiente de arranque WinPE que permitirá a instalação do Windows no computador que pretendemos implementar.

A principal novidade do PSD é precisamente o ambiente WinPE, que foi reescrito em PowerShell, o que permite torná-lo compatível com os mais recentes ambientes Windows 11 ADK.

Neste tutorial, vamos optar pela abordagem mais simples, focando-nos apenas no arranque e na implementação, mas a configuração é altamente personalizável e, para tal, convido-vos a consultar os tutoriais MDT existentes.

Na consola MDT, clique com o botão direito do rato no Deployment Share e clique em Properties 1 .

Vá para o separador «Rules» 1 ; tal como no MDT, encontrará aqui o conteúdo do ficheiro «CustomSettings.ini», que nos permite configurar o assistente de implementação. Primeiro, vamos configurar o ambiente WinPE; para tal, clique no botão «Edit Bootstrap.ini» 2 .

No mínimo, indique o URL, o nome de utilizador e a palavra-passe para que o ambiente WinPE tenha as informações necessárias para se ligar ao servidor Web.

De volta ao separador Rule, altere, por exemplo, o valor _SMSTSORGNAME, que permitirá que o nome da sua empresa seja exibido no texto das janelas do WinPE; em seguida, aplique as alterações e feche a janela.

Vamos prosseguir com a criação do ambiente WinPE que será utilizado posteriormente para o arranque dos computadores.

Clique com o botão direito do rato em Deployment Share e clique em Update Deployment Share 1 .

Na etapa seguinte, mantenha a opção «Optimize the boot image updating process» e clique em «Next» 1 .

Passe o resumo clicando em Next 1 .

Aguarde enquanto as imagens são geradas…

Quando terminar, saia do assistente clicando em Finish 1 .

Com o Explorador de Ficheiros, na pasta Boot que se encontra na pasta PSD.

Nesta pasta, é o ficheiro .iso que nos interessa particularmente, pois permitirá criar imagens de arranque para as VM ou criar pen drives de arranque. O ficheiro .wim pode ser adicionado ao WDS para arranque pela rede.

Implementar o Windows com o PowerShell Deployment

Para concluir este tutorial, vamos ver as etapas de implementação com o PSD.

Para este tutorial, criei uma VM no Hyper-V e configurei o ficheiro ISO na unidade de CD/DVD da VM para arrancar a partir dele.

Vou, portanto, arrancar a partir do ISO…

Ao carregar o ambiente WinPE, aguarde, pois isso pode demorar 2 a 3 minutos…

Como pode ver na captura de ecrã abaixo, o ambiente WinPE verifica a ligação com o servidor…

Assim que os vários testes forem realizados e concluídos com sucesso, o assistente é iniciado…

Com o assistente iniciado, clique em «Let’s get started» 1 .

Na primeira etapa, é realizada uma verificação para verificar se o computador cumpre os pré-requisitos para a implementação das versões mais recentes do Windows; tal como no MDT, é possível configurar esta etapa ou mesmo ignorá-la; clique em «Next» 1 .

Selecione a sequência de tarefas 1 que pretende executar para a implementação do Windows e clique em «Next» 2 .

Selecione o disco 1 onde o Windows será instalado e clique em Next 2 .

Active DirectoryConfigure o nome do computador 1 ; neste caso, vou mantê-lo como Workgroup. Nesta etapa, pode configurar a ligação ao domínio; clique em Next 2 .

Introduza a palavra-passe da conta Administrator 1 e clique em Next 2 .

Ajuste, se necessário, o teclado e o fuso horário 1 e, em seguida, clique em Next 2 .

Selecione as aplicações a instalar 1 e clique em Next 2 .

Confirme a implementação clicando em «Begin» 1 .

Aguarde enquanto o Windows é implementado…

Quando a implementação estiver concluída, clique em OK 1 para fechar a janela.

O seu computador está implementado.


Neste tutorial, vimos como implementar o PSD, que se baseia no MDT e permite ter um ambiente «moderno» de implementação do Windows.

Romain Drouche

Romain Drouche

Architecte Système | MCSE: Core Infrastructure

Expert en infrastructures IT avec plus de 15 ans d'expérience sur le terrain. Actuellement Chef de projet Systèmes et Réseaux et Référent SSI (Sécurité des Systèmes d'Information), je mets mon expertise au service de la fiabilité et de la sécurité des environnements technologiques.

GHinM▶