Historical guide: This 14-part series documents the Raspberry Pi, Raspbian Jessie and Tor setup I used in January 2016. The original preamble was marked as an incomplete draft.

Debian 8 Jessie is obsolete, Tor retired the v2 onion-service system used here in 2021, and Raspberry Pi OS, Apache, Samba, SSH and Tor defaults have moved on. Treat this as an archive of what I built, not as current deployment or security guidance. If you’re doing this today, use a supported operating system and the current Tor documentation.

Objective: Host a darknet website on a Raspberry Pi.

Kickass Darknet Web Server TOC

Why host an onion service?

It’s as cheap as free is why! An onion address isn’t a normal DNS domain, but it lets me reach my self-hosted site through Tor without renting another conventional domain name from a registrar. Rent money is dead money!

Isn’t the darknet only for [insert strange and/or illegal things]?

That’s what tends to make headlines. Onion services can host ordinary lawful content too. Take this website for example: would mainstream media ever have you fear the darknet by talking about this website? It’s very unlikely. The sensationalist media is just that, sensationalist!

Take back the darknet!

The practical goal is simple: learn how Tor onion services work by self-hosting ordinary content on a Raspberry Pi. Join us!

Requirements:

  • 1x Raspberry Pi with an ethernet port
  • 1x 4GB or larger MicroSD card, any class/speed
  • Ethernet (Wi-Fi is not covered in this guide)
  • Raspbian Jessie Lite (Nov 2015), the historical image used for this project
  • Private key for a vanity darknet address (optional)

Sources

Advance onward to part 2 or use the table of contents above to navigate.