Create a Proxmox Thin Client with Almost Any Hardware
#ProxMox #Hypervisor #ThinClient #SPICE
Full steps can be found at https://i12bretro.github.io/tutorials/0752.html
Background
I was looking for a simple and effective way to utilize cheap thin client hardware to connect to Proxmox VMs. After looking at several distros and solutions that don't support the SPICE protocol, I came across this method using a Raspberry Pi or really any hardware than can run Linux. The original idea and steps for this process, as well as the author of the script used is apalrd. Check out his blogpost (https://www.apalrd.net/posts/2022/raspi_spice_login/) and video (https://www.youtube.com/watch?v=sNgmMxrnLn8) outlining how he approached the problem and how this setup came to exist.
The Hardware
The device I used in this video is a HP t520 thin client I picked up used for about $27. It sports a 2 core/2 thread AMD GX-212JC @ 1.20 GHz, 4GB DDR3L RAM and a 16GB M.2 SSD.
Things You Will Need
- A USB flash drive, at least 8 GB https://amzn.to/3wkR5ju | https://amzn.to/3qkrJ1p | https://amzn.to/3Nhu9b9
Preparing the Installation Media
01. Download the Debian .iso file https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-11.3.0-amd64-netinst.iso
02. Download the Ventoy installer https://www.ventoy.net/en/download.html
03. Extract the downloaded .zip file
04. Run Ventoy2Disk.exe
05. Plug in a USB flash drive at least 4 GB in size
06. Click the refresh icon
07. Select the flash drive from the device dropdown
08. Click the Install button
09. After the installation completes, copy the downloaded Debian .iso to the Ventoy partition
10. Safely remove the USB flash drive
11. Plug the flash drive into the target thin client device
Debian Installation and Setup
01. Power on the thin client device and start pressing Delete
02. When the install dialog displays, arrow down to Install ≫ Press Enter
03. Select a language ≫ Click Continue
04. Select a Location ≫ Click Continue
05. Select a keyboard layout ≫ Click Continue
06. Enter a hostname for the VM ≫ Click Continue
07. Enter a Domain name or leave it empty ≫ Click Continue
08. Leave the root password blank ≫ Click Continue
09. Enter the full name for the new user ≫ Click Continue
10. Enter the username for the new user ≫ Click Continue
11. Enter and confirm a password for the new user ≫ Click Continue
12. Select a timezone ≫ Click Continue
13. Select Guided - user entire disk ≫ Click Continue
14. Select the target disk ≫ Click Continue
15. Select All files in one partition ≫ Click Continue
16. Select Finish partitioning and write changes to disk ≫ Click Continue
17. Select Yes to confirm writing the changes ≫ Click Continue
18. Wait for Debian to copy and install files
19. When prompted, select Yes to enable a network apt mirror ≫ Click Continue
20. Select a country to use for the apt mirror ≫ Click Continue
21. Select a mirror from the list ≫ Click Continue
22. Setup a HTTP proxy if necessary ≫ Click Continue
23. Select No to participating in package survey ≫ Click Continue
24. On the Software selection menu, deselect GNOME and select LXDE and SSH Server ≫ Press Enter to Continue
25. Select Yes to install GRUB ≫ Click Continue
26. Select /dev/sda for the boot loader location ≫ Click Continue
27. After the bootloader is installed select reboot to finish the installation
28. Welcome to Debian 11
Proxmox Configuration
01. Open a web browser and navigate to the Proxmox Web UI and log in
02. Select Datacenter from the left navigation menu
03. Expand Permissions in the left sub-navigation menu ≫ Users
04. Click the Add button
05. Complete the Add User form as follows:
User name: virt-viewer
Realm: Proxmox VE authentication server
Password: ≪%password%≫
Confirm password: ≪%password%≫
06. Click Add to complete adding the user
07. Click Permissions in the left sub-navigation menu
08. Click Add ≫ User permission
09. Select /vms/≪%vm id%≫ from the Path dropdown
10. Select the virt-viewer user from the User dropdown
11. Select the PVEVMUser role from the Role dropdown
12. Click Add to complete the permissions setup
13. Expand the node ≫ Select the target VM from the left navigation panel
14. Select Hardware from the left sub-navigation menu
15. Double-click Display ≫ Set the value to SPICE
NOTE: If the VM guest is Windows based, it is required to install the virtio drivers https://pve.proxmox.com/wiki/Windows_VirtIO_Drivers#Installation
Configuring the Thin Client Script
01. Log into Debian thin client device using the username and password created during the install
....Full steps can be found on GitHub [link at the top]
### Connect with me and others ###
★ Discord: https://discord.com/invite/EzenvmSHW8
★ Reddit: https://reddit.com/r/i12bretro
★ Twitter: https://twitter.com/i12bretro