|
This software is still in beta test.
Use at your own risk.
Current status:
| |||||||||||||
|
A note on version numbers.
There is another site which distributes spfmilter packages with
1.0.x versions numbers.
You might be tempted to think that since the version numbers
are numerically higher, those packages are the most up to date.
Wrong.
The 1.0.x series are unauthorized copies of old versions from here.
Their version numbers were changed for political reasons,
not engineering reasons.
Those versions should be ignored.
Because of this issue, there will never be a legitimate 1.x version of spfmilter. If the libraries ever get stable enough to merit a non-beta release of spfmilter, my intention is to call it 2.0. |
Sendmail includes a facility for plugging in custom mail filters, called milters. It's documented here. Spfmilter implements the Sender Policy Framework (SPF) as a milter, using either the libspf or libspf2 libraries.
The idea of SPF is to prevent email forgery. Each participating site sets up a little definition of which hosts are allowed to send mail claiming to be from that site. When another site receives mail, it checks the permitted-senders definition for the originating site. If the check fails, the mail is rejected.
Setting up the permitted-senders definition is very easy, you go to the SPF Wizard and fill out a little form, then put the resulting string into your DNS records. This milter implements the second half of SPF, checking the mail you receive against other sites' SPF records.
Are you using spfmilter? There's a mailing list: spfmilter@mail.acme.com (spfmilter-request@mail.acme.com to subscribe). And an announcements-only mailing list: spfmilter-announce@mail.acme.com (spfmilter-announce-request@mail.acme.com to subscribe). Anything send to the announcements list also goes to the regular list, so you don't need to be on both.
This is very abbreviated, intended mainly as a reminder for those who have worked with milters before. If it's your first milter, you should look on the web for more thorough documentation. Also, these instructions are pretty specific to FreeBSD, and will have to be adapted for other OSs.
sendmail -d0.1 -bt < /dev/null | grep MILTER
If you don't see MILTER in the compilation options, you will have
to re-build sendmail.
INPUT_MAIL_FILTER(`spfmilter',`S=unix:/var/run/spfmilter.sock, T=S:8m;R:8m')
Rebuild and install sendmail.cf.
# spfmilter unix:/var/run/spfmilter.sock
spfmilter_enable="YES"
spfmilter_flags="-t"
spfmilter_socket="unix:/var/run/spfmilter.sock"