I'm not talking about Amazon AWS or Azure - more like DigitalOcean or Vultr or one of the small VPS companies (there are hundreds) that allow you to create a VM, then upload and boot off your own ISO. Typically, you're running on top of KVM, which provides full hardware virtualization.
While these providers do give you a console, to be really useful I think I'd want to be able to access my OS over the net (otherwise, why not just run it at home).
So I started making a list of things I'd need:
- ISO9660 support. I'm not aware of a public provider that offers floppy support.
- A tcp/ip stack. I suppose in theory I could just use udp. Either ipv4 or ipv6 - I don't know which is simpler.
- Support for VIRTIO network drivers.
- Probably support for VIRTIO disk drivers if I want to use the provided hard drive.
- If I use the provided disk, a filesystem.
- Since it's on the network, I'd need an encryption library, otherwise you're talking to the OS in plain text over the public internet. I don't think the entirety of something like OpenSSH is needed - for example, I could use a pre-shared key instead of negotiating public keys.
- I could live with a single user, but that user would need to have a password or other authentication mechanism.
Am I mad? Did I forget anything?