Idea of Making mini AWS
How the Idea Was Born
Back in my third year of engineering, we were working on our minor project. Like every engineering student, we had two projects—minor and major. Our minor project was a management application, and while it was fine, my real interest had always been DevOps.
At that time, I didn’t even know the word “DevOps” properly, but I was constantly tinkering with Linux, breaking things, fixing things, reinstalling stuff, and trying to run random servers. One of the biggest experiments I did was hosting a Minecraft server on my own. Running the server wasn’t the hard part—getting my friends to join was.
The Networking Rabbit Hole
I hosted the server on my local machine and then thought, “Okay… now how do my friends connect?” That single question dragged me deep into the world of networking.
I started learning about:
- Private IPs
- Public IPs
- Subnets
- Port forwarding
- NAT
- ISP restrictions
Most of it went over my head at the time, but I kept digging because all I wanted was one simple thing: play Minecraft with my friends.
I figured out that port forwarding should solve the problem. But my ISP was blocking it because they didn’t provide dedicated public IPs to everyone (which I didn’t understand back then). So again, nothing worked.
Discovering AWS (Accidentally)
Then I found a YouTube video titled something like:
“Want to play Minecraft with your friends? Host your own server!”
The creator was hosting the server on AWS EC2. That was the first time I heard of AWS.
I created a free-tier account, launched a t2.micro instance, and hosted my server there. It worked… sort of. The server ran at something like 2 FPS. But at least it was public.
The Reverse Tunnel Hack
Still curious, I kept looking for ways to expose my PC to the internet without port forwarding and for free.
Then I came across a guy hosting his website from his home PC using… a reverse SSH tunnel to an AWS instance. No VPN. Just pure chaos.
So I did the same. I created an EC2 instance, set up a persistent reverse tunnel, and wrote a small service that auto-connected whenever my PC booted.
Then I hosted my Minecraft server locally, gave my friends the EC2 public IP, and…
IT WORKED. YAAAAAAAAA!
This was the moment everything changed. I had accidentally learned:
- Server management
- Networking fundamentals
- Cloud basics
- AWS EC2
All because I just wanted to play Minecraft.
From Minecraft Server to “Mini AWS”
After that success, I got obsessed.
“How does AWS actually work behind the scenes? How can I run my own little cloud?”
I explored:
- LXC containers
- Proxmox
- Bare-metal hypervisors
- Virtual machines
- Containerized workloads
With LXC, I could host containers, but each would need its own tunnel. Proxmox opened a whole new world—VMs, containers, flexibility, and real “cloud-like” behavior.
That’s when the idea hit me:
What if I build my own mini AWS as my major project?
So I chose this as my final-year major project idea and started building it from scratch.