\// // ///&// .---"-, / & /\ \ ,-"---. .` <@ )-- / & .,, \ --( @> `. 8 /& % : \ 9 '-- __/ /& % : ; `\ \__ --' /&' &..% !.. `.\ /&' : &''" ! ``. : `.\ /#' % : "" * . : : `.\ I# :& : [ GOPHER ]: :: I I &% : :[ ONION ] : : I I && :%[ INITIATIVE ] : I I %&&&%%: WW. .%. : : I \&&&##%%%`W! & ' : ,'/ \####ITO%% W &..' #,'/ \W&&##%%&&&&### %./ \###j[\##//##}/ ++///~~\//_ (~ gustavian) ___[ Project ] The Gopher Onion Initiative is an information portal to get you excited and knowledgable about why you should run more hidden tor services which serve the gopher protocol. By default gopher is sending plaintext over TCP port 70. There is the possibility to use TLS over gopher in many clients and servers. TEXT See the Talk "Big Browser is watching you" why you should use gopher. ___[ Why Tor? ] With tor you have three advantages: * no modification to the gopher servers and clients needed * encryption (certification check via the onion URI!) * anonymisation Installation material for tor: HTML Tor Documentation ____[ Tutorial (Client) ] Assumptions: * You have a running tor instance. Terminology: * »%« means a command to run. * »>« means some text to add. Edit your torsocks.conf to point to the socks configuration of your tor node. % $EDITOR /etc/tor/torsocks.conf Run lynx (as an example gopher client) over tor: % torsocks lynx gopher://bitreich.org You can run anything else, which supports socks connections over tor too, by setting their socks connection configuration to the settings you used in torsocks.conf. To use the hidden service, do: % torsocks lynx gopher://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion Happy anonymous gophering! ___[ Tutorial (Server) ] Assumptions: * You have tor installed * You have a running geomyidae. Terminology: * »%« means a command to run. * »>« means some text to add. Let us begin. Create a new directory for your hidden service: % mkdir -p $yourhiddenservicebase/gopher Create a new torrc file for your hidden service: > # gopher hidden service > SocksPort 0 > HiddenServiceDir $yourhiddenservicebase/gopher > HiddenServicePort 70 127.0.0.1:71 Start a new dedicated tor daemon: % tor -f /etc/torrc_gopher Get the new .onion domain: % cat $yourhiddenservicebase/gopher/hostname RUn a new geomyidae instance: > geomyidae -d -u bitreich -g bitreich -b $base -p 71 -o 70 -h $onion »$onion« is the .onion domain we got above. Hint: -p 71 is the port to actually listen on, where the hidden service is redirected to. Hint: -o 70 keeps the displayed port in »port« replacements to 70 because clients in tor request port, but it is redirected to TCP/IP port 71, as specified in the torrc above. You now have a second geomyidae instance, which still directs to your old geomyidae base. If you are using the »port« and »server« syntax of the gph files, no editing is required. Geomyidae will automatically replace them with the new onion values. (See the manpage of geomyidae for gph details.) Test the setup: > torsocks lynx gopher://$onion Everything works? Now create the unit/startup script to run tor and the new geomyidae and you are done! Happy anonymous gopher serving! Now point everyone to: gopher://$onion Next go on IRC here: HTML ircs://irc.bitreich.org:6697/#bitreich-en Tell the people there about your new gopherhole in tor. It will be added to the onion category of the gopher lawn project here: DIR gopher://bitreich.org/1/lawn/c/onion.gph ___[ Other Resources ] Many other people are working on spreading the onion words throughout gopherspace. Here is a collection of other resources and tutorials. DIR Tomasino's tutorial on tor and gopher part 1 DIR Tomasino's tutorial on tor and gopher part 2 If you know anyone else who wrote about tor and onion, let me know at 20h@r-36.net or __20h__ on IRC DIR << back to bitreich.org