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
- Download do Windows e Drivers
- Criando a Imagem
- Customizando a Imagem
- Compactando e Finalizando
- Conclusão
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:
- Pressione as teclas “Windows” + “S” para abrir a barra de pesquisa.
- Digite “Configurações” e pressione “Enter” para abrir as Configurações.
- Vá para a seção “Sistema”.
- Selecione “Área de Trabalho Remota” no menu à esquerda.
- 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.
- Pressione as teclas “Windows” + “R” para abrir a caixa de diálogo Executar.
- Digite
secpol.msc
na caixa de diálogo e pressione “Enter”. Isso abrirá o Editor de Diretivas de Segurança Local. - No Editor de Diretivas de Segurança Local, navegue até “Diretivas Locais” -> “Opções de Segurança”.
- Então, escolha a opção “Interactive Logon: Do Not Require CTRL+ALT+DEL”, dê dois cliques e marque a opção “Enable” (Ativar).
- 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