[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: different expiration time for DSN



On Wed, 2003-10-01 at 19:27, James MacKinnon wrote:

> I saw a similar situation, with these silly autogenerated nonsense name 
> strings that spammer tools spit out, ie like:
> 
> 	xzxoasp440, y23giafbp, y624nyzxar, y822wyqj, etc.
> 
> Typically these would come in as a result of some email virus forgery 
> problem where MX's at remote site send us back bounces of infected
> machines' crappy traffic (where the From: line got forged to our domain
> by the virus).
> 
> I dealt with it this way:
> 
>   1) I modified our spam filter to also check on recipient user existence
>      - basically, do a query using zmailer's router function and deliver 
>        back to the content-filter an additional numerical result:
> 
> 		0 for OK, -1 for SPAM, -2 for NOUSER
> 
>   2) content-filter modified appropriately to deliver an error string
>      back to smtpserver in cases of NOUSER:
> 
> 	'550 5.1.1 User does not exist'
> 
> So this way, if a local destination doesn't exist, the SMTP transaction
> terminates, and I don't have a queue problem at all, since it's caught
> and dealt with in the SMTP chat.

I cannot afford spawning a router process on every message.  If I could,
I think that this could be done much easier, without contentfilter, just
by specifying

	PARAM  enable-router
	* 999 tR

in smtpserver.conf
I am planning (maybe) to modify smtpserver-router interface to be
realtime.  After getting a message smtpserver would pass the file name
to the router over unix domain socket (like it can do with contentfilter
now), and the router would either pass the message straight to the
scheduler, or notify smtpserver that the message is unacceptable and it
must say "550" to the peer.  But this is a long way, and the queue needs
to be truncated today...

What do you people (esp. Matti) think about a script like this?

#!/bin/sh
                                                                                
if [ -z "$ZCONFIG" ] ; then
        ZCONFIG=/usr/local/zmailer/zmailer.conf
fi
. $ZCONFIG
                                                                                
cd $POSTOFFICE/transport || exit 1
                                                                                
/usr/bin/find [A-Z] -type f -mmin +360 | xargs grep -l '^s error <> <>' | \
        /usr/local/zmailer/bin/ta/expirer -c smtp -s

# end

Eugene



-
To unsubscribe from this list: send the line "unsubscribe zmailer" in
the body of a message to majordomo@nic.funet.fi