Since then, I’ve always wanted to run that server on my android phone(maybe the client too just not on my phone though 😉 however, at the time, Python wasn’t behaving too nicely on every android model out there. A few years pass by and we have a solid Python build compatible with most devices out there; this regained my interest and today I will show you one way of running any type of server from your mobile device using your mobile data.
Before we begin, let’s analyze exactly what we are trying to do. We want to run a server from our phone. As for a local server, maybe even a stable Wi-Fi server, it would be a lot easier. That’s not what we want though, we are looking for a remotely accessible server, one where we can receive shells. The main issue with that is port forwarding; afaik most mobile providers will not allow you to forward ports since there’s a lot of devices connected and could cause many conflicts. Even if they do allow it, its unlikely you’ll be able to forward “unsuspicious” ports such as 80 or 443…
Let’s introduce a virtual private network (VPN) to the mix. This part breaks down to 2 options: either setup your own VPN at home or work; or use a commercial service, such as AirVPN – make sure it allows port forwarding! Once that’s taken care of, then we’ll setup a dynamic DNS solution to keep our VPN pointed at the right IP address. If you have a stable IP address from your VPN, then you don’t need this step. With the networking side taken care of, now all we have to do is get Python setup on our device and run the script!
[ TODO ] This article will be expanded soon!
Click to download: [ DOWNLOAD ]
Check out the video for step by step instructions: