20

From what I can see Tor mainly handles your web browser's traffic, but is there a way to do all of your connections through it? Like email, Dropbox, Carbonite backup, Skype etc?

(Please explain whether this might be a good or a bad idea in the first place. I can understand that Skype might be inherently 'spy friendly' due to it's closed source nature and slow.)

8 Answers 8

16

Although Tor is made to handle any TCP traffic, the majority of applications are not designed with anonymity and/or privacy in mind. Thus, torifying an application can be tricky. You have to make sure that there is no leak i.e connections routed outside the Tor circuit. A pretty usual example is DNS leaks.

If you want to use other applications apart from a browser, consider using Tails Live Linux an operating system which is specifically designed with anonymity and privacy in mind. Tails routes every connection through the Tor network.

Tails has a variety of application such as instant-messaging client, email client. Of course you won't find every single one of your favorites applications pre-installed in Tails but that's the trade-off between comfort and anonymity.

1
  • 2
    Never heard of Tails until today. Looks very interesting! Thanks for the info.
    – Jason Down
    Oct 2, 2013 at 21:05
9

Tor can handle all TCP-based connections. This is browsing, email, chats and others. The wiki has a howto for torifying applications. This explains how you set up software so that it works with Tor.

In general you should not use BitTorrent with Tor. Because on the one side it puts a high load on the Tor relays and the network will slow down for all users. On the other side BitTorrent makes it easier for an adversary to find out your real IP address.

At the moment Tor cannot work with UDP. Most Voice-over-IP solutions use this protocol. So you can't use Skype or other solutions yet.

1
  • 1
    You can route Skype over Tor. The degree of usefulness is a different question. See my answer below.
    – adrelanos
    Sep 27, 2013 at 0:44
7

From what I can see Tor mainly handles your web browser's traffic, but is there a way to do all of your connections through it? Like email, Dropbox, Carbonite backup, Skype etc?

Transparent Proxies such as Whonix and QubesOS TorVM can route all traffic through Tor. Routing all traffic through Tor is nowadays not the only thing. You also have to consider the protocol level.

(Full disclosure: I am a maintainer of Whonix.)

(Please explain whether this might be a good or a bad idea in the first place. I can understand that Skype might be inherently 'spy friendly' due to it's closed source nature and slow.)

A relevant quote from Whonix documentation about Skype answers that.

Does this mean that, for example, is my IP and location safe when using Skype?

Yes, IP and location is safe. Skype has been tested in Whonix, it "works" quite well, still recommended against. Some further comments you should be aware of:

Those are not Whonix or Tor issues, those are Skype issues. Consider Skype usage pseudonymous rather than anonymous. Skype is closed source and given Skype's history (reading BIOS etc. just research) it's very much likely that they link all your account names inside Whonix-Workstation to the same pseudonym.

Also obviously, if you log into an account, which you have ever used without Tor, consider the account non-anonymous. You really should assume, that they have logs and link your Tor and non-Tor use together.

Security doesn't depend on your local security and key management, but on a third party, the Skype authority. Consider the Skype encryption broken by the Skype authority.

Another obvious thing, if you chat with people, who have not created their account over Tor and who have not always connected over Tor, it's also not so hard to guess who you are. Remember, you are not in control of Skype's encryption keys and Skype is not Open Source, thus do not rely on Skype's encryption.

Voice recognition software also got very sophisticated. Since you should be unsure if the Skype encryption is broken or not, voice recognition software could be used to find out who you are.

Also read Do not mix Modes of Anonymity!

In conclusion Skype usage does not leak IP/location, but is discouraged anyway, unless you want to use it for circumvention only, without wanting to be anonymous or pseudonymous.

What's the point in using Skype if you and all your chat partners are also willing to create and use their accounts only over Tor? You are advised to use Skype alternatives.

6

You can use any application that supports the SOCKS 4 or 5 protocol directly with Tor. Or you can use a wrapper utility on those who do not. You can find some configuration tips over at the official and Arch wikis.

As mentioned in the other answers already, you can use the Tails Live Distribution to ease the setup.

That said, you should be aware that some protocols are not designed for being anonymized and you are only talking to the server anonymously. While you can filter most of the personal data out of a HTTP Session (kill cookies, non-needed headers etc using a proxy, e.g.) almost automatically, you cannot do this with (e.g.) mail. Mail usually needs at least a return address so people can reply to you. This could be "fixed" with some kind of anonymous remailers, though.

2
  • 2
    Mail anonymity can be improved with TorBirdy.
    – adrelanos
    Oct 2, 2013 at 23:05
  • If the application supports a SOCKS proxy, you have to trust that it's really using that proxy (for all the traffic that matters) or at least have some way to prevent any traffic not routed through the proxy from leaving the computer. (Of course, you also have to trust that the application isn't going to leak e.g. your real IP address to a third-party server that it connects to through the proxy - in situations like this an independent gateway is usually the only way to guarantee true privacy.) Mar 14, 2016 at 15:57
4

Tor can only handle TCP traffic (which not all applications use) and only some applications work directly with Tor. You can read about how to "torrify" applications here.

4

Applications that support SOCKS

As mentioned by @zhenech any application that supports SOCKS can be used with Tor.

Here are few examples that show your IP changing via an IP identifying website:

  • curl:

    curl http://checkip.amazonaws.com/
    curl --socks5 127.0.0.1:9050 http://checkip.amazonaws.com/
    
  • chromium:

    chromium-browser --proxy-server='socks5://127.0.0.1:9050'
    
  • casperjs:

    sudo apt-get install phantomjs
    casperjs --ssl-protocol=any --proxy=127.0.0.1:9050 --proxy-type=socks5 main.js
    

    with main.js:

    var casper = require('casper').create();
    casper.start('http://checkip.amazonaws.com/', function() {
        this.echo(this.getHTML());
    });
    casper.run();
    

torsocks

wget does not support SOCKS: https://superuser.com/questions/262956/how-to-invoke-a-command-using-specific-proxy-server but we can use torsocks to wrap it (mentioned by jamescampbell):

sudo apt-get install torsocks
         wget -q -O- http://checkip.amazonaws.com/
torsocks wget -q -O- http://checkip.amazonaws.com/

See also: https://superuser.com/questions/404732/how-to-use-wget-with-tor-bundle-in-linux

Tested on Ubuntu 15.10 with NVM casperjs.

It seems however that some applications do not support torsocks for reasons which I do not understand. E.g. Chromium: Debian-based: torsocks + Chromium-browser = DNS Leakage?

4
  • With curl, if you use --socks5-hostname (not just --socks5), host name resolution is done through Tor, and you can also connect to .onion addresses.
    – Jobiwan
    Nov 14, 2015 at 16:46
  • you can also use torsocks to wrap the curl command in that, e.g. torsocks curl http://checkip.amazonaws.com/
    – james-see
    Nov 15, 2015 at 6:13
  • @jamescampbell thanks for the tip! It works with wget perfectly. But when I try with chromium like torsocks chromium-browser it hangs and the app never starts. Is the a reason it does not work, or it just takes too long? Nov 15, 2015 at 10:09
  • @jamescampbell also asked at: tor.stackexchange.com/questions/6742/… Nov 15, 2015 at 10:14
3

Tor only carries TCP traffic, which is typically used in applications, such as web browsers and email clients, where reliable and error-corrected transmission is essential. Although the Tor Browser Bundle includes only Firefox, it's possible to configure other applications to use Tor for TCP traffic. As covered in other answers, configuring other applications to use Tor properly is nontrivial. Tails and Whonix are good choices for beginners.

Applications use UDP traffic when speed is more important than reliability and accuracy. Although Tor does not carry UDP, there's a specific work-around for UDP-mediated DNS queries, which translate numeric IP addresses to hostnames (URLS).

Skype and other VoIP apps typically use TCP for a control channel, and UDP for a data channel. Although Skype and Mumble, for example, can fall back to TCP for data over Tor, the error-correction process typically leads to unworkable latency. The typical latency of a Tor circuit is 1-2 seconds. If data loss causes TCP to buffer data during retransmission, the latency can increase two or more fold.

One solution is routing TCP-based openvpn connections through Tor. The openvpn tunnel will carry UDP etc as well as TCP. In my experience, Mumble works very well via VPN through Tor, with high voice quality, virtually no breakup and 1-2 second latency. You can run both a Mumble server, and an openvpn server as a hidden service, in a Whonix instance, and then distribute VPN connection credentials to your contacts. Also, it's more secure than Skype etc because there are no third-party servers involved.

You can also route free VPN privacy services, such as SecurityKISS, through Tor in order to access other UDP-dependent services. However, free VPN services typically limit bandwidth and daily throughput. But you can use non-free VPN services safely if you pay with cash by mail, or with Bitcoins that have been thoroughly anonymized through multiple mixing services.

2
  • There was no mention of TCP or UDP in the question. Without additional information (e.g., the difference between them, what kind of programs typically use each, the fact that Tor only works with TCP, etc.) this is not helpful.
    – pmocek
    Sep 30, 2013 at 1:17
  • Thanks, pmocek. My initial answer was enigmatically brief.
    – mirimir
    Sep 30, 2013 at 2:52
1

if you want to use tor for certain applications you can also use proxychains and tor[commandline] together

  1. install tor

    sudo apt-get install tor proxychains -y

  2. Use proxychains

    proxychains curl -s https://ifconfig.me

    [for checking public ip address of sender]

u can proxify any networking command line application by preceeding proxyhains before it by default configuration is set to proxify all connection through 127.0.0.1:9050 dns will also be resolved through network nodes, so there will be no dns leak

NOTE: This will only proxify ur connection of single program not the whole connection outbound to your computer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .