Skip to content

timkuijsten/opensmtpd-filter-spamtrap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenSMTPD spamtrap filter

OpenSMTPD filter to catch spammers using one or more spamtraps.

Build

git clone https://netsend.nl/opensmtpd-filter-spamtrap.git
cd opensmtpd-filter-spamtrap
go build -o filter-spamtrap

Install

install -m555 -gbin filter-spamtrap /usr/local/libexec/smtpd/

mkdir -m750 /var/spamtrap
useradd -d /var/spamtrap -s /sbin/nologin spamtrap
chown -R spamtrap:wheel /var/spamtrap

touch               /etc/mail/spamtraps
chmod 640           /etc/mail/spamtraps
chown root:spamtrap /etc/mail/spamtraps

Usage

Spamtrap addresses should be added to a file, one per line. Caught spammers are saved in a tab separated file in /var/spamtrap/trapped.tsv that can be easily processed with grep(1) and cut(1).

Example using two spamtrap addresses:

echo sp@mtrap.nl           >  /etc/mail/spamtraps
echo spamtrap2@example.com >> /etc/mail/spamtraps

smtpd.conf:

filter "spamtrap" proc-exec "filter-spamtrap" user spamtrap group spamtrap
listen on egress filter { spamtrap }
usage: filter-spamtrap [-trapfile file] [-expire duration] [-redirect addr] [-spammers dir]
       filter-spamtrap -stats [-expire duration] [-spammers dir]
  -expire duration
        after how long a spammer should be unlisted (default 192h)
  -redirect string
        rewrite recipient of trapped mail instead of adding an "X-Spam" header
  -spammers string
        directory to save caught spammers in (default "/var/spamtrap")
  -stats
        print statistics about spammers and exit
  -trapfile string
        file containing one trap address per line (default "/etc/mail/spamtraps")

About

Mirror only. Catch spam by using spam traps.

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages