Network-wide Tor SOCKS Proxy

Published on Fri, 17 July, 2020 | 200 words
Tags: tor privacy networking howto

Doing Tor on the web is simple - you basically install the tor package from most distributions’ repositories and configure the web browser to use 127.0.0.1:9050 as a SOCKS5 proxy. But what if, like me, you have half a dozen machines on the network that all need web access over Tor? What if some of them are embedded devices that have no available Tor client? Or what if you simply feel it’s more efficient to have one Tor client for the whole network rather than one per host?

It’s actually really simple, but I found it quite hard to google the problem. To allow access to Tor to non-localhost hosts, look in the file

/etc/tor/torrc

and add the line

SOCKSListenAddress [ip_address]

where [ip_address] is the IP address of the machine on which Tor is installed. Then configure access with one of the following

SOCKSPolicy accept 192.168.0.0/16 # Allow access to any host on 192.168.x.x
SOCKSPolicy accept * # Allow access to absolutely everything

Save the file, and do

sudo service tor status

to restart Tor, and it should allow any web browser on the local network to use it as a SOCKS5 proxy.