From: "Алексей Шенцев" <ashen@nsrz.ru>
To: ALT Linux sysadmin discuss <sysadmins@lists.altlinux.org>
Subject: Re: [Sysadmins] спам фильтр
Date: Thu, 3 Apr 2008 16:34:05 +0400
Message-ID: <200804031634.05462.ashen@nsrz.ru> (raw)
In-Reply-To: <47F4F1BB.20800@pugr.vng.com.ru>
В сообщении от Thursday 03 April 2008 19:03:23 tosh17 написал(а):
> если чесно как то не получилось поднять сервис dspam :(
> статьи которые нахожу dspam настраивается через чето другое например
> довекот а у меня dbmail было и напрямую но там через sql у меня без
> исходников и поэтому нет файлов в usr/local/share/examples/dspam/pgsq
> пробывал скачать несколько но в них тоже небыло этих файлов
Вообще то он не так сложно настраивается. Прям сейчас постараюсь вам объяснить
что к чему. Используем postfix+dspam+mysql. Конфиг dspam'а для такого случая
(пример):
[root@gw /]# cat /etc/dspam.conf
## $Id: dspam.conf.in,v 1.82 2006/06/23 03:11:31 jonz Exp $
## dspam.conf -- DSPAM configuration file
# DSPAM Home: Specifies the base directory to be used for DSPAM storage
Home /var/lib/dspam
UntrustedDeliveryAgent "/usr/bin/procmail -d %u"
#Server parametrs
ServerMode auto
ServerParameters "--deliver=innocent -d %u, spam"
ServerIdent "localhost.localdomain"
ServerPID /var/run/dspam.pid
#Так как в Alt Linux postfix работает в chroot'е,
#то сокет dspam'а помещаем в спуле postfix'а
ServerDomainSocketPath "/var/spool/postfix/dspam.sock"
#Delivery for return the good mail back into Postfix
DeliveryHost 127.0.0.1
DeliveryPort 10026
DeliveryIdent localhost
DeliveryProto SMTP
LocalMX 127.0.0.1
#Проверка почты на спам/неспам
ParseToHeaders on
ChangeModeOnParse on
ChangeUserOnParse full
##MySQL
StorageDriver /usr/lib/libmysql_drv.so
MySQLServer /var/lib/mysql/mysql.sock
MySQLPort 3306
MySQLUser dspam
MySQLPass NEED_SET_YOU_PASSWORD
MySQLDb dspam
MySQLCompress true
MySQLReadSignaturesFromWriteDb on
MySQLConnectionCache 10
#Other
TrainingMode teft
TestConditionalTraining on
Trust root
Trust mail
Trust mailnull
Trust smmsp
Trust daemon
Trust dspam
Trust amavisd
Feature whitelist
Algorithm graham burton
PValue graham
Preference "spamAction=quarantine"
Preference "signatureLocation=headers" # 'message' or 'headers'
Preference "showFactors=on"
Preference "spamSubject=***SPAM***"
#Кто отправляет письма в карантин
QuarantineAgent "/usr/bin/procmail -d spam"
#Укладываем спам в карантин, а не отдаём его пользователю.
QuarantineMailbox +quarantine
EnablePlusedDetail on
#Рассылаем сообщения об спаме/карантине или нет?
Notifications off
#Вести ли логи?
#Не путать с /var/log/dspam/dspam.log
#лог демона
#А так же с тем, что выдаётся в /var/log/maillog
#Системный лог - да.
#Местоположение /var/lib/dspam/system.log
SystemLog on
#Логи по пользователям - да.
#Местоположение /var/lib/dspam/data/$u
UserLog on
Tokenizer chain
WebStats on
AllowOverride trainingMode
AllowOverride spamAction spamSubject
AllowOverride statisticalSedation
AllowOverride enableBNR
AllowOverride enableWhitelist
AllowOverride signatureLocation
AllowOverride showFactors
AllowOverride optIn optOut
AllowOverride whitelistThreshold
TrackSources spam nonspam
ProcessorURLContext on
ProcessorBias on
#EOF dspam.conf
[root@gw /]#
Что необходимо и достаточно прописать для postfix'а:
[root@gw /]# cat /etc/postfix/master.cf
# ==========================================================================
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (100)
# ==========================================================================
smtp inet n - n - - smtpd
##For dspam
-o content_filter=lmtp:unix:/dspam.sock
#dspam
localhost:10026 inet n - n - - smtpd
-o content_filter=
-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
-o smtpd_helo_restrictions=
-o smtpd_client_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks=127.0.0.0/8
-o smtpd_authorized_xforward_hosts=127.0.0.0/8
pickup fifo n - - 60 1 pickup
cleanup unix n - - - 0 cleanup
qmgr fifo n - - 300 1 qmgr
tlsmgr unix - - - 1000? 1 tlsmgr
rewrite unix - - - - - trivial-rewrite
bounce unix - - - - 0 bounce
defer unix - - - - 0 bounce
trace unix - - - - 0 bounce
verify unix - - - - 1 verify
flush unix n - - 1000? 0 flush
proxymap unix - - n - - proxymap
smtp unix - - - - - smtp
# When relaying mail as backup MX, disable fallback_relay to avoid MX loops
relay unix - - - - - smtp
-o fallback_relay=
# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq unix n - - - - showq
error unix - - - - - error
discard unix - - - - - discard
local unix - n n - - local
virtual unix - n n - - virtual
lmtp unix - - - - - lmtp
anvil unix - - - - 1 anvil
scache unix - - - - 1 scache
retry unix - - - - - error
[root@gw /]#
Создание БД в MySQL:
создаём БД dspam и пользователя dspam в ней с
помощью /usr/share/dspam-3.8.0/create_dspam_db.sql
Создаём таблицы в БД с помощью /usr/share/dspam-3.8.0/mysql_objects-space.sql
Создаём таблицу виртуальных пользхователей с
помощью /usr/share/dspam-3.8.0/virtual_users.sql
В сборку dspam-3.8.0-alt1.8 я добавил скрипт train для первоначального
обучения dspam'а что есть spam/ham. Работать с ним просто: раскладываем
спам-письма и нормальные письма по двум папкам spa и ham соотвественно и
запускаем этот скрипт. Когда отработает, то БД dspam'а уже будет заполенена.
В принципе и всё. Мои конфиги конечно не идеальные, если есть знающию люди
пусть поправят где я ошибся.
--
С уважением Шенцев Алексей Владимирович.
E-mail: ashen@nsrz.ru
XMPP: ashen@altlinux.org, AlexShen@jabber.ru
ICQ: 271053845
next prev parent reply other threads:[~2008-04-03 12:34 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-01 18:12 tosh17
2008-04-01 19:21 ` Alexey Morsov
2008-04-02 12:45 ` tosh17
2008-04-02 13:50 ` tosh17
2008-04-02 10:37 ` Eugene Prokopiev
2008-04-02 14:00 ` tosh17
2008-04-02 11:07 ` Алексей Шенцев
2008-04-02 13:44 ` Grigory Fateyev
2008-04-02 14:15 ` Алексей Шенцев
2008-04-02 16:38 ` Grigory Fateyev
2008-04-03 5:14 ` Алексей Шенцев
2008-04-03 16:47 ` Grigory Fateyev
2008-04-04 6:33 ` Алексей Шенцев
2008-04-03 15:03 ` tosh17
2008-04-03 12:34 ` Алексей Шенцев [this message]
2008-04-03 15:43 ` tosh17
2008-04-03 12:50 ` Алексей Шенцев
2008-04-03 15:51 ` tosh17
2008-04-03 13:00 ` Алексей Шенцев
2008-04-03 15:59 ` tosh17
2008-04-04 13:29 ` Вадим Илларионов
2008-04-03 16:39 ` tosh17
2008-04-03 13:48 ` Алексей Шенцев
2008-04-03 19:16 ` tosh17
2008-04-04 6:39 ` Алексей Шенцев
2008-04-04 7:38 ` [Sysadmins] ham@ Michael Shigorin
2008-04-04 7:52 ` Алексей Шенцев
2008-04-04 10:27 ` Eugene Prokopiev
2008-04-04 13:35 ` Grigory Fateyev
2008-04-03 16:51 ` [Sysadmins] спам фильтр tosh17
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200804031634.05462.ashen@nsrz.ru \
--to=ashen@nsrz.ru \
--cc=sysadmins@lists.altlinux.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux sysadmins discussion
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/sysadmins/0 sysadmins/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 sysadmins sysadmins/ http://lore.altlinux.org/sysadmins \
sysadmins@lists.altlinux.org sysadmins@lists.altlinux.ru sysadmins@lists.altlinux.com
public-inbox-index sysadmins
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.sysadmins
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git