Access Tor with ProtonVPN

December 04, 2018

ProtonVPN is a secure VPN based out of Switzerland that does not record any logs, meaning it does not track or record any of your internet activity. This makes it a very good choice for those of us who are security conscious and enjoy privacy on the web.

Even better than that, though, is that several of the ProtonVPN servers integrate directly with the Tor network. This means you can simply connect to one of the Tor VPN servers from the ProtonVPN app and access onions straight from your favourite browser.

Unfortunately, to be able to use the Tor servers with ProtonVPN, you’ll need at least a ProtonVPN Plus subscription. But for the convenience of accessing Tor and other features that ProtonVPN provides I think this is a great deal. So go ahead, grab a subscription, and install ProtonVPN on your machine.

Connecting to the Tor Network

Once you’ve downloaded the ProtonVPN app to your computer (you will need to configure your VPN manually or use protonvpn-cli if you are running Linux), go ahead and open the app and login with your ProtonVPN account. This will open up a list of all the VPN servers you can connect to.

To connect to the Tor network simply find a server that has an onion icon next to it (the server will also be suffixed with “-TOR”). There are currently Tor servers in the USA, Hong Kong, and Switzerland. I’m going to connect to CH#9-TOR for this guide.

Tor servers are marked with an onion icon and suffixed with "-TOR"

After connecting to a Tor server head on over to https://check.torproject.org to confirm that you are definitely connected to the Tor network. If you are connected, you should get a page similar to the screenshot below.

We're connected to the Tor network, yay!

Configuring Firefox

If you’re running Firefox (strongly recommended), we need to configure our browser to be able to open onion links. To do this, open your browser and head on over to about:config and click “I accept the risk!” to see a list of flags we can toggle.

Search the list for “onion” and an option labeled network.dns.blockDotOnion should appear. Set this option to false to enable resolving of onion links and restart your browser.

Set network.dns.blockDotOnion to false to allow onion links to resolve

Accessing Onions

Now that your browser is configured to resolve onions, let’s go ahead and test it out. You can find a list of onion links here. Open one of them up, such as DuckDuckGo, and it should open the web page correctly.

Accessing DuckDuckGo via its onion link

If all has gone well you should now be seeing the DuckDuckGo search page. Now you’re all set to access the Tor network straight from your own browser!

Note: Be extra cautious when accessing Tor hidden services or the Tor network outside of the Tor Browser or TAILS and ensure you take extra steps to secure your browser with extensions such as NoScript.

Help! I’m on macOS and can’t resolve onions even after configuring my browser!

If you’re running macOS you might have run into an issue where you are still not able to resolve onion links. This is because the operating system appears to simply ignore resolving onion links. The fix for this is fairly simple, you just need to open up Terminal and run the following commands.

First create a new directory called /etc/resolver:

sudo mkdir /etc/resolver

Next, we need to create a file inside this directory called onion with the contents nameserver This will allow onion links to resolve correctly.

sudo bash -c "echo 'nameserver' > /etc/resolver/onion"

Now try and open up an onion link and it should resolve correctly!