-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
93 lines (72 loc) · 4.22 KB
/
README
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
Import of the official project from SourceForge:
<URL:http://popbsmtp.sourceforge.net/>
AFAIK a MaillingList is not available here on github, but you can make
use of the issue System here if you have a problem.
If you want to contribute code, then please make use of PullRequests.
PLATFORM-SPECIFIC NOTES (up front so you can comfortably ignore the
stuff if it doesn't apply to you:-)
Courier users (folks running this with the Courier SMTP daemon)
will want to enable the section of the pop-before-smtp-conf.pl file
that handles the Courier SMTP setup.
Qmail users might want to look in the pop-before-smtp-conf.pl file
for a section that causes pop-before-smtp to manipulate qmail's
tcpserver tcprules file.
Debian users may want to look at the contrib/init-debian script.
Red Hat users who really miss the spiffo highlighted OK at
startup/shutdown should check out either of the alternate init
scripts, available in contrib/init-redhat-alex and
init-redhat-bet. Alex's version tries to use the Red Hat init
script functions as much as possible, in an effort to be just like
the other Red Hat init scripts. Bennett's just makes the minimum
use of them to get the highlighted display, while using the same
basic logic as the generic init script that has become the
package default.
popa3d users can find a patch that adds the IP addr to the log
records in contrib/popa3d/, and a corresponding $pat commented out
in pop-before-smtp-conf.pl.
Folks interested in running pop-before-smtp as a non-root user
should check out contrib/README.rootless-install
People more interested in getting it running as fast as possible
without doing an RPM install, who have some environmental
prereqs properly in place -- working perl install with working
CPAN module, System V init scripts, daemon installing in
/usr/sbin/ -- should check out contrib/README.QUICKSTART. Also,
the contrib/getfromcpan script contributed by Alexander Burke
<[email protected]> should make it enormously quicker and
easier to package and install all the prerequisite Perl modules
onto a Red Hat Linux system.
If you prefer pop-before-smtp to log via syslog, there's a commented-
out setup for it in the pop-before-smtp-conf.pl file.
Users of Microsoft Outlook Express 5.5 (and perhaps others as well),
do not use Tools->Options->Send->"Send messages immediately", as
it prevents Outlook Express from doing a POP or IMAP mailbox
download before sending messages, and so will get relay denied.
END OF PLATFORM-SPECIFIC NOTES
This is a simple program for watching /var/log/maillog, looking for
successful logins via POP or IMAP, and maintaining a database that
your SMTP software (e.g. Postfix, sendmail, qmail, etc.) can use to
decide to let users who've recently logged in have relay privs. I.e.
the server can be set to block spammers, and still allow legit users
to relay through it even if they roam.
Everything is in the script and its config file, including the
documentation, the text of the init script, and the Postfix/sendmail
config recommendations.
For details on how to setup your system and to configure and install
pop-before-smtp, see the README.QUICKSTART file in the contrib dir.
Or, for the most up-to-date version, visit it on the web:
http://popbsmtp.sourceforge.net/quickstart.shtml
There is also a good debug resource there as well:
http://popbsmtp.sourceforge.net/debug.shtml
----- Note on the pop-before-smtp file-locking code -----
The default DB_File support in pop-before-smtp uses a simple type of file
locking that, while it has been shown to have a flaw in some circumstances,
works fine for us because the flaw does not affect us. Here are the
details:
Our code first ties the hash, and then uses the opened file handle to lock
the file. The problem with this method is that the tie routine has already
read some data into the read-ahead buffer before the exclusive lock is
granted. If there were multiple programs writing to the DB, this could
lead to database corruption (if the data in the first block were to change
in between the first read and the time we get our exclusive lock). Since
pop-before-smtp is the only application updating the DB, the delayed flock
scenario can not cause corruption of the database, so we're safe.