Como Criar uma Imagem do Windows usando o Qemu

O que é Qemu?

O QEMU, que significa “Quick Emulator,” é um emulador de código aberto que permite a execução de sistemas operacionais de diferentes arquiteturas em um host. Ele fornece virtualização de hardware para CPUs, dispositivos de entrada/saída e outros componentes de hardware, permitindo que você crie máquinas virtuais e execute sistemas operacionais convidados dentro delas.

Conteúdo:

Instalação do Qemu

Em primeiro lugar, será necessário realizar a instalação do nosso emulador utilizando os comandos abaixo:

Atualize os repositórios:

sudo apt update

Instale o QEMU:

sudo apt install qemu
sudo apt install qemu-utils -y
sudo apt install qemu-system-x86-xen -y
sudo apt install qemu-system-x86 -y
sudo apt install qemu-kvm -y

Após a conclusão da instalação, avançamos para a próxima etapa, que consiste em selecionar a imagem do Windows que será instalada. Dado que o propósito da criação dessa imagem é utilizá-la em uma VPS, seria ideal optar por uma versão mais leve do Windows, sem muitos aplicativos desnecessários (bloatware). Nesse caso, as versões do Windows Server, como o Windows Server 2016, 2019 ou 2022, podem ser uma escolha adequada.

Podemos utilizar a versão de avaliação por até seis meses.

Criando o arquivo de Imagem

Primeiramente, vamos criar um arquivo e alocar espaço para nossa imagem. Digite o comando abaixo:

qemu-img create -f raw windows.img 20G

Download do Windows e Drivers

Windows

Nesse caso, vamos utilizar o Windows Server 2019. Se for o Windows na versão para desktop, utilize este link: Windows Desktop ISO.

wget -O windows.iso 'https://software-download.microsoft.com/download/pr/17763.737.190906-2324.rs5_release_svc_refresh_SERVER_EVAL_x64FRE_en-us_1.iso'

Drivers

Baixe os drivers Virtio nesse link

wget https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.240-1/virtio-win.iso

Criando a Imagem

Agora, vamos rodar a ISO no emulador e criar a imagem customizada do Windows.

digite o comando abaixo:

qemu-system-x86_64 \
  -m 3G \
  -cpu host \
  -enable-kvm \
  -boot order=d \
  -drive file=windows.iso,media=cdrom \
  -drive file=windows.img,format=raw,if=virtio \
  -drive file=virtio-win.iso,media=cdrom \
  -device usb-ehci,id=usb,bus=pci.0,addr=0x4 \
  -device usb-tablet \
  -vnc :122,password=on -monitor stdio \

Pressione a tecla Enter duas vezes após este comando até que “qemu” apareça no prompt e, em seguida, digite o comando a seguir:

change vnc password

Escolha uma senha de até 8 caracteres.

Esta VNC está configurada para escutar na porta 6022 e com uma senha. Essa configuração é feita assim para o caso de você estar criando essa imagem em um computador remoto (VPS). A porta bem conhecida do VNC, que é a 5900, pode ficar suscetível a ataques de bots. Se estiver criando a imagem no seu PC local, sem portas expostas à internet, você pode usar, na última linha, a opção -vnc:0 e conectar na porta padrão sem senha.

Conectando na VNC e iniciando instalação do Windows

Baixe o seu cliente VNC preferido; uma boa opção é o RealVNC.

Conecte-se usando o cliente VNC, adicionando o IP do computador e a porta 6022.

Exemplo: 172.50.12.1:6022

Você deverá visualizar uma imagem da instalação do Windows.

Escolha “Next”, em seguida “Install Now”, e opte pela opção “Windows Server 2019 Standard Evaluation Desktop version”, que geralmente é a segunda opção.

Escolha a opção “Custom Install” e, agora, vamos carregar os drivers que serão utilizados na instalação.

Na tela seguinte, clique em “Load Driver”.

Na janela subsequente, clique em “Cancel” e desmarque a opção “Hide drivers that aren’t compatible with this computer hardware”. Em seguida, clique em “Browse”.

Carregando Driver NetKVM

Navegue até o drive E: (virtio-win) e vá para a pasta NetKVM. Escolha a pasta correspondente ao seu sistema operacional, clique sobre a pasta amd64 e selecione “OK”.

Na janela seguinte, clique no nome do driver na lista e depois em “Next”.

Carregando Driver VioStor

Vamos agora carregar o driver VioStor seguindo o mesmo processo. Clique novamente em “Load Driver”, navegue pelo caminho E:\virtio-win\viostor\seuwindows\amd64 e instale o driver.

Agora podemos prosseguir com a instalação normal do Windows clicando em “Next”.

Aguarde o processo de instalação.

Finalizada a instalação, escolha uma senha para seu usuário.

Customizando a Imagem

Habilitando a Area de trabalho Remota

Para habilitar a Área de Trabalho Remota, siga os passos abaixo:

  1. Pressione as teclas “Windows” + “S” para abrir a barra de pesquisa.
  2. Digite “Configurações” e pressione “Enter” para abrir as Configurações.
  3. Vá para a seção “Sistema”.
  4. Selecione “Área de Trabalho Remota” no menu à esquerda.
  5. Ative a opção “Permitir Área de Trabalho Remota”.

Desabilitando o bloqueio do CTRL-ALT-DEL

Em algumas VPS, não é possível enviar esse comando de teclas durante o início do sistema. Portanto, vamos desabilitar essa opção nas políticas de segurança locais.

  1. Pressione as teclas “Windows” + “R” para abrir a caixa de diálogo Executar.
  2. Digite secpol.msc na caixa de diálogo e pressione “Enter”. Isso abrirá o Editor de Diretivas de Segurança Local.
  3. No Editor de Diretivas de Segurança Local, navegue até “Diretivas Locais” -> “Opções de Segurança”.
  4. Então, escolha a opção “Interactive Logon: Do Not Require CTRL+ALT+DEL”, dê dois cliques e marque a opção “Enable” (Ativar).
  5. Clique em “OK” e feche a janela.

Uma observação importante: algumas alterações requerem o reinício do sistema para que entrem em vigor. Não se esqueça de reiniciar o sistema antes de finalizar sua imagem.

Dicas Extras de Segurança

Alterando a porta padrão da Área de trabalho remota:

Como a porta padrão do RDP é amplamente conhecida e não possui criptografia, ela pode ser alvo de ataques de força bruta ou sniffing. Recomenda-se alterar a porta padrão para aumentar a segurança. Para realizar essa alteração, é necessário modificar o registro do Windows.

Altere o Registro do Windows:
  • Pressione as teclas “Windows” + “R” para abrir a caixa de diálogo Executar.
  • Digite regedit e pressione “Enter” para abrir o Editor de Registro.
  • Navegue até a Chave de Registro Adequada:
  • Vá para a seguinte chave de registro:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp

  • Localize a Entrada “PortNumber”:
  • No painel direito, localize a entrada chamada “PortNumber”. Se não existir, você pode criá-la.
  • Clique com o botão direito do mouse em “PortNumber” e escolha “Modificar”.
  • Defina o Valor da Porta:
  • Selecione “Decimal” e insira o número da porta desejada. O padrão é 3389.
  • Salve as Alterações e Feche o Editor de Registro:
  • Clique em “OK” para salvar as alterações e feche o Editor de Registro.
  • Reinicie o Serviço de Área de Trabalho Remota (opcional):
  • Pressione as teclas “Windows” + “R” novamente.
  • Digite services.msc e pressione “Enter”.
  • Encontre o serviço chamado “Área de Trabalho Remota” ou “Remote Desktop Services”.
  • Reinicie o serviço clicando com o botão direito e escolhendo “Reiniciar”.
Adicionando a nova porta ao Firewall do Windows
  • Abra o Firewall do Windows:
    • Pressione as teclas “Windows” + “S”, digite “Firewall” e selecione “Firewall do Windows com Segurança Avançada”.
  • Navegue até Regras de Entrada:
    • No painel esquerdo, clique em “Regras de Entrada”.
  • Crie uma Nova Regra:
    • No painel direito, clique em “Nova Regra…”
  • Escolha o Tipo de Regra:
    • Selecione “Porta” e clique em “Avançar”.
  • Especifique Detalhes da Porta:
    • Escolha “TCP” ou “UDP”, dependendo da sua necessidade.
    • Selecione “Especificar a porta” e insira o número da porta X.
    • Clique em “Avançar”.
  • Escolha a Ação:
    • Selecione “Permitir a conexão” e clique em “Avançar”.
  • Defina o Perfil da Regra:
    • Escolha as opções de perfil (Domínio, Privado, Público) e clique em “Avançar”.
  • Forneça um Nome e Descrição (Opcional):
    • Dê um nome descritivo à sua regra e, se necessário, forneça uma descrição.
    • Clique em “Concluir” para finalizar.
Mudar nome do Usuário

A mudança do nome do usuário padrão (Administrador/Administrator) para outro diferente pode dificultar ataques de força bruta, pois o atacante precisaria tentar adivinhar não apenas a senha, mas também o nome de usuário.

Atualização do Sistema

Execute uma atualização usando o Windows Update para que a imagem tenha as últimas correções de segurança.

Limpeza

Com todas as customizações e configurações feitas, vamos agora compactá-la. No entanto, um passo adicional pode ser útil para diminuir o tamanho da imagem final, que é a limpeza do disco.

  • Pressione as teclas “Windows” + “S” para abrir a barra de pesquisa.
  • Digite “Limpeza de Disco” e pressione “Enter” para abrir a ferramenta.
  • Selecione a unidade que você deseja limpar. Pode ser a unidade do sistema (normalmente C:).
  • A ferramenta calculará quanto espaço você pode liberar.
  • Marque as categorias de arquivos que deseja limpar. Geralmente, incluem “Arquivos Temporários da Internet”, “Arquivos de Sistema”, “Arquivos de Log”, entre outros.
  • Clique em “OK” para confirmar as seleções.
  • Se solicitado a confirmar a exclusão de arquivos, clique em “Excluir Arquivos”.
  • Aguarde enquanto o utilitário realiza a limpeza.

Compactando e Finalizando

Antes de terminar, dê um Ctrl+C no terminal para encerrar o processo do Qemu que está em execução.

Finalmente, vamos agora compactar a imagem. Digite o comando abaixo:

dd if=windows.img | gzip -c>windows.gz

Aguarde o processo, que pode demorar de 15 a 25 minutos.

Conclusão

Parabéns, você concluiu a criação da sua imagem do Windows, que pode ser usada para instalação em uma VPS. Agora, você pode armazená-la em algum serviço de nuvem, como OneDrive, Google Drive, Nextcloud, etc., e utilizá-la quando necessário.

Se precisar baixa-la de algum servidor remoto voce pode instalar o apache de forma rapida conforme os comando abaixo:

apt install apache2
sudo ufw allow http
 cp windows.gz /var/www/html/
http://meuip/windows.gz

Deixe um comentário