Mailing List Archive

exim + spamassassin + filter file - howto
hi all,

kinda hit a brick wall here... i have installed spamassassin with exim. and it works well.

there was deb package that i installed. i also put in the necessary transport and director bits in the exim.conf file. to make it all work.

emails now sent to anyones mailbox will be stampped with relevent info ie X-Spam-Status: etc etc....

my question is how to implement a filter file which the docs recommend to do ...like the following...

if
$h_X-Spam-Status: contains "Yes"
or
"${if def:h_X-Spam-Flag {def}{undef}}" is "def"
then
logwrite " => junk : SPAM"
save $home/Mail/junk/spam/
finish
endif


i understand the principle of what the code does. what i am not sure how to do is how to implement this code. using a filter file.

how does this tie in with exim and its conf file and .forward files and/or directories they are meant to reside ? etc etc ?

any help or guidance is muchly appreciated.

thanks all :)

best regards

chris g
Re: exim + spamassassin + filter file - howto [ In reply to ]
--
On Thu, Jul 04, 2002 at 12:00:14PM +1000, Chris Goh wrote:
| hi all,
|
| kinda hit a brick wall here... i have installed spamassassin with
| exim. and it works well.
|
| there was deb package that i installed. i also put in the necessary
| transport and director bits in the exim.conf file. to make it all
| work.
|
| emails now sent to anyones mailbox will be stampped with relevent
| info ie X-Spam-Status: etc etc....

So far so good :-).

| my question is how to implement a filter file which the docs
| recommend to do ...like the following...
|
| if
| $h_X-Spam-Status: contains "Yes"
| or
| "${if def:h_X-Spam-Flag {def}{undef}}" is "def"
| then
| logwrite " => junk : SPAM"
| save $home/Mail/junk/spam/
| finish
| endif
|
|
| i understand the principle of what the code does. what i am not sure
| how to do is how to implement this code. using a filter file.

This is a piece of the filter file :-).

| how does this tie in with exim and its conf file and .forward files
| and/or directories they are meant to reside ? etc etc ?

If you want to use this in a .forward file, put

# Exim filter

as the first line (as shown in the doc filter.txt) and then put that
above snippet in verbatim. However, you'll need to add a 'logfile'
command if that 'log' command is to work, so either add it or remove
the log command. Also, as the spec says, your router/director must
have the option 'allow_filter' set.

You can also choose to put that in the system filter, if you want.
The same caveat about the 'log' command applies. The system filter,
in exim4, is specified by the
system_filter = /etc/exim/system.filter
option, and the directory transport must also be specified with the
system_filter_directory_transport = address_directory
option.

-D

--

He who walks with the wise grows wise,
but a companion of fools suffers harm.
Proverbs 13:20

http://dman.ddts.net/~dman/

--
[ Content of type application/pgp-signature deleted ]
--
RE: Re: exim + spamassassin + filter file - howto [ In reply to ]
hi derrick

i have the filter working now !....i stuck it in the .forward file. i also removed the log command entry for the time being (still have to figure that one out )....

but now i am trying to get it to work machine wide....ie...filter applied to all incoming mail ...not just to a particular user where the .forward file lives... i created another userfoward driver to do that (i called it spamforward) but i get ..... D=spamforward defer (-11): bad owner for /etc/exim/spamfilter .... i am close to finding the answer :)....its gotta be a chown/chmod thing...heh...

thanks very much for your help :)

chris


-----Original Message-----
From: Derrick 'dman' Hudson [SMTP:dsh8290@rit.edu]
Sent: Friday, July 05, 2002 1:30 AM
To: 'exim-users@exim.org'
Subject: [Exim] Re: exim + spamassassin + filter file - howto

--
On Thu, Jul 04, 2002 at 12:00:14PM +1000, Chris Goh wrote:
| hi all,
|
| kinda hit a brick wall here... i have installed spamassassin with
| exim. and it works well.
|
| there was deb package that i installed. i also put in the necessary
| transport and director bits in the exim.conf file. to make it all
| work.
|
| emails now sent to anyones mailbox will be stampped with relevent
| info ie X-Spam-Status: etc etc....

So far so good :-).

| my question is how to implement a filter file which the docs
| recommend to do ...like the following...
|
| if
| $h_X-Spam-Status: contains "Yes"
| or
| "${if def:h_X-Spam-Flag {def}{undef}}" is "def"
| then
| logwrite " => junk : SPAM"
| save $home/Mail/junk/spam/
| finish
| endif
|
|
| i understand the principle of what the code does. what i am not sure
| how to do is how to implement this code. using a filter file.

This is a piece of the filter file :-).

| how does this tie in with exim and its conf file and .forward files
| and/or directories they are meant to reside ? etc etc ?

If you want to use this in a .forward file, put

# Exim filter

as the first line (as shown in the doc filter.txt) and then put that
above snippet in verbatim. However, you'll need to add a 'logfile'
command if that 'log' command is to work, so either add it or remove
the log command. Also, as the spec says, your router/director must
have the option 'allow_filter' set.

You can also choose to put that in the system filter, if you want.
The same caveat about the 'log' command applies. The system filter,
in exim4, is specified by the
system_filter = /etc/exim/system.filter
option, and the directory transport must also be specified with the
system_filter_directory_transport = address_directory
option.

-D

--

He who walks with the wise grows wise,
but a companion of fools suffers harm.
Proverbs 13:20

http://dman.ddts.net/~dman/

--
[ Content of type application/pgp-signature deleted ]
--

--

## List details at http://www.exim.org/mailman/listinfo/exim-users Exim details at http://www.exim.org/ ##