Ubuntu / Linux news and application reviews.

"Tor is free software for enabling online anonymity and resisting censorship. It is designed to make it possible for users to surf the Internet anonymously, so their activities and location can't be discovered by government agencies, corporations, or anyone else". More information @ Tor & Wikipedia

Selektor TOR gui

SelekTOR is an open source Java-based GUI front-end for the Tor Client which has a few advantages over Vidalia (the official Tor GUI), such as:
  • Simplifies the usage and configuration of Tor in client mode, SelekTOR does most of the hard stuff for you;
  • you can quickly select Tor exit nodes by country;
  • SelekTOR can continuously monitor and maintain a connection to the exit node with the best response time, with as little downtime as possible;
  • as well as proxying all traffic through the active Tor node, SelekTOR can also do selective routing of traffic through the active tor node based on URL patterns.

The option to select the Tor exit nodes by country can be used to access websites which aren't available in your country, such as Netflix, Hulu, CBS, ABC, Pandora, British TV, HBO Go and so on (these depend on your country, obviously).

SelekTOR needs very little configuration: simply select the exit nodes country (and optionally the proxy mode) and you're ready - you don't have to configure your web browsers manually and there's no need to install any browser addon. Supported web browsers include: Google Chrome, Chromium, Opera, Palemoon and Firefox.

The application also features Atlas Node details as well as built-in IP Whois:

Selektor TOR gui

Other SelekTOR features:
  • supports non-unique (Un-named) nodes;
  • nodes are filtered to ensure that they support HTTP on port 80, and thus ensuring greater reliability when used with web browsers;
  • built-in proxy pattern editor, Import and Export pattern files as a single zip file;


Install the Tor client in Ubuntu / Linux Mint


To be able to use SelekTOR in Ubuntu / Linux Mint and derivatives, you must firstly install the Tor Linux client. In Ubuntu 14.04 and newer, install it from the repositories, using the following command:
sudo apt-get install tor tor-geoipdb

For older Ubuntu / Linux Mint versions (or if you just want to install the latest Tor version), you can install the latest Tor by using its official Ubuntu repository. Add the Tor repository and install Tor using the following commands:
sudo sh -c 'echo "deb http://deb.torproject.org/torproject.org/ $(lsb_release -cs) main" >> /etc/apt/sources.list.d/tor.list'
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 886DDD89
sudo apt-get update
sudo apt-get install tor tor-geoipdb

Once installed, you should disable the Tor service from starting automatically (so it's started by SelekTOR) by editing the /etc/default/tor configuration file and replacing RUN_DEAMON="yes" with RUN_DEAMON="no". To do this automatically (and also stop the tor service in case it's running), simply copy/paste the following commands in a terminal:
sudo sed -i 's/RUN_DAEMON=\"yes\"/RUN_DAEMON=\"no\"/' /etc/default/tor
sudo service tor stop

For how to install and use Tor in recent Ubuntu or Linux Mint releases that use systemd, see THIS article.

Download and install SelekTOR


Download SelekTOR (available as deb, tarball binary and source code)

Update: SelekTOR is now packaged for Debian-based Linux distributions so to install SeleKTOR in Debian, Ubuntu, Linux Mint and so on, simply download and install the deb.

If you want to install SelekTOR by using the tarball binary, use the instructions below:

1. SelekTOR requires either the latest Oracle Java 7 or the latest OpenJRE 1.7. For Ubuntu / Linux Mint, either search for OpenJRE 1.7 in Ubuntu Software Center / Synaptic or whatever and install it, or install Oracle Java 7 as explained HERE.

2. Once you install Java, it's time to install SelekTOR. Firstly, extract SelekTOR in your home folder, then run the following commands to install it:

- for Debian-based Linux distributions (Ubuntu, Linux Mint, Debian, etc.)
cd ~/SelekTOR*
sudo ./install.sh
- for other Linux distributions:
cd ~/SelekTOR*
su -c ./install.sh
That's it. SelekTOR should now be installed and it should show up in your menu / Unity Dash.


If later on you want to uninstall SelekTOR, use the commands below:

- for Debian-based Linux distributions (Ubuntu, Linux Mint, Debian, etc.)
sudo chmod +x /opt/selektor/uninstall.sh
sudo /opt/selektor/uninstall.sh
- for other Linux distributions:
sudo chmod +x /opt/selektor/uninstall.sh
su -c /opt/selektor/uninstall.sh

Important: to make sure SelekTOR works properly on your system, read the instructions from HERE.


How to unblock websites using SelekTOR


Selektor TOR gui

To be able to access a website that's blocked in your country (or whatever other reason you have for using Tor), using SelekTOR, you have two options:

1. Use "Proxy by Pattern" which uses Tor only for websites that match a certain pattern. To use this, select the country you want to use (the country which isn't blocked by the website you want to access) from the SelekTOR drop-down and then from the SelekTOR menu choose Menu > Proxy Pattern Editor - here, click "Add new" and enter the pattern for the website you're trying to access (use the already existing patterns as an example), then click Save.

This option has the advantage of allowing you to only use Tor for the websites you want (like Netflix for instance), leaving all other traffic / websites unproxified. There's a disadvantage too: if some website, like Netflix for instance, uses code placed on some other domain, to check your country, this method will fail so for such cases, use "Proxy all traffic" (see below).

2. By selecting "Proxy all traffic" from the Proxy Mode drop-down, all the traffic is proxified (so there's no need to enter any patterns) so simply select the country you want to use from the "Active Country" drop-down and you should be able to access the blocked website(s).


Using Tor and SelekTOR with applications that don't pick up the system proxy or don't support SOCKS5


Important note about the Tor port used below: 9054 is the default Tor port when used in combination with SelekTOR but it can be changed from the SelekTOR GUI check the SelekTOR preferences to make sure you didn't change the default port. The default Tor port is actually 9050 (when not used with SelekTOR).

A. If the application you're trying to use doesn't pick up the system proxy settings, you can manually use the SOCKS5 proxy set up by Tor/SelekTOR in your application: 127.0.0.1:9054 (this is a SOCKS5 proxy so the app you want to use it for needs to support that).

Tip for Spotify: For instance, you can use this in Spotify - in its settings, select Socks5 as the proxy type and use "127.0.0.1" as the host and "9054" as the port. If Spotify (or some other app) can't connect, disable "Safe Socks" in the SelekTOR preferences (under Advanced).

Of course, if the app support both SOCKS5 and HTTP proxies, you can also use a HTTP proxy, as explained below.

B. To use this with an application that doesn't support SOCKS5 (like Pithos - a Pandora.com client -, for instance), you can use Privoxy, a HTTP proxy with advanced filtering capabilities, and set it to forward traffic through Tor (via SelekTOR). You will then be able to use Tor (via Privoxy) as a regular HTTP proxy. To do this, install Privoxy:
sudo apt-get install privoxy
Then, edit the Privoxy configuration file as root (I'll use Gedit below):
gksu gedit /etc/privoxy/config
... and add this at the end of the file:
forward-socks5 / localhost:9054 .
(there's a dot at the end of the line, that's not a typo!)

And finally, save the file and restart Privoxy:
sudo service privoxy restart
Currently users are reporting that Privoxy needs a restart on startup or else it doesn't work for some reason (update: this is not required for Ubuntu 16.04 / Linux Mint 18 and newer). To work around this issue, edit the /etc/rc.local file with a text editor as root - I'll use Gedit below:
gksu gedit /etc/rc.local
And in this file, above the "exit 0" line, add this:
/bin/sleep 30 && /etc/init.d/privoxy restart

Then, you can use the following HTTP proxy in your applications' proxy settings: "127.0.0.1:8118". For instance, in the Pithos Preferences, add it under "Proxy URL" as "http://127.0.0.1:8118" (without the quotes).

app seen @ +LinuxNewsHere