summaryrefslogtreecommitdiff
path: root/README
blob: fdb0097b275a6aa92679786aa2b9aa87e27ec86c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
$Id: README,v 1.30 2002/08/25 09:33:43 weasel Exp $
#####################################################################
##  R E A D M E   F O R   E C H O L O T   ###########################
#####################################################################

| Echolot, das: German, sonic depth finder

Echolot is a Pinger for anonymous remailers.

A Pinger in the context of anonymous remailers is a program that
regularily sends messages through remailers to check their reliability.
It then calculates reliability statistics which are used by remailer
clients to choose the chain of remailers to use.

Additionally it collects configuration parameters and keys of all
remailers and offers them in a format readable by remailer clients.


This is Echolot2. Besides the name, author and purpose this has nothing
to do with Echolot1. It's written from scratch.

LICENSE
-------
Please see the file named "LICENSE".


REQUIREMENTS
------------
	in general:
		Data::Dumper (should be part of perl-base)
		Digest::MD5 (or perl >= 5.8)
		HTML::Template
		a local Mail Transfer Agent
	for type1 pings
		GnuPG ( >= 1.0.7)
		GnuPG::Interface ( >= 0.33)
	for type2 pings
		a Mixmaster installation

Indirect requirements:
	Class:MethodMaker (by GnuPG::Interface)
	File::Spec (by HTML::Template, should be in more recent perl-base)

SETUP
-----

o Create a new unix user named �pinger� (You can actually use any name
  you wish but I will refer to the user as pinger in this document).

o Make sure you have the perl libraries mentioned above and GnuPG
  installed properly.

o Copy all Echolot files and directories to ~pinger/echolot

o Copy/Rename the pingd.conf.sample file to pingd.conf.

o Check the homedir setting and set sitename in pingd.conf.

o If the Mixmaster executable �mix� is not in your PATH, set
  the �mixmaster� config option in pingd.conf.

  Echolot can use any available mixmaster binary (e.g. your remailer's mix).
  It will not share pool or keyrings with the existing installation (it sets
  the MIXPATH environment variable).
  
  If you prefer you can build one for Echolot and place it in ~/Mix. Don't
  bother putting configuration or keyrings there though - they won't get used.

o If the GnuPG executable �gpg� is not in your PATH, set
  the �gnupg� config option in pingd.conf.

o Set my_localpart and my_domain in pingd.conf to the appropriate values
  for your pinger. Mail to my_localpart@my_domain needs to reach
  Echolot.

o Make sure your MTA supports user defined mailboxes. so that
  my_localpart+anything@my_domain also reaches Echolot.
              ^^^^^^^^^
  If you use another character instead of + to indicate a user defined
  extension set recipient_delimiter accordingly in pingd.conf.

  postfix: add �recipient_delimiter = +� to main.cf.

o Echolot can read its incoming mail either from a mbox format mailbox or from
  Maildir. The latter is preffered for technical reasons (Maildir is superiour
  to mbox because it does not require any locking).

  The �mailin� config variable defines where mail is read from. It defaults to
  �mail�. If it's a directory, Maildir is assumed, mbox format otherwise.

  Mbox:
    It's probably best to change the �mailin� config option to
    �/var/spool/pinger� (or whatever it is on your system).

  Maildir (recommended):
    Mail should be delivered to /home/pinger/echolot/mail which is a Maildir
    mailbox, i.e there are 3 directories: /home/pinger/echolot/mail/tmp,
    /home/pinger/echolot/mail/cur and /home/pinger/echolot/mail/new. Qmail,
    postfix and procmail can do this.

    Example snipped for procmail:

      :0
      $HOME/echolot/mail/
  
    (the trailing slash is important!)


    Example for qmail:

      echo "./echolot/mail/" > .qmail;
      touch .qmail-default

  
    To use procmail with postfix set �mailbox_command = /usr/bin/procmail�
    in main.cf.

o Run �./pingd --verbose start�.

o Run �./pingd add <address> <address> <address>..� in another terminal
  look at the first terminal where you started pingd. It should print
  something about adding addresses.

o Run �./pingd getkeyconf� to request new remailer-key and
  remailer-conf immediatly.

o pingd can be stopped with �./pingd stop� or with Ctrl+C on the
  terminal where it runs.

When everything works you may start pingd with

o �./pingd --detach --verbose start�

o You can tail the output file to get the debugging output:
  �tail -f output�

o In the tools directory you find the �pingctl� wrapper for Echolot.
  It takes care of checking ulimits, userid and cd'ing to the right
  directory. If you want you can install it as an init script in
  /etc/init.d or similar and link it from the runlevel directories
  if your init is SysV style.

o Echolot puts its stats in the result directory. It also produces
  an index file name echolot.html. If you want to have it as your
  default index page, symlink it to index.html with something like
  �ln -s echolot.html index.html� in the result directory or set
  the indexfilebasename option to index.html.

o Echolot produces .meta files per default. These files include extra
  headers that your http server should send to clients. With apache
  you can load the mod_cern_meta module and set MetaFiles to "on".
   [ make sure MetaSuffix matches your meta_extension setting (".meta"
     by default) and MetaDir is set to "." ]

CONFIGURATION
-------------

Consult the pingd.conf.5 manpage for documentation on configuration
options.

To get all available configuration options and their current value run 
�./pingd dumpconf�.

After changing pingd.conf you need to restart pingd.

CAVEATS
-------

- Echolot will keep open all ping and metadata files. This means it needs quite
  a few file descriptors (about 2 * total keys or 6 to 8 * remailers + some for
  perl).  If you have a very strict ulimit for open files you need to increase it.
  Something like 512 should be plenty.
  If you get obscure errors this might probably be it.


Please report bugs and feature requests at
http://savannah.gnu.org/bugs/?group=echolot

The Echolot homepage is at
http://www.palfrader.org/echolot/

ACKNOWLEDGEMENTS
----------------
	Orange Admin for contributing ideas and templates
	The FSF for savanna.gnu.org.
	All testers of Echolot.