\// //
                          ///&//
             .---"-,     / & /\ \    ,-"---.
           .` <@   )-- /  & .,,  \ --(   @> `.
          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.
       
 (TXT) 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:
 (HTM) 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:
       
 (HTM) 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