diff --git a/90-antispam.conf b/90-antispam.conf index 5b72092..fffe513 100644 --- a/90-antispam.conf +++ b/90-antispam.conf @@ -1,58 +1,17 @@ plugin { -################## -# GENERIC OPTIONS - -# Debugging options -# Uncomment to get the desired debugging behaviour. -# Note that in some cases stderr debugging will not be as -# verbose as syslog debugging due to internal limitations. -# # antispam_debug_target = syslog antispam_debug_target = stderr # antispam_verbose_debug = 1 -# backend selection, MUST be configured first, -# there's no default so you need to set one of -# these options: -# antispam_backend = crm114 -# antispam_backend = dspam -# antispam_backend = pipe -# antispam_backend = spool2dir antispam_backend = pipe # mail signature (used with any backend requiring a signature) antispam_signature = X-Bogosity -# action to take on mails without signature -# (used with any backend requiring a signature) -# (we recommend only setting this to 'move' after verifying that the -# whole setup is working) # antispam_signature_missing = move # move silently without training antispam_signature_missing = error -# The list of folders for trash, spam and unsure can be given -# with three options, e.g. "trash" matches the given folders -# exactly as written, "trash_pattern" accept the * wildcard at -# the end of the foldername, "trash_pattern_ignorecase" -# accepts the * wildcard at the end of the foldername _and_ -# matches the name case insensitivly. - -# the *-wildcard with the following meaning: -# * at the end: any folder that _start_ with the string -# e.g.: -# antispam_trash_pattern = deleted *;Gel&APY-schte * -# match any folders that start with "deleted " or "Gelöschte " -# match is _case_senstive_! -# -# antispam_trash_pattern_ignorecase = deleted *;Gel&APY-schte * -# match any folders that start with "deleted " or "gelöschte " -# match is _case_insenstive_, except the non-USASCII letters, -# "ö" in this example. -# To match the upper-case Ö, too, you need to add yet another -# pattern "gel&ANY-schte *", note the different UTF7 encoding: -# &ANY- instead of &APY-. - # semicolon-separated list of Trash folders (default unset i.e. none) # antispam_trash = # antispam_trash = trash;Trash;Deleted Items; Deleted Messages @@ -71,69 +30,11 @@ antispam_spam = Junk;junk;Junk Mail;Spam;spam;SPAM # antispam_unsure_pattern = # antispam_unsure_pattern_ignorecase = -# Whether to allow APPENDing to SPAM folders or not. Must be set to -# "yes" (case insensitive) to be activated. Before activating, please -# read the discussion below. +# Whether to allow APPENDing to SPAM folders or not # antispam_allow_append_to_spam = no -########################### -# BACKEND SPECIFIC OPTIONS -# - -#=================== -# dspam plugin - -# dspam binary -# antispam_dspam_binary = /usr/bin/dspam - -# semicolon-separated list of extra arguments to dspam -# (default unset i.e. none) -# antispam_dspam_args = -# antispam_dspam_args = --deliver=;--user;%u # % expansion done by dovecot -# antispam_dspam_args = --mode=teft - -# Ignore mails where the DSPAM result header contains any of the -# strings listed in the blacklist -# (default unset i.e. none) -# antispam_dspam_result_header = X-DSPAM-Result -# semicolon-separated list of blacklisted results, case insensitive -# antispam_dspam_result_blacklist = Virus - -# semicolon-separated list of environment variables to set -# (default unset i.e. none) -# antispam_dspam_env = -# antispam_dspam_env = HOME=%h;USER=%u - #===================== # pipe plugin -# -# This plug can be used to train via an arbitrary program that -# receives the message on standard input. Since sendmail can be -# such a program, it can be used to send the message to another -# email address for training there. -# -# For example: -# antispam_pipe_program = /path/to/mailtrain -# (defaults to /usr/sbin/sendmail) -# antispam_pipe_program_args = --for;%u -# antispam_pipe_program_spam_arg = --spam -# antispam_pipe_program_notspam_arg = --ham -# antispam_pipe_tmpdir = /tmp -# will call it, for example, like this: -# /path/to/mailtrain --for jberg --spam -# -# The old configuration options from when this plugin was called -# "mailtrain" are still valid, these are, in the same order as -# above: antispam_mail_sendmail, antispam_mail_sendmail_args, -# antispam_mail_spam, antispam_mail_notspam and antispam_mail_tmpdir. -# -# Alternatively, if you need to give multiple options, you can use -# the spam_args/notspam_args parameters (which are used in preference -# of the singular form): -# antispam_pipe_program_spam_args = --spam;--my-other-param1 -# antispam_pipe_program_notspam_args = --ham;--my-other-param2 -# which will then call -# /path/to/mailtrain --for jberg --spam --my-other-param1 # temporary directory antispam_pipe_tmpdir = /tmp @@ -143,38 +44,7 @@ antispam_pipe_program_spam_arg = spam antispam_pipe_program_notspam_arg = ham # binary to pipe mail to -antispam_pipe_program = /usr/local/bin/mailtrain +antispam_pipe_program = /usr/local/bin/spamtrain #antispam_pipe_program_args = -f;%u@example.com # % expansion done by dovecot -#=================== -# crm114 plugin - -# mailreaver binary -# antispam_crm_binary = /bin/false -# antispam_crm_binary = /usr/share/crm114/mailreaver.crm - -# semicolon-separated list of extra arguments to crm114 -# (default unset i.e. none) -# antispam_crm_args = -# antispam_crm_args = --config=/path/to/config - -# semicolon-separated list of environment variables to set -# (default unset i.e. none) -# antispam_crm_env = -# antispam_crm_env = HOME=%h;USER=%u - -# NOTE: you need to set the signature for this backend -# antispam_signature = X-CRM114-CacheID - -#=================== -# spool2dir plugin - -# spam/not-spam spool2dir drop (default unset which will give errors) -# The first %%lu is replaced by the current time. -# The second %%lu is replaced by a counter to generate unique names. -# These two tokens MUST be present in the template! However -# you can insert any C-style modifier as shown. -# antispam_spool2dir_spam = /tmp/spamspool/%%020lu-%u-%%05lus -# antispam_spool2dir_notspam = /tmp/spamspool/%%020lu-%u-%%05luh - } diff --git a/Dockerfile b/Dockerfile index 3bb68bd..bfcbe48 100644 --- a/Dockerfile +++ b/Dockerfile @@ -38,7 +38,7 @@ ENV \ SSL_KEY="/ssl/key.pem" RUN groupadd -g 5000 vmail && useradd -g vmail -u 5000 vmail -d /vmail \ - && mkdir -p /vmail && chown vmail:vmail /vmail \ + && mkdir -p /vmail/bogofilter && chown vmail:vmail /vmail \ && apt-get update && apt-get install -y --no-install-recommends \ dovecot-lmtpd \ dovecot-imapd \ @@ -69,11 +69,11 @@ ADD junk-filter.sieve /etc/dovecot/sieve/before/ ADD confd /etc/confd/ -ADD mailtrain /usr/local/bin/ +ADD spamtrain /usr/local/bin/ RUN sievec /etc/dovecot/sieve/before -VOLUME /ssl /vmail +VOLUME ["/ssl","/vmail"] EXPOSE 110/tcp 143/tcp 587/tcp 993/tcp 995/tcp 2000/tcp diff --git a/mailtrain b/spamtrain similarity index 56% rename from mailtrain rename to spamtrain index 4d22f99..4e231de 100755 --- a/mailtrain +++ b/spamtrain @@ -1,13 +1,14 @@ #!/bin/bash + # train the spam filter. # arg 1 - spam or ham if [ "$1" == "ham" ]; then - /usr/bin/bogofilter -e -p -Sn + /usr/bin/bogofilter -d /vmail/bogofilter -e -p -Sn exit 0 fi if [ "$2" == "spam" ]; then - /usr/bin/bogofilter -e -p -Ns + /usr/bin/bogofilter -d /vmail/bogofilter -e -p -Ns exit 0 fi