rbl-milter

David King dking at ketralnis.com
Thu Mar 15 18:11:27 UTC 2007


I'm using mail/rbl-milter-0.30_2 on FreeBSD 6.2 (which sports  
Sendmail 8.13.8 compiled with -DMILTER). rbl-bilter is a sendmail  
milter that checks a DNS RBL (in this case, spamcop) to see if an  
address is a known-spammer, and if so, adds a header to the email

rbl-milter starts, and creates a socket in /var/run/rbl-milter

srwxr-xr-x  1 root  wheel     0B 14 Mar 14:27 /var/run/rbl-milter=

When I receive an email from a known spammer, I get a message in  
syslog that looks like this:

Mar 14 15:03:05 melchoir rbl-milter[30345]: RBL entry found for  
82.23.177.133

So I know that rbl-milter gets the message, and does its lookup. I  
receive the emails as I would expect, except no header has been  
added. I'm launching rbl-milter from the shipped a init.d script with:

/usr/local/sbin/rbl-milter -l -r -p local:/var/run/rbl-milter -d  
$BLOCKLIST

(where BLOCKLIST is bl.spamcop.net, defined earlier), and the rbl- 
milter portion of my sendmail.mc looks like:

dnl pipe through rbl-milter socket
INPUT_MAIL_FILTER(`rbl-milter',`S=local:/var/run/rbl-milter')
define(`confINPUT_MAIL_FILTERS', `rbl-milter')

(the entire sendmail.mc is at the end of the message). The INSTALL  
file indicates that a negotiation should happen, to quote:

	7.  Restart sendmail.  Send yourself an email.  In your maillogs you
	should see lines like the following:

	sm-mta[2826]: g19CaLob002826: Milter (rbl-milter): init success to  
negotiate
	sm-mta[2826]: g19CaLob002826: Milter: connect to filters
	sm-mta[2826]: g19CaLob002826: Milter accept: message

I do NOT see that negotiation happening (but of course I *do* see rbl- 
milter indicating that the addresses in the message are on a blocklist).

All of this seems to work, since rbl-milter obviously sees the mail  
and does the proper lookup. Do you know of any way that it would be  
able to do this, but not able to add the header?

I can of course furnish additional configuration, but I'm not sure  
what's applicable. Here is my entire sendmail.mc:

-- cut here --
divert(0)
VERSIONID(`$FreeBSD: src/etc/sendmail/freebsd.mc,v 1.27 2002/10/16  
22:52:56 keramida Exp $')
OSTYPE(freebsd5)
DOMAIN(generic)

FEATURE(access_db, `hash -o -T<TMPF> /etc/mail/access')
FEATURE(blacklist_recipients)
FEATURE(local_lmtp)
FEATURE(mailertable, `hash -o /etc/mail/mailertable')
FEATURE(virtusertable, `hash -o /etc/mail/virtusertable')

dnl Uncomment the first line to change the location of the default
dnl /etc/mail/local-host-names and comment out the second line.
dnl define(`confCW_FILE', `-o /etc/mail/sendmail.cw')
define(`confCW_FILE', `-o /etc/mail/local-host-names')

dnl pipe through rbl-milter socket
INPUT_MAIL_FILTER(`rbl-milter',`S=local:/var/run/rbl-milter')
define(`confINPUT_MAIL_FILTERS', `rbl-milter')

FEATURE(`local_procmail')

dnl set SASL options
TRUST_AUTH_MECH(`LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `LOGIN PLAIN')dnl
define(`confDEF_AUTH_INFO', `/etc/mail/auth-info')dnl

define(`CERT_DIR', `/etc/ssl')dnl
define(`confCACERT_PATH', `CERT_DIR')dnl
define(`confCACERT', `CERT_DIR/cacert.pem')dnl
define(`confSERVER_CERT', `CERT_DIR/mail-cert.pem')dnl
define(`confSERVER_KEY', `CERT_DIR/private/mail-key.pem')dnl
DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl
DAEMON_OPTIONS(`Port=smtps, Name=TLSMTA, M=s')dnl

define(`confBIND_OPTS', `WorkAroundBrokenAAAA')
define(`confMAX_MIME_HEADER_LENGTH', `256/128')
define(`confNO_RCPT_ACTION', `add-to-undisclosed')
define(`confPRIVACY_FLAGS', `authwarnings,noexpn,novrfy')
MAILER(local)
MAILER(smtp)
-- cut here --


More information about the freebsd-questions mailing list