Most guides online assume you need a server to host a Tor (.onion) site.
You don’t.
You can run a fully working .onion service on a normal computer — no domain, no VPS, no public IP.
Here’s a minimal setup.
1. Install Tor
On Ubuntu:
apt-get install tor
2. Run a Local Web Server
You just need something listening on localhost.
Example (Flask):
from flask import Flask
app = Flask(__name__)
@app.route("/")
def index():
return "hello world!"
if __name__ == "__main__":
app.run(host="127.0.0.1", port=1234)
Start the server:
python app.py
3. Configure Tor Hidden Service
Edit:
/etc/tor/torrc
Add:
HiddenServiceDir /var/lib/tor/hidden_service
HiddenServicePort 80 127.0.0.1:1234
4. Start Tor
service tor start
5. Get Your .onion Address
After Tor starts, open:
/var/lib/tor/hidden_service/hostname
You’ll see something like:
abcdefgh12345678.onion
That’s your site.
Notes
- The service runs entirely on your local machine
- No domain registration is required
- No public exposure — only accessible via Tor
Why This Is Interesting
This setup lets you:
- Host a website without revealing your IP
- Avoid traditional hosting entirely
- Experiment with anonymous services
It’s a surprisingly powerful system for something that runs on a single machine.























