Merge branch 'master' of git://git.tails.boum.org/tails
[tails-test.git] / wiki / src / blueprint / vpn_support.mdwn
blobc356861c54e7224232c57a1e1525fbe4ffefbe30
1 [[!toc levels=2]]
3 # What we don't want
5 Some users have requested support for VPNs in Tails to "improve" Tor's
6 anonymity. You know, more hops must be better, right?. That's just
7 incorrect -- if anything VPNs make the situation worse since they
8 basically introduce either a permanent entry guard (if the VPN is set
9 up before Tor) or a permanent exit node (if the VPN is accessed
10 through Tor).
12 Similarly, we don't want to support VPNs as a replacement for Tor
13 since that provides terrible anonymity and hence isn't compatible with
14 Tails' goal.
16 # What we want
18 ## Tails -> Tor -> VPN
20 ### Use cases
22 1. Access services that block Tor.
23 2. Reach a local resource on a VPN that is not accessible in any other
24    way.
25 3. Reach a VPN non-anonymously (e.g. your account is tied to you IRL)
26    while only hiding your geo-location, which may be the only thing
27    you need in some situations. (Maybe invalid since this is not part
28    of the PELD spec (yet?) AFAIK.)
30 ### Solution
32 The easiest way to solve use case 1 (which we feel is the most
33 important one for this Tor/VPN setup) is to use a SSH connection with
34 the `DynamicForward` option. The newly created SOCKS port can be used to
35 have a fixed outgoing IP address. We could write on how to use that in
36 an "unsupported, advanced users only, may kill kittens" part of the
37 documentation.
39 Note that this setup isn't relevant for I2P for the same reason that
40 it's irrelevant for Tor hidden services.
42 ## Tails -> VPN -> Tor/I2P
44 ### Use cases
46 1. Make it possible to use Tails at airports and other pay-for-use
47    ISPs via iodine (IP-over-DNS).
48 2. Access Tor on networks where it's censored.
49 3. Some ISPs require their customers to connect to them through VPNs,
50    especially PPTP. Tails is currently unusable for them out of the
51    box.
53 ### Solution
55 Use cases 1 and 3 are worthwhile to support, and should be rather easy
56 to implement. See [[!tails_ticket 5858]].
58 For all other uses of this setup (e.g. 2) we already promote bridges
59 instead. Now that obfsproxy is included, it should cover all
60 our needs.