• 1 Post
  • 5 Comments
Joined 3 months ago
cake
Cake day: August 5th, 2024

help-circle




  • It’s easy. Just edit your Tor configuration file (torrc) to enable an onion service. This one forwards from the onion service on port 80 (so users don’t have to specify a port number in the URL) to a local HTTP server running on your machine on port 8000:

    HiddenServiceDir /var/lib/tor/hidden_service/
    HiddenServicePort 80 127.0.0.1:8000
    

    Change the directory path based on your operating system. Specify a directory that doesn’t exist yet so Tor can set the correct permissions on it. Next, start or restart Tor. Then just read the onion service’s hostname in the hostname file created in that hidden services directory.

    You can then run any HTTP server on localhost:8000 and anyone connecting to your onion service can access it. In Python this might be as simple as python3 -m http.server --bind localhost 8000 --directory . to share the files current directory (but be aware that there are some security considerations, like symbolic links, to be aware of. Just use this for testing.) For production servers you will want a “real” http server.