Skip to content

How to install Tor on OpenSUSE compiling it yourself

First a note about the quality and level of detail of this guide: I never really had the time to complete it. I’ve been running a Tor node (currently halted because of its host’s new policy about Tor) on OpenSUSE, and because it wasn’t very clear whether or not the RPM repositories provided by Torproject were appropriate for OpenSUSE, I preferred to compile my own version. Doing so, I took notes, hoping to turn this into a proper tutorial at a later point. But I never got the time, and at the moment the server is kind of a mess requiring a reinstallation (don’t worry, it’s a test server, not the server where this site is served from ;)). So I’m quickly skimming through the notes, completing them with the help of the stuff still installed on the server, in order to quickly publish something working yet maybe lacking details, and to be able to wipe the server. The OpenSUSE version I used was 12.2.

The first step is to install required stuff, that is devel versions of libevent, openssl and zlib (zypper install libevent-devel openssl-devel zlib-devel).

Then get the latest Tor source, either stable or alpha/beta/RC (at the moment it’s, untar it, open its folder, configure and build:
tar xf tor-
cd tor-

As far as I understood, it’s generally recommended to avoid make install, but the choice is ultimately up to you. If you don’t make install, you’ll simply have to launch Tor manually: once compiled, the Tor executable is in src/or/. To launch it, just run ./tor in screen (since it’s not installed as a service/daemon, you need to run it in screen).

You’ll also need to create the torrc configuration file
torrc: create it as /usr/local/etc/tor/torrc (a sample torrc for a good starting point can be found in src/config/). See the previous post about Tor about what to configure in there.
When you modify the configuration, you can’t use /etc/init.d/tor reload or an equivalent since it doesn’t exist (again, because it’s not installed as daemon), but you can just use ARM (see at the end how to install it): in ARM, just press ‘x’ twice to reload the config.

To avoid some ARM warnings, here are some extra options worth configuring in torrc:
Add DisableDebuggerAttachment 0 at the end
Set DataDirectory, for instance if you want to use the default, DataDirectory /home/[usernam]/.tor
Set a control password. First hash your password, like ./tor --hash-password mypassword, then copy the result into torrc, like HashedControlPassword 16:872860B77453A77D60CA2BB8C1A70420A2093276A3D701AD684053EC4C

FInally, to install arm:
zypper install python-curses
rpm -ivh arm-

Posted in Linux, Tor.

0 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.

Some HTML is OK

or, reply to this post via trackback.

Sorry about the CAPTCHA that requires JS. If you really don't want to enable JS and still want to comment, you can send me your comment via e-mail and I'll post it for you.

Please solve the CAPTCHA below in order to fight spamWordPress CAPTCHA