commit a0493b492e6b6cf3bc858bc2e5de8d1e7e69f5c0 Author: George Kadianakis desnacked@riseup.net Date: Thu Jan 12 15:28:40 2012 +0200
Add new user guides.
Place them in doc/obfs2/howto/.
Also, update doc/tor-obfs-howto.txt to redirect to doc/obfs2/howto. --- doc/obfs2/howto/README | 7 ++ doc/obfs2/howto/client-external-howto.txt | 37 ++++++++++ doc/obfs2/howto/client-managed-howto.txt | 30 ++++++++ doc/obfs2/howto/server-external-howto.txt | 42 +++++++++++ doc/obfs2/howto/server-managed-howto.txt | 45 ++++++++++++ doc/tor-obfs-howto.txt | 106 +---------------------------- 6 files changed, 162 insertions(+), 105 deletions(-)
diff --git a/doc/obfs2/howto/README b/doc/obfs2/howto/README new file mode 100644 index 0000000..cb8ec83 --- /dev/null +++ b/doc/obfs2/howto/README @@ -0,0 +1,7 @@ +If you are wondering which howto guide you should follow: + +Generally, the guides named '*-managed-*.txt" are easier to follow, +and they require a tor version newer than 0.2.3.11. + +If you have an older version of tor, you can use the guides named +"*-external-*.txt". diff --git a/doc/obfs2/howto/client-external-howto.txt b/doc/obfs2/howto/client-external-howto.txt new file mode 100644 index 0000000..523984f --- /dev/null +++ b/doc/obfs2/howto/client-external-howto.txt @@ -0,0 +1,37 @@ +How to set up Tor Client with obfsproxy +======================================= + +[1] You will need: + +* a copy of obfsproxy: + git clone git://git.torproject.org/obfsproxy.git + Build it with: "./autogen.sh && ./configure && make". + You will need libevent-2 to build it. + +* a copy of Tor that supports the ClientTransportPlugin option. + Any Tor version newer than 0.2.3.2 will do the trick. + +[2] Set up obfsproxy: + +This command will setup an obfsproxy client speaking the obfs2 +protocol: + +./obfsproxy obfs2 socks 127.0.0.1:1050 + +[3] Set up tor: + +You should put the following lines in your torrc file: +--- +SocksPort 5000 +UseBridges 1 +Bridge obfs2 <bridge address>:1051 # This is provided by the bridge operator. +ClientTransportPlugin obfs2 socks5 127.0.0.1:1050 +--- +substituting <bridge address> with the IP address of your bridge +relay. + +[4] Done! + +Now to test it, launch Firefox and set it up to use a Socks server on +127.0.0.1:5000. Now browse the web. + diff --git a/doc/obfs2/howto/client-managed-howto.txt b/doc/obfs2/howto/client-managed-howto.txt new file mode 100644 index 0000000..f544189 --- /dev/null +++ b/doc/obfs2/howto/client-managed-howto.txt @@ -0,0 +1,30 @@ +How to Set up a Tor Client with obfsproxy +========================================= + +[1] You will need: + +* a copy of obfsproxy: + git clone git://git.torproject.org/obfsproxy.git + Build it with: "./autogen.sh && ./configure && make". + You will need libevent-2 to build it. + +* a copy of Tor that supports the managed ClientTransportPlugin + option. The current git master should work. + +[2] Set up tor: + +You should put the following lines in your torrc file: +""" +SocksPort 5000 +UseBridges 1 +Bridge obfs2 <bridge address>:1051 # This is provided by the bridge operator. +ClientTransportPlugin obfs2 exec <path to obfsproxy> --managed +""" +where <path to obfsproxy> is the path to the obfsproxy executable. If +you successfuly compiled obfsproxy, the executable should be in the +obfsproxy directory. + +[3] Done! + +To test it, launch Firefox and set it up to use a SOCKS server on +127.0.0.1:5000. Now browse the web. diff --git a/doc/obfs2/howto/server-external-howto.txt b/doc/obfs2/howto/server-external-howto.txt new file mode 100644 index 0000000..34fe665 --- /dev/null +++ b/doc/obfs2/howto/server-external-howto.txt @@ -0,0 +1,42 @@ +How to Set up a Tor Bridge with obfsproxy +========================================= + +[1] You will need: + +* a copy of obfsproxy: + git clone git://git.torproject.org/obfsproxy.git + Build it with: "./autogen.sh && ./configure && make". + You will need libevent-2 to build it. + +* a copy of Tor that can be configured as a bridge. + +[2] Set up obfsproxy: + +This command will setup an obfsproxy server speaking the obfs2 +protocol: + +./obfsproxy obfs2 --dest=127.0.0.1:5001 server 0.0.0.0:1051 + +Be sure to pass the value of ORPort of your bridge relay to the --dest +argument (see next section). In this example, we assumed it was '5001'. + +[3] Set up tor: + +You should put the following lines in your torrc file: +--- +ORPort 5001 +BridgeRelay 1 +ExitPolicy reject *:* +--- + +[4] Done! + +Now, instruct censored people to connect to your IP on port 1051. So, +for example, if your bridge's address is 192.0.2.42, bridge users +should connect to 192.0.2.42:1051. + +During the above process, you can use any port numbers you want, but +make sure to adjust the torrc and obfsproxy commands accordingly. + +Finally, don't forget that you might also need to set up port +forwarding. diff --git a/doc/obfs2/howto/server-managed-howto.txt b/doc/obfs2/howto/server-managed-howto.txt new file mode 100644 index 0000000..4f6c39d --- /dev/null +++ b/doc/obfs2/howto/server-managed-howto.txt @@ -0,0 +1,45 @@ +How to Set up Tor Bridge with obfsproxy +======================================= + +[1] You will need: + +* a copy of obfsproxy: + git clone git://git.torproject.org/obfsproxy.git + Build it with: "./autogen.sh && ./configure && make". + You will need libevent-2 to build it. + +* a copy of Tor that supports the managed ClientTransportPlugin + option. The current git master should work. + +[2] Set up tor: + +You should put the following lines in your torrc file: +""" +ORPort 5001 # Port on which bridge will be listening on. +BridgeRelay 1 +ExitPolicy reject *:* +ServerTransportPlugin obfs2 exec <path to obfsproxy> --managed +""" + +[3] Launch tor + +Now launch tor and monitor your logs. +You should see a message similar to: + +"[warn] Registered server transport 'obfs2' at '0.0.0.0:33578'" + +note down the port number ('33578' in this case). It's the port number +that you should tell your bridge clients to use. + +[4] Done! + +Now, instruct censored people to connect to your IP on the port you +found in the previous step (e.g 33578). So, for example, if your +bridge's address is 192.0.2.42, bridge users should connect to +192.0.2.42:33578. + +Tor will try to always spawn your transport proxy at the same port, so +you won't have to do this procedure in every Tor restart. + +Finally, don't forget that you might also need to set up port +forwarding. diff --git a/doc/tor-obfs-howto.txt b/doc/tor-obfs-howto.txt index 324a98c..dd5b8eb 100644 --- a/doc/tor-obfs-howto.txt +++ b/doc/tor-obfs-howto.txt @@ -1,105 +1 @@ -How to set up Tor with obfsproxy -================================ - - Instructions: - - "I AM A CENSORED FELLOW" - -[1] You will need: - -* a copy of obfsproxy: - git clone git://git.torproject.org/obfsproxy.git - Building it should be easy, just do "./configure && make". - -* a copy of Tor that supports the Socks5Proxy option. - Tor 0.2.2.30 - for example - will work. - -[2] Set up obfsproxy: - -This command will setup an obfsproxy client speaking the obfs2 -protocol on localhost:1050: - -./obfsproxy obfs2 socks 127.0.0.1:1050 - -[3] Set up tor: - -You should put in your torrc file: ---- -SocksPort 5000 -UseBridges 1 -Bridge <bridge address>:1051 # This is provided by the bridge operator. -Socks5Proxy 127.0.0.1:1050 # This points to the obfsproxy client. ---- - -Of course you should substitute the value of the Bridge line above, -with the information provided to you by a bridge operator. - -[4] Done! - -Alright, you are done! -Make sure you have followed the above steps on the correct order: -First launch obfsproxy and then launch tor. - -Now to test it, launch Firefox and set it up to use a Socks server on -127.0.0.1:5000. Now browse the web. - - - "I AM A BRIDGE OPERATOR THAT WANTS TO HELP CENSORED PEOPLE" - -[1] You will need: - -* a copy of obfsproxy: - git clone git://git.torproject.org/obfsproxy.git - Building it should be easy, just do "./configure && make". - -* a copy of Tor which can function as a Tor bridge. - -[2] Set up obfsproxy: - -This command will setup an obfsproxy server speaking the obfs2 -protocol on localhost:1051: - -./obfsproxy obfs2 --dest 127.0.0.1:5001 server 127.0.0.1:1051 - -Be sure to pass the value of ORPort of your bridge relay to the --dest -argument (see next section). - -[3] Set up tor: - -You should put in your torrc file: ---- -ORPort 5001 # Port on which bridge will be listening on. -BridgeRelay 1 -ExitPolicy reject *:* ---- - -[4] Done! - -Make sure you have followed the above steps on the correct order. -First launch obfsproxy and then launch tor. -You can use any port numbers you want, just be sure to adjust the -torrc and obfsproxy commands accordingly. - -Don't forget that You might need to set up port forwarding. - -Now you should tell censored people to connect to your IP on port 1051. -So, for example, if your bridge's address is 85.22.13.1, bridge users -should connect to 85.22.13.1:1051. -Pay attention that '1051' is the port where obfsproxy is listening on, -and *not* your bridge's ORPort. - - Network diagram of the above setup: - -(If you don't understand this drawing, just ignore this section.) - - 1050 1051 - +-----------+ +------------+ - ----| Proxy |------[internet]------| Server |---- - | +-----------+ +------------+ | - | | -+------------+ +--------------+ -| Tor Client | | Tor Bridge | -+------------+ +--------------+ - 5000 5001 - - +See doc/obfs2/howto/ for information on how to setup obfsproxy with obfs2.
tor-commits@lists.torproject.org