Everything In Between

If your project so much as pretends to have a profit motive, I will tell you to go fuck yourself and your project.

One Minute Mac Tip: Open multiple Tor circuits in the new TorBrowserBundle 3.5 for Mac OS X

leave a comment

Earlier this month, the Tor Project released a new version of the Tor Browser Bundle, an easy-to-use anonymity-enhancing Web browser. In a previous post, I discussed how to use the Tor Browser Bundle (TBB) for other applications on your computer, such as Safari and even Mail.app. This post has updated instructions for doing some of the “fancy” things that the new TBB no longer provides a graphical user interface to do.

You should already have the newest Tor Browser Bundle installed on your Mac and have followed the steps in “HowTo: Use Tor for all network traffic by default on Mac OS X” for configuring a new Network Location to use Tor.

As of version 3.5, the Tor Browser Bundle on Mac OS X no longer ships with Vidalia, the GUI that lets you configure your connection to the Tor network. Instead, this is packaged as a Firefox add-on called TorLauncher. This add-on doesn’t have any GUI yet, but since it’s still a full-fledged Tor, you can access its advanced features using Tor’s configuration file.

From the Finder, right-click (or control-click) on the TorBrowserBundle application and select “Show Package Contents.” A window will open showing the folders and files that make up the application bundle. The file we’re looking for is called torrc-defaults, which the TorLauncher uses to configure the Tor (essentially the equivalent of Vidalia’s old “Settings” screen). That file is located in Data/Tor/torrc-defaults, as shown below:

TorBrowserBundle torrc-defaults in Mac OS X Finder

Open the torrc-defaults file with any text editor (such as TextEdit). Its contents are a tor configuration file, and they’re pretty simple:

# If non-zero, try to write to disk less frequently than we would otherwise.
AvoidDiskWrites 1
# Where to send logging messages.  Format is minSeverity[-maxSeverity]
# (stderr|stdout|syslog|file FILENAME).
Log notice stdout
# Bind to this address to listen to connections from SOCKS-speaking
# applications.
SocksListenAddress 127.0.0.1
SocksPort 9150
ControlPort 9151
CookieAuthentication 1

Using configuration directives in this file, you can tell Tor to, for example, use a specific country as an exit node so that you appear to always be accessing websites from the country you specify (useful for avoiding country restrictions on video content). You can also use it to open multiple Tor circuits for privacy reasons, as discussed in my previous post. That’s what we’re going to do.

To set up multiple circuits, simply delete the line that starts with SocksListenAddress and replace it with a line that reads like SocksPort 9050 (where 9050 is whatever port you want to use as your additional circuit). Here’s what my torrc-defaults looks like:

# If non-zero, try to write to disk less frequently than we would otherwise.
AvoidDiskWrites 1
# Where to send logging messages.  Format is minSeverity[-maxSeverity]
# (stderr|stdout|syslog|file FILENAME).
Log notice stdout
# Bind to this address to listen to connections from SOCKS-speaking
# applications.
SocksPort 9048
SocksPort 9049
SocksPort 9050
SocksPort 9150
ControlPort 9151
CookieAuthentication 1

Save this file, quit the TorBrowser, and re-open it. Tada. You can even open up your Console to watch the logs as Tor starts:

Console watching TorBrowser with multiple SocksPort

Don’t forget that using Tor by itself is not a guaranteed invincibility shield. To really make Tor work for you, you’ll need to change some of your habits.

Written by Meitar

December 26th, 2013 at 7:29 pm

Leave a Reply