Menjalankan Windows 11 (TPM Dan Secure-Boot) Di KVM

Cara mengaktifkan TPM dan secure-boot untuk menjalankan Windows 11 di QEMU/KVM.

Microsoft memperketat keamanan dari Windows 11 dengan menambahkan TPM dan Secure-Boot sebagai kebutuhan minimal yang harus dipenuhi agar kita dapat menginstall Windows 11 baik itu bare-metal ataupun melalui virtualisasi.

Artikel ini membahas bagaimana mengaktifkan TPM dan Secure-Boot untuk Windows 11 di QEMU virtual machine (VM).

Prerequisites / Prasyarat

Sebelum memulai dan melangkah lebih jauh, Anda perlu memenuhi persyaratan berikut untuk dapat mengikuti langkah-langkah dari artikel ini:

  • Memiliki ISO Windows 10. Anda dapat mengunduh ISO Windows 11 official dari situs resmi milik Microsoft.
  • Memiliki dan mengunduh virtio driver untuk Windows 11 yang nantinya digunakan untuk menginstall driver pada guest machine (seperti Ethernet controller).
  • Host yang sudah dikonfigurasi dan dapat menjalankan KVM dengan baik sebelumnya, termasuk program GUI virt-manager (Virtual Machine Manager).

Di artikel ini, KVM host saya menggunakan Arch Linux (BTW 😂), namun langkah-langkah yang diperlukan agar dapat menjalankan Windows 11 menggunakan KVM sebenarnya tidak jauh beda dengan distro Linux lainnya.

Install TPM pada Host KVM

Kita perlu menginstall software swtpm di KVM host supaya KVM host dapat melakukan simulasi TPM.

Karena swtpm sudah tersedia di Arch Linux Community package, proses installasi cukup dengan menjalankan perintah pacman -S swtpm. Jika Anda mengunakan distro lain, carilah informasi cara menginstall swtpm di halaman dokumentasi dari distro favorit Anda.

Sebagai contoh, jika KVM host Anda menggunakan Ubuntu, Anda perlu menambahkan PPA milik Stefan Berger’s PPA repository sebelum melakukan installasi mengunakan apt install swtpm-tools.

Untuk mengecek apakah swtpm sudah berhasil diinstall dan melihat versi yang digunakan, cukup jalankan perintah swtpm --version:

1TPM emulator version 0.7.3, Copyright (c) 2014-2021 IBM Corp

Buat Windows 11 di KVM menggunakan virt-manager

Buatlah VM baru untuk Windows 11 dari aplikasi / program GUI virt-manager, pada bagian CDROM, gunakan Windows 11 ISO yang sudah didownload dari situs resminya, tentukan alokasi CPU, RAM dan kapasitas penyimpanan sesuai kebutuhan dan kemampuan KVM host Anda. Dan pada bagian akhir wizard configuration, centang “Costumize configuration before install”.

Konfigurasi virtualiasi hardware Windows 11

Supaya Windows 11 dapat berjalan dengan mulus di KVM, kita perlu membuat beberapa perubahan konfigurasi hardware dari virt-manager.

  • Klik pada bagian Overview, ubah opsi Firmware ke UEFI x86_64: /usr/share/edk2-ovmf/x64/OVMF_CODE.secboot.fd (atau pilih firmware yang mengandung kata UEFI OVMF_CODE atau secboot).
  • Klik pada menu Add Hardware dan tambahkan TPM. Pastikan opsi Type adalah Emulated, kemudian ubah opsi Model dari CRB menjadi TIS, dan opsi Version menjadi 2.0.

Menu konfigurasi virt-manager
Menu konfigurasi virt-manager

  • Klik pada bagian Network interface dan ubah Device model dari e1000e menjadi virtio.

Catatan: Jika Anda mengalokasikan virtual CPU (vCPU) lebih dari satu, pastikan topologi CPU yang Anda konfigurasi mengunakan 1 socket. Hal ini dikarenakan Windows Home Edition hanya membaca maksimal 1 CPU socket, sedangkan Windows Pro Edition maksimal 2 CPU socket. Untuk informasi lebih detail bisa dilihat di chart perbandingan edisi Windows.

Jadi bermainlah pada CPU cores dan thread, karena rata-rata consumer hardware hanya memiliki 1 CPU socket (kecuali Anda menggunakan mid-range / high-end server).

Install Windows 11

Jalankan VM dan ikuti proses installasi Windows 11 hingga proses initial Windows setup. Pada tahap initial Windows setup, Anda akan mendapati bahwa VM Windows Anda tidak dapat terhubung ke internet.

Hal ini diebabkan karena Windows 11 belum dapat mendeteksi Network Interfacenya. Sementara, abaikan dulu masalah tersebut karena kita bisa memperbaikinya nanti.

Windows 11 install no internet connection
Windows 11 install no internet connection

Klik “I don’t have internet” kemudian “Continue with limited setup” dan selesaikan initial setup hingga kita berhasil login masuk ke Desktop.

Catatan: Di versi Windows terbaru (yang terakhir saya coba di iso Win11_23H2_English_x64v2.iso), tombol “I don’t have internet” tidak tampil.

BypassNRO.cmd
BypassNRO.cmd

Untuk menampilkannya, tekan tombol SHIFT + F10. Untuk menampilkan command prompt dan Ketikan OOBE\BypassNRO.cmd lalu tekan ENTER. Setelah itu komputer akan restart dan tombol “I don’t have internet” akan muncul.

Install virtio driver pada VM Windows 11

Setelah proses installasi selesai, matikan dulu VM Windows 11 supaya kita bisa memperbaiki permasalahan pada **Ethernet Driver**nya. Kemudian kembali ke konfigurasi VM di virt-manager, pilih SATA CDROM 1, dan ubah Source path dari yang semula adalah ISO Windows 11 menjadi lokasi tempat Windows 11 virtio drivers dengan mengeklik tombol Browse dan pilih Windows 11 virtio drivers yang sudah Anda download dan simpan di KVM host Anda.

Sekarang, nyalakan kembali VM Windows 11. Setelah berhasil login ke Desktop, klik pada icon Search dari task bar, dan masukkan kata kunci “Device Manager”. Anda akan menemukan program dengan nama “Device Manager”, jalankan program tersebut.

Menu pilihan virtio drivers ISO
Menu pilihan virtio drivers ISO

Di program “Device Manager”, klik kanan pada Ethernet adapter dan pilih update driver. Pilih menu “Browse my computer for drivers” kemudian pilih Windows 11 virtio drivers ISO dari CDROM, centang “Include subfolders”, klik tombol “Next” dan setelah itu seharunya driver ethernet adapter sudah berhasil diinstall. Cek koneksi internet di VM Windows 11 Anda, seharusnya Anda sudah terhubung ke internet dari VM Windows Anda.