Show HN: SSH-hypervisor – like SSH, but each user gets their own microVM
21 hours ago
- #ssh
- #hypervisor
- #firecracker
- The author created a hypervisor that spins up a Firecracker microVM for each SSH login, greeting users with a fresh or restored VM instance.
- The project involved setting up a custom SSH server in Go, integrating Firecracker for VM management, and configuring networking with TAP devices and bridges.
- Debugging challenges included SSH connectivity issues due to lack of entropy in the VM, requiring the addition of a virtio-rng device or using rngd as a workaround.
- The author built a custom Linux kernel from Amazon Linux to ensure compatibility with Firecracker, resolving boot issues related to root device mounting.
- The final product is a static binary that dynamically provisions VMs on SSH login, with features like snapshotting and internet access for VMs via iptables rules.
- The project highlights the complexities of VM management compared to containers, emphasizing the need for sysadmin skills in setting up virtualized environments.