
Inicie novos qubes Windows de forma rápida, fácil e segura no Qubes OS
Crie novas qubes Windows rapidamente, sem esforço e com segurança
O Qvm-Create-Windows-Qube é uma ferramenta para instalar rápida e convenientemente novas qubes Windows com drivers do Qubes Windows Tools (QWT) automaticamente. Ele suporta oficialmente Windows 7, 8.1 e 10, bem como Windows Server 2008 R2, 2012 R2, 2016 e 2019.
O projeto enfatiza a correção, segurança e tratar o Windows como um sistema operacional convidado não confiável durante todo o processo. A instalação ocorre 100% desconectada (air gapped) e apresenta integração opcional com Whonix na qube Windows finalizada para maior privacidade. Alcançar esses objetivos com o menor número possível de linhas de código para garantir simplicidade e minimalismo é fundamental.
Ele também oferece outras comodidades, como a instalação automática de pacotes incluindo Firefox, Office 365, Notepad++, Visual Studio e mais usando Chocolatey para deixá-lo funcionando rapidamente no seu novo ambiente.
Apresentado em: Hacker News | Orgulhosamente classificado no top 10 da página inicial do Hacker News e em primeiro lugar no Show HN
install.sh para o Dom0 executando o seguinte comando no Dom0:
qvm-run -p --filter-escape-chars --no-color-output <nome_da_qube_onde_o_script_está> "cat '/home/user/Downloads/install.sh'" > install.shinstall.sh para garantir sua integridade
qvm-run a desativa por padrão quando a saída é um arquivochmod +x install.sh && ./install.sh
TemplateVM global padrão, que é fedora-XX por padrão/usr/bin/qvm-create-windows-qube resultantePara atualizar o Qvm-Create-Windows-Qube, comece excluindo a VM windows-mgmt e o programa principal executando o seguinte comando no Dom0:
qvm-remove -f windows-mgmt && sudo rm /usr/bin/qvm-create-windows-qube
Por último, siga as etapas de instalação acima para reinstalar.
Note que isso também excluirá quaisquer ISOs do Windows que já tenham sido baixados. Isso pode ser desejável no caso de a Microsoft ter atualizado as ISOs do Windows (o que significa que você deve baixá-las novamente de qualquer forma). No entanto, se você quiser evitar baixar novamente qualquer uma das ISOs do Windows, basta navegar até /home/user/qvm-create-windows-qube/windows/isos na VM windows-mgmt e copiar seu conteúdo para outra qube (de preferência descartável). Após a reinstalação estar completa, copie essas ISOs de volta para windows-mgmt no diretório mencionado.
Usage: qvm-create-windows-qube [options] -i -a -h, --help -c, --count Number of Windows qubes with given basename desired -t, --template Make this qube a TemplateVM instead of a StandaloneVM -n, --netvm NetVM for Windows to use -s, --seamless Enable seamless mode persistently across reboots -o, --optimize Optimize Windows by disabling unnecessary functionality for a qube -y, --spyless Configure Windows telemetry settings to respect privacy -w, --whonix Apply Whonix recommended settings for a Windows-Whonix-Workstation -p, --packages Comma-separated list of packages to pre-install (see available packages at: https://chocolatey.org/packages) -P, --pool LVM storage pool to install Windows on (https://www.qubes-os.org/doc/secondary-storage/) -i, --iso Windows media to automatically install and setup -a, --answer-file Settings for Windows installation
### Baixando a ISO do Windows
Mido (`mido.sh`) é o downloader seguro do Microsoft Windows (para Unix), inspirado por [Fido](https://github.com/pbatard/Fido) do [Rufus](https://github.com/pbatard/rufus). Ele é capaz de automatizar o processo de download de algumas ISOs do Windows que a Microsoft mantém por trás de uma [interface web de download com restrições](https://www.microsoft.com/en-us/software-download/windows10ISO). O Mido é robusto e baixa ISOs do Windows de forma segura para serem usadas pelo Qvm-Create-Windows-Qube a partir dos servidores oficiais da Microsoft. Você pode encontrá-lo em `/home/user/qvm-create-windows-qube/windows/isos/mido.sh` no `windows-mgmt`.
`windows-mgmt` está isolado da rede (air gapped). Isso significa que, para realizar o download de forma segura, é necessário copiar o script `mido.sh` para outro qube (descartável) e, em seguida, transferir as novas ISOs baixadas para `windows-mgmt` e colocá-las no diretório `/home/user/qvm-create-windows-qube/windows/isos`. Alternativamente, o `windows-mgmt` pode receber acesso temporário à rede, no entanto, isso não é recomendado por razões de segurança.
Uma vez geradas, as ISOs do Windows são armazenadas em cache em `/home/user/qvm-create-windows-qube/windows/out` para uso posterior. Se você baixar uma ISO atualizada com o Mido, certifique-se de remover a mesma ISO do diretório de cache mencionado acima. Isso fará com que o cache seja regenerado a partir da ISO atualizada.
Para leitores avançados: O Qvm-Create-Windows-Qube adota uma abordagem genérica para lidar com ISOs que pode funcionar com qualquer ISO do Windows. Se você tem sua própria ISO do Windows que gostaria de usar, provavelmente será necessário apenas um pequeno ajuste no arquivo de resposta mais próximo (especificamente a chave `/IMAGE/NAME`) para fazê-la funcionar. Você pode obter os valores válidos de `/IMAGE/NAME` para sua ISO analisando o `install.wim` dentro dela usando o comando `wiminfo` (empacotado como `wimlib-utils` no Fedora ou `wimtools` no Debian) ou a partir do Windows usando o Windows ADK.
### Criando uma VM Windows
**Importante:** Certifique-se de ler a seção [Problemas Conhecidos das Ferramentas do Windows do Qubes](https://github.com/ElliotKillick/qvm-create-windows-qube#qubes-windows-tools-known-issues) abaixo para um pequeno problema upstream.
#### Windows 10
*[Demonstração em vídeo](https://www.youtube.com/watch?v=cCi2MOUwS_Q)*
`qvm-create-windows-qube -n sys-firewall -oyp firefox,notepadplusplus,office365proplus -i win10x64.iso -a win10x64-pro.xml work-win10`
`qvm-create-windows-qube -n sys-firewall -oyp steam -i win10x64.iso -a win10x64-pro.xml game-console`
#### Windows Server 2019
`qvm-create-windows-qube -n sys-firewall -oy -i win2019-eval.iso -a win2019-datacenter-eval.xml fs-win2019`
#### Windows 10 Enterprise LTSC
- Uma versão mais estável, minimizada, segura e privada do Windows 10 fornecida oficialmente pela Microsoft
- Esta versão do Windows 10 é recomendada para aqueles que precisam do melhor em segurança e privacidade do Windows
`qvm-create-windows-qube -n sys-firewall -oyp firefox,notepadplusplus,office365proplus -i win10x64-enterprise-ltsc-eval.iso -a win10x64-enterprise-ltsc-eval.xml work-win10`
`qvm-create-windows-qube -n sys-whonix -oyw -i win10x64-enterprise-ltsc-eval.iso -a win10x64-enterprise-ltsc-eval.xml anon-win10`
#### Windows 7
- Não recomendado porque o Windows 7 [não é mais suportado](https://github.com/ElliotKillick/qvm-create-windows-qube#advisories) pela Microsoft, no entanto, é o único sistema operacional desktop que o driver GUI do Qubes (nas Ferramentas do Windows do Qubes) suporta se integração de janela perfeita ou redimensionamento dinâmico forem necessários.
*[Demonstração em vídeo](https://www.youtube.com/watch?v=duUM1VLrXIQ)*
`qvm-create-windows-qube -n sys-firewall -soyp firefox,notepadplusplus,office365proplus -i win7x64-ultimate.iso -a win7x64-ultimate.xml work-win7`
## Segurança
Qvm-Create-Windows-Qube é "razoavelmente seguro" como o [Qubes](https://www.qubes-os.org) o considera.
- `windows-mgmt` está isolado da rede (air gapped)
- Todo o processo de configuração do qube Windows é feito sem conexão de rede
- Exceção: Se (e somente se) pacotes estiverem configurados para instalação, o Windows terá permissão de acesso à Internet no final da instalação do qube Windows
- Toda uma classe de vulnerabilidades de injeção de comando é eliminada no script shell do Dom0 ao não permitir que ele analise qualquer saída do qube não confiável `windows-mgmt`
- Apenas códigos de saída são passados pelo `qvm-run`; nenhuma variável
- Isso também mitiga as consequências de outra vulnerabilidade [Shellshock](https://en.wikipedia.org/wiki/Shellshock_(software_bug)) do Bash
- O download das ISOs do Windows é tornado seguro ao impor:
- As ISOs são baixadas diretamente de subdomínios controlados pela Microsoft de `microsoft.com`
- HTTPS TLS 1.2/1.3
- Verificação SHA-256 dos arquivos após o download
- Cada arquivo é salvo com a extensão `.UNVERIFIED` até que se tenha certeza de que sua soma de verificação corresponde
- Mido é escrito de forma robusta em POSIX sh (o shell Dash mínimo será usado se disponível) para que a interação com a interface web de download com restrições da Microsoft seja mais segura
- Para mais segurança, poderia até ser executado em um shell Rust compatível com POSIX (ex.: nsh) com coreutils Rust (ex.: uutils). Esta não é a configuração padrão.
- O Windows é tratado como um sistema operacional convidado não confiável durante todo o processo
- O impacto de quaisquer vulnerabilidades teóricas no manuseio da ISO do Windows (ex.: vulnerabilidade na análise do sistema de arquivos) ou do arquivo de resposta é limitado ao `windows-mgmt`
- Todos os commits dos mantenedores são sempre assinados com suas respectivas chaves PGP
- Se a assinatura algum dia cessar, assuma comprometimento
- Mantenedor atual 1: [Elliot Killick](https://github.com/ElliotKillick)
- Chave PGP ([subchave de assinatura de código](https://keys.openpgp.org/search?q=EEEE+6403+CE85+0791+ECB1+F820+7C4E+CB25+B6B1+C0DE)): EEEE 6403 CE85 0791 ECB1 F820 7C4E CB25 B6B1 C0DE
- Email: [[email protected]](https://keys.openpgp.org/search?q=contact%40elliotkillick.com)
- Esta chave é nova a partir de 28 de maio de 2024
- Mantenedor atual 2: [Frédéric Pierret](https://github.com/fepitre)
- Chave PGP: 9FA6 4B92 F95E 706B F28E 2CA6 4840 10B5 CDC5 76E2
- Email: [[email protected]](https://keys.openpgp.org/search?q=frederic.pierret%40qubes-os.org)
- Principalmente preocupado com o suporte ao Qubes R4.1
- Veja o branch `release4.1` e [qubes-mgmt-salt-windows-mgmt](https://github.com/fepitre/qubes-mgmt-salt-windows-mgmt)
### Windows
#### Manutenção
Não se esqueça de aplicar todas as atualizações aplicáveis ao criar seu qube Windows. A Microsoft frequentemente cria ISOs atualizadas para versões atuais do Windows, como o Windows 10. Para essas versões do Windows, é recomendável baixar periodicamente a versão mais recente usando o Mido para obter uma imagem Windows nova pronta para uso.
#### Avisos
O Windows 7 e o Windows Server 2008 R2 chegaram ao fim da vida útil (EOL) em [14 de janeiro de 2020](https://support.microsoft.com/en-us/help/4057281/windows-7-support-will-end-on-january-14-2020).
## Privacidade
Qvm-Create-Windows-Qube visa ser a forma mais privada de usar o Windows. Muitos usuários do Qubes migraram do Windows (ou de outro sistema operacional proprietário) em parte para se afastar da Microsoft (ou das Big Tech em geral) e, portanto, poder usar o Windows a uma distância segura é de suma importância para este projeto. Ou, pelo menos, a distância mais segura possível para o que é essencialmente um enorme blob binário proprietário.
### Telemetria do Windows
Configura as configurações de telemetria do Windows para respeitar a privacidade.
- Opt-out do Programa de Aperfeiçoamento da Experiência do Cliente (CEIP)
- Desabilitar o Relatório de Erros do Windows (WER)
- Desabilitar o serviço DiagTrack
- Desligar toda telemetria no aplicativo "Configurações" do Windows 10
- Habilitar o nível ["Segurança"](https://docs.microsoft.com/en-us/windows/privacy/configure-windows-diagnostic-data-in-your-organization#diagnostic-data-settings) de telemetria em edições compatíveis do Windows 10
- Veja `spyless.bat` para mais informações
### Recomendações do Whonix para Windows-Whonix-Workstation
Tudo mencionado [aqui](https://www.whonix.org/wiki/Other_Operating_Systems) até "Ainda mais segurança" está implementado. "Máxima segurança" é usar uma estação de trabalho Whonix oficial construída por você mesmo a partir do código-fonte. Este recurso não é oficial nem endossado pelo Whonix.
É recomendável ler [esta](https://www.whonix.org/wiki/Windows_Hosts) documentação do Whonix para entender as implicações de usar o Windows dessa forma.
### Fácil de Redefinir a Impressão Digital
Existem inúmeros identificadores únicos presentes em cada instalação do Windows, como MachineGUID, ID de instalação, Números de Série de Volume (VSNs) da unidade NTFS e muito mais. Com o Qvm-Create-Windows-Qube, esses identificadores únicos podem ser facilmente redefinidos reinstalando o Windows automaticamente.
### Limitações
A impressão digital é possível através do hipervisor em caso de comprometimento da VM; aqui estão alguns exemplos práticos (não específicos do Windows):
- [Xen clocksource as wallclock](https://phabricator.whonix.org/T389)
- O vazamento de fuso horário pode ao menos ser mitigado configurando a hora UTC na BIOS/UEFI
- O fuso horário local ainda pode ser configurado para o relógio do Dom0 XFCE e nas VMs desejadas executando `timedatectl set-timezone` a cada inicialização usando o padrão `/rw/config/rc.local` que o Qubes fornece
- No entanto, a correlação de tempo entre VMs permanece trivial
- [CPUID](https://github.com/QubesOS/qubes-issues/issues/1142)
- Geralmente, algumas das interfaces de VM documentadas [aqui](https://www.qubes-os.org/doc/vm-interface/) (ex.: dimensões da tela)
## Perguntas Frequentes (FAQ)
### Preciso de uma licença do Windows para usar este projeto?
Não, toda instalação do Windows vem com uma chave de produto de teste incorporada que é usada por padrão se nenhuma outra for fornecida. O Qvm-Create-Windows-Qube especifica explicitamente nenhuma chave de produto nos arquivos de resposta para usar a chave de teste padrão.
Nas versões de consumo geral do Windows, como (não empresariais) 7, 8.1 e 10, esses testes duram para sempre, com a ressalva de que uma marca d'água ou pop-up pode começar a aparecer solicitando a ativação do produto.
Nas versões Windows Enterprise Evaluation e Server Evaluation, uma vez que o teste expira, a máquina será desligada automaticamente (e sem aviso) após ficar ligada por um tempo determinado pelo Serviço de Monitoramento de Licença do Windows (`C:\Windows\System32\wlms\wlms.exe`; está em uma pasta oculta). Quando isso ocorre, o motivo mencionado para o desligamento será registrado no Visualizador de Eventos. Para renovar o teste, execute `slmgr /rearm` no prompt de comando. Isso funcionará pelo número de vezes especificado em `slmgr /dlv` (pode variar), momento em que o produto deve ser ativado ou reinstalado.
Recomenda-se licenciar o produto quando o teste expirar em todos os casos.
Conceder acesso à Internet ao Windows não é necessário para usar a chave de teste (pois ela está incorporada em cada ISO). No entanto, é necessário para ativar o Windows com sua própria chave de produto (a menos que você faça a ativação por telefone).
### Qual é o propósito do AppVM `windows-mgmt`? Posso deletá-lo após a instalação do Windows estar concluída?
O propósito do AppVM `windows-mgmt` é isolar com segurança tudo o que ocorre como parte da instalação do Windows em uma única máquina virtual. Dessa forma, a exploração de quaisquer bugs que existam, por exemplo, no código de análise do sistema de arquivos ISO do Linux, é limitada na quantidade de dano que pode causar caso uma ISO do Windows seja maliciosa. Este é o princípio de segurança sobre o qual todo o Qubes OS é construído, conhecido como "segurança por isolamento" ou "segurança por compartimentalização".
Sinta-se à vontade para deletar `windows-mgmt` se você tiver certeza de que não há mais VMs Windows que deseja criar. No entanto, se for apenas o espaço em disco que você deseja recuperar, você pode simplesmente deletar as ISOs localizadas em `/home/user/qvm-create-windows-qube/windows/isos` e `/home/user/qvm-create-windows-qube/windows/out` (no `windows-mgmt`) para economizar a maior parte desse espaço.
### Mais alguma coisa que eu deva saber?
Não ative "Incluir no balanceamento de memória" (a caixa de seleção) nas configurações do qube Windows. Este recurso do Qubes OS é atualmente instável no Windows e ativá-lo levará a falhas frequentes do Windows (BSODs).
## Contribuindo
Você pode começar dando uma estrela neste projeto! PRs de alta qualidade também são bem-vindos! Dê uma olhada na lista de tarefas abaixo se você está procurando coisas que precisam de melhoria. Outras melhorias, como formas mais elegantes de concluir uma tarefa, limpeza de código e outras correções, também são bem-vindas.
Muitos [GSoCs](https://www.qubes-os.org/gsoc/) relacionados ao Windows para os interessados.
O logotipo deste projeto é de Max Andersen, usado com permissão por escrito.
Este projeto é o produto de um esforço independente que não é endossado oficialmente pelo Qubes OS.
## Problemas Conhecidos das Ferramentas do Windows do Qubes
- O novo instalador do QWT desabilita a criação de disco privado por padrão
- Isso provavelmente se deve a preocupações com estabilidade?
- Não é possível criar uma TemplateVM
### Aviso sobre Drivers Xen Mais Novos (para sistemas operacionais mais antigos, como Windows 7)
No Qubes R4.1, as Ferramentas do Windows do Qubes vêm com drivers mais novos que funcionam melhor em versões mais novas do Windows, como Windows 10. Infelizmente, também foi documentado que esses novos drivers funcionam pior com versões mais antigas do Windows, como Windows 7. Idealmente, as correções deveriam ser consolidadas em um único driver, mas isso ainda não aconteceu.
O Windows 7 é um sistema operacional fora de suporte neste ponto, então isso é menos importante. No entanto, ainda existem algumas razões válidas para usar uma máquina Windows 7 (pelo menos isolada da rede) (por exemplo, para fins de pesquisa/teste técnico).
Há membros da comunidade documentando essa experiência (posso também atestar) no Fórum do Qubes OS e em algumas issues do GitHub do Qubes OS.
#### Tópicos da lista de discussão
- [qubes-users](https://groups.google.com/forum/#!topic/qubes-users/AdQcjg7XOFo)
- [qubes-devel](https://groups.google.com/forum/#!topic/qubes-devel/aCCGpYysZTQ)
#### Issues do GitHub do Qubes OS marcadas com Windows
- [`C: windows-tools`](https://github.com/QubesOS/qubes-issues/labels/C%3A%20windows-tools)
- [`C: windows-vm`](https://github.com/QubesOS/qubes-issues/labels/C%3A%20windows-vm)
## Tarefas- [x] Obter a capacidade de descompactar/inserir arquivo de resposta/recompactar de forma confiável para qualquer arquivo ISO contendo um sistema de arquivos UDF ([ISO 13346](https://en.wikipedia.org/wiki/Universal_Disk_Format), ou seja, o formato ISO do Windows)
- Os contêineres de arquivo ISO são essencialmente sistemas de arquivos de gravação única; você não pode simplesmente adicionar um arquivo a ele sem criar um novo ISO inteiro
- Abrir um arquivo ISO oficial do Microsoft Windows em um editor hexadecimal mostra evidências claras de que ele contém um sistema de arquivos UDF e menciona especificamente `ISO-13346` no topo
- Observe que o comando `file` pode identificar ligeiramente esses arquivos ISO como sendo o formato agora suplantado ISO 9660, mas isso provavelmente é porque "UDF compartilha o formato básico de descritor de volume com ISO 9660"
- Esta é a mesma maneira que a VMWare faz, como pode ser visto na parte "Creating Disk..." no vídeo abaixo (Pesquisas adicionais indicam que eles usam `mkisofs`)
- [ ] No futuro, seria melhor para o Qubes fazer isso [estendendo o admin principal para templates XML do libvirt](https://github.com/QubesOS/qubes-issues/issues/5085)
- Mais rápido
- Economiza armazenamento por não precisar criar um novo ISO
- [x] auto-qwt usa D:\\ fazendo o QWT colocar o perfil do usuário em E:\\; seria melhor tê-lo em D:\\ para que não haja uma lacuna estranha no meio
- [x] Fazer o arquivo de resposta do Windows usar automaticamente a chave de avaliação padrão para instalação do Windows sem codificar nenhuma chave de produto em nenhum lugar (o Windows é exigente quanto a isso)
- [x] Suporte ao Windows 8.1-10 (Nota: o QWT ainda não suporta oficialmente nenhum SO além do Windows 7, no entanto, tudo é funcional exceto o driver GUI)
- [x] Suporte ao Windows Server 2008 R2 ao Windows Server 2019
- [x] Suporte ao Windows 10 Enterprise LTSC (Canal de Suporte de Longo Prazo)
- Fornece atualizações de segurança por 10 anos, muito estável e menos inchado que o Windows 10 padrão
- [ ] Suporte ao Windows 11
- O Qvm-Create-Windows-Qube foi feito para ser independente de versão do Windows, o único trabalho real aqui é criar um arquivo de resposta (provavelmente apenas modificando ligeiramente o do Windows 10) e adicioná-lo ao `mido.sh` (o que não será um problema agora que estendi sua funcionalidade para baixar por trás da API de download de ISO gated da Microsoft)
- A verdadeira questão é se o Qubes Windows Tools funcionará no Windows 11
- A Microsoft tem um excelente histórico de compatibilidade com versões anteriores até no nível da API do kernel (porque as empresas adoram compatibilidade com versões anteriores), então é possível que funcione perfeitamente
- Ajuda necessária, testadores são bem-vindos
- [x] Provisionar Chocolatey
- [x] Adicionar uma opção para enxugar o Windows conforme documentado para o Qubes [aqui](https://www.qubes-os.org/doc/windows-template-customization/)
- [x] Tornar `windows-mgmt` isolado (air gapped)
- [x] Estender a funcionalidade do `download-windows.sh` (agora `mido.sh`) para baixar ISOs por trás da API de download de ISO gated da Microsoft
- [ ] Descobri recentemente que este é um projeto do Qubes [Google Summer of Code](https://www.qubes-os.org/gsoc/)
- [x] Adicionar testes automatizados
- Usando Travis CI para ShellCheck automatizado
- [x] Tabelas ACPI para buscar a licença do Windows embutida lá
- Encontrei mais informações sobre isso, deve ser muito simples apenas colocando a seguinte extensão de template jinja libvirt em `/etc/qubes/templates/libvirt/xen/by-name/<windows_qube>`
- Agradecimentos ao @jevank pelo [patch](https://github.com/QubesOS/qubes-issues/issues/5279#issuecomment-525947408)
- [ ] Portar para Python
- Isso parece desnecessário para scripts como `create-media.sh` onde o script Python estaria essencialmente apenas chamando programas externos
- Isso certamente seria adequado para o programa `qvm-create-windows-qube` no entanto
- Isso nos permitiria intercambiar dados entre Dom0 e a VM sem nos preocupar com o potencial de injeção de comandos ou outro Shellshock
- [ ] Selecionar automaticamente qual arquivo de resposta usar com base nas características do ISO do Windows obtidas do comando `wiminfo` (Atualmente em andamento; veja branch)
- `wiminfo` funciona exatamente como DISM no Windows
- [ ] Uma vez que o admin principal for estendido para permitir templates XML do libvirt (arquivos de resposta) se tornar possível (tarefa anterior, é uma questão bloqueante), também poderíamos ler com segurança as características do install.wim do ISO sem mesmo precisar montar o ISO como um dispositivo de loop usando [`libguestfs`](https://libguestfs.org)
- Também vi `libguestfs` sendo usado em QEMU/KVM, então é definitivamente um bom candidato para este caso de uso
- Observe que `libguestfs` não pode escrever (um arquivo de resposta) em um ISO, por isso não há sentido em usar esta biblioteca até que não precisemos mais criar um novo ISO inteiro para adicionar o arquivo de resposta a ele
- [x] Seguir a [documentação do Whonix](https://www.whonix.org/wiki/Other_Operating_Systems) para criar Windows-Whonix-Workstation
- [ ] Adicionar funcionalidade para `create-media.sh` adicionar MSUs (pacotes autônomos de atualização da Microsoft) para serem instalados durante a passagem do Windows PE (especificamente "Installing updates...") da instalação do Windows
- Poderíamos corrigir a instalação atualmente não funcional do QWT para ISOs antigos do Windows 7 SP1 e Windows Server 2008 (não R2) usando [KB4474419](https://github.com/QubesOS/qubes-issues/issues/3585#issuecomment-521280301) para adicionar suporte à assinatura de driver SHA-256
- A outra opção é fazer o Xen assinar seus drivers com SHA-1 também, o que outros fornecedores de driver parecem fazer, mas não é ideal do ponto de vista de segurança
- Permite eliminar o hack `allow-drivers.vbs` corrigindo o bug de instalação *automática* de driver SHA-256 em versões mais recentes do Windows 7 com KB2921916 (veja `allow-drivers.vbs` para detalhes)
- Este bug do Windows foi intencionalmente corrigido e não corrigido pela Microsoft na tentativa de forçar empresas a atualizar para o Windows 10
- Corrigir alguns bugs de segurança do Windows?
- Corrigir BlueKeep para Windows 7 pronto para uso
- O ISO base do Windows Server 2008 R2 também é vulnerável a ETERNALBLUE e BlueKeep pronto para uso
- Provavelmente não vale a pena entrar nisso, os usuários devem apenas atualizar a VM ao criá-la
- [ ] Modo headless
- Ajuda necessária
- Qual mecanismo existe para conseguir isso no Qubes? Algo no agente/daemon GUI do Qubes?
- [ ] Empacotar este projeto para que sua entrega possa ser mais simplificada e segura através do `qubes-dom0-update`
- [ ] Adicionar suporte ao [ReactOS](https://reactos.org) como uma alternativa de código aberto ao Windows
- Isso seria bom pelo menos até que um [template ReactOS seja feito](https://github.com/QubesOS/qubes-issues/issues/2809)
- Talvez os desenvolvedores do ReactOS queiram usar isso para desenvolver o ReactOS
- Ou talvez apenas adicionar ReactOS como um template (fora deste projeto)
- No entanto, alguém teria que manter este template
- Além disso, pode não fazer muito sentido se os drivers QWT/Xen não funcionarem
- Pelo menos para recursos básicos como copiar/colar e transferência de arquivos
- Interesse de ambos os lados
- [Qubes OS](https://github.com/QubesOS/qubes-issues/issues/2809)
- [ReactOS](https://reactos.org/forum/viewtopic.php?p=126279#p126279)
- "uma das ofertas mais interessantes de colaboração que recebemos até hoje"
- [Instalações não assistidas do ReactOS](https://reactos.org/wiki/Create_an_unattended_Installation_CD) parecem ser diferentes das do Windows
- [ ] A única questão bloqueante que encontrei é o tipo de controlador SCSI do QEMU
- O Qubes poderia estender o admin principal para suportar a configuração do controlador SCSI no template libvirt
- Esta solução parece melhor porque de acordo com [este](https://github.com/QubesOS/qubes-issues/issues/3651#issuecomment-420914348) comentário, também corrigiria vários outros SOs cujo instalador não suporta nosso controlador SCSI atual
- O ReactOS poderia adicionar suporte ao nosso tipo atual de controlador SCSI
- [Issue ReactOS](https://reactos.org/forum/viewtopic.php?t=17529)
- [Issue Qubes OS](https://github.com/QubesOS/qubes-issues/issues/3494)
- Expor um controlador SCSI diferente não expande a superfície de ataque porque o QEMU é executado em um domínio stub do Xen
- O ReactOS está em alpha, então para a maioria dos usuários isso provavelmente não será viável agora
- Ajuda necessária
- Nenhum cronograma para isso atualmente
## Objetivo Final
Ter um recurso similar (ou superior) ao recurso [Windows "Easy Install" da VMWare](https://www.youtube.com/watch?v=1OpDXlttmE0) no Qubes OS. A solução da VMWare é proprietária e só está disponível em seus produtos pagos.
O VirtualBox também tem [algo similar](https://blogs.oracle.com/scoter/oracle-vm-virtualbox-52:-unattended-guest-os-install) mas não é tão rico em recursos.