Sometimes we need to test something on another machine. It can be an application, script, service, whatever. Of course, for a professional a QA testing case it is better to buy hardware or cloud resources. Small tasks aren't always worth a developer's time to register and credit card and/or phone verification.
Another market target - kids, they don't have credit cards and can't pay online but sometimes wanna learn something cool outside locked down school and home environments. "Oh buddy, do you want a computer? We will buy you an Android smartphone or Chromebook next month, 'cause everybody uses them!" Escape from vendor-locked environments designed with limited features for keeping paying customers can be tricky.
Hey, spammers and miners! This post isn't for you, please look elsewhere. Also, any of the services below can be a honeypot.
- OS: Kali Linux
- Free storage: 16 GB shared, 128 MB personal (encrypted file system), read-only rootfs
- Connectivity: 500Mbps
- Location: Germany, Netherlands, Finland
Looks like perfect place for "research and learning", the goal is defined on website. File system is quite limited: I've tried to create a 2 GB file on tmpfs and kicked out immediately. Speed test feels solid: 100 Mbps up, ~500 Mbps down. GCC, Ruby, Node.js, Python, Rust are pre-installed. There's probably some RAM limitation 'cause xz archive unpack failed with
zsh: killed error. Server alive ~24 hours after login, also possible to save the SSH key and re-login later.
- OS: Centos 7, Windows 7 & 2008, Kali Linux and Caine Forensics
- Free storage: 2.2 GB
- Connectivity: unknown, many websites are blocked
- Location: UK
After registration on website, the user can select an OS and wait some time when the virtual machine will boot and/or system resources will be available. SSH and VNC connect options are available, plus recovery with webVNC. Looks good for small testing, especially for Windows applications, despite it all - I got feelings this project was abandoned several years ago.
- OS: Ubuntu 20.04
- Free storage: 20 GB
- Connectivity: 1 Gbps
- Location: Germany
To get an SSH access you should register on website and sent a paper postcard to physical Germany address. Post card should include a registration code from the website - just like typical user registration with post instead of email.
Pre-installed software: MySQL (2 DBs per user), Postfix, MySQL, PHP, Python. 20 GB should be more than enough for a micro lab.
- OS: Ubuntu, Windows, macOS
- Free storage: ~60 GB
- Connectivity: 1 Gbps
- Location: US
SSH not available out-the-box on GitHub Actions, this failure can be fixed by third-party extensions like Debugging with tmate and Debugging with ssh. After successful connection you get a temporal (6 hours) server with 2vCPU and 8GB RAM, not too powerful but definitely good enough for experiments.
Finally, I'm very thankful for the resources above: you can set up or test something flashy and forget about it after 30 minutes, this is very cool. Big projects always begin for small experiments. Happy hacking!