]> git.rkrishnan.org Git - tahoe-lafs/tahoe-lafs.git/commit
Make introducer.furl unguessable. Closes #1802.
authorBrian Warner <warner@lothar.com>
Wed, 20 Mar 2013 22:10:47 +0000 (15:10 -0700)
committerDavid-Sarah Hopwood <david-sarah@jacaranda.org>
Wed, 20 Mar 2013 22:40:33 +0000 (22:40 +0000)
commit0a89b738bc05f17597555786b8f59dc05c46be0f
tree6efe260fc28c1f7109ac689c5c790a44c29a2fe2
parent97a7cac7d3263e822d38f0d937b59dbb4dc366a9
Make introducer.furl unguessable. Closes #1802.

Previously, Introducers always used a swissnum of "introducer", so
anyone who could learn the (public) tubid of the introducer would be
able to connect to and use it. This changes new Introducers to use the
same randomly-generated swissnum as clients and storage servers do, so
that you absolutely must learn the introducer.furl from someone who
knows it already before you can connect.

This change also moves the location of the file that stores
introducer.furl from BASEDIR/introducer.furl to
BASEDIR/private/introducer.furl, since that's where we keep the private
things. The first time an introducer is started with the new code, it
will move any existing BASEDIR/introducer.furl into the new place.

Note that this will not change the FURL of existing introducers: it will
only affect newly created ones. When you change an introducer's FURL,
you must also update all of the nodes (clients and storage servers)
which connect to it, so upgrading it to an unguessable one isn't
something we should do automatically.
docs/configuration.rst
docs/frontends/CLI.rst
docs/running.rst
src/allmydata/introducer/server.py
src/allmydata/test/test_introducer.py
src/allmydata/test/test_runner.py