Featured image of post Build a Personal Proxy Server w/ Google App Engine & Python Flask

Build a Personal Proxy Server w/ Google App Engine & Python Flask

(Because VPNs Are Overrated)

How to Build Your Own Personal Proxy Server Using Google App Engine (Because VPNs Are Overrated)

So, you’re minding your own business, trying to access a website, and BAM!

You get hit with a “This content is not available in your region” message.

Rude.

What if I told you there’s a way to bypass these ridiculous geoblocks without forking out cash for a VPN?

nd what if I told you that way involves tricking the internet into thinking you’re a Google server?

Intrigued?

Good.

Let’s build a personal proxy server using Google App Engine—FOR FREE! 🚀

Why Should You Care?

  1. VPNs cost money. (And you like free stuff.) (I like free stuff)
  2. Some VPNs slow down your connection. (Ever tried streaming a movie on a potato? Same energy.)
  3. You get to feel like a hacker. (Even though this is legal… mostly.)

What You Need

  • A Google Cloud account (don’t worry, they have a free tier—Google’s still nice like that)
  • Basic HTML & Python skills (or at least the ability to copy and paste code like a boss)
  • The willingness to mess with Google’s infrastructure for your personal gain 😏

Step 1: Sign Up for Google Cloud

Head over to Google Cloud and make an account.

You get $300 in free credits, but we’re going to use the Google App Engine free tier, so you won’t need to spend a dime.

Once you’re in, create a new project. Call it something cool like OperationUnblockEverything or just ProxyProject if you’re boring.


Step 2: Install the Google Cloud SDK

We need Google’s magic toolkit to deploy our app. Install it from here. Once it’s installed, run:

1
gcloud auth login

This lets Google know you’re legit (or at least good at following instructions).


Step 3: Create Your Proxy App

Now, we’re going to make a tiny web app that:

  • Takes a URL input
  • Loads that page inside an iframe (so sneaky 😏)
  • Runs on Google App Engine, tricking websites into thinking you’re browsing from a Google data center

Folder Structure

1
2
3
4
/project
    /app.yaml
    /main.py
    /index.html

app.yaml (Tells Google how to run the app)

1
2
3
4
runtime: python39
entrypoint: gunicorn -b :$PORT main:app
env_variables:
  GOOGLE_APPLICATION_CREDENTIALS: 'path_to_your_service_account.json'

main.py (Handles Requests Like a Boss)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
from flask import Flask, render_template, request

app = Flask(__name__)

@app.route("/", methods=["GET", "POST"])
def index():
    url = request.form.get("url") if request.method == "POST" else None
    return render_template("index.html", url=url)

if __name__ == "__main__":
    app.run(debug=True)

index.html (Your Slick User Interface)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Personal Proxy Server</title>
</head>
<body>
    <h1>Bypass the Internet Like a Pro</h1>
    <form action="/" method="POST">
        <input type="text" name="url" placeholder="Enter URL" style="width: 300px;">
        <button type="submit">Go</button>
    </form>
    
    {% if url %}
        <iframe src="{{ url }}" style="width: 100%; height: 600px;"></iframe>
    {% endif %}
</body>
</html>

Step 4: Deploy Your Proxy App 🚀

Now comes the fun part. Open your terminal and deploy this bad boy:

1
gcloud app deploy

After a few seconds, Google will give you a public URL where your proxy is running. Copy it, bookmark it, and flex on your friends.


How This Works (a.k.a. Why This Is Genius)

Normally, when you visit a blocked site, it sees your IP address and goes, “Nope, not today!” However, with this setup:

  1. Your browser talks to Google App Engine.
  2. Google App Engine loads the site on your behalf (because Google is Google and nobody blocks Google).
  3. The website happily serves the content thinking you’re a Google server.
  4. You get the page in an iframe—BOOM, access granted! 🚀

Why Use This Over a VPN?

  • It’s FREE. No subscriptions. No shady VPN companies logging your data.
  • It’s FAST. You’re piggybacking off Google’s infrastructure.
  • It works almost everywhere. Unless your country blocks Google itself (looking at you, North Korea). 😬

More on Geoblocking (a.k.a. The Enemy)