Страница 1 из 1

Неправильно работает Exim!

Добавлено: 2008-09-26 14:02:52
wanderbik
В общем на машине стоит Exim ставил не я, прописал в конфиге как надо: spamd_address 127.0.0.1 783. Запустил ассасин без ключей, чтобы он собако выдавал кто к нему лезет, он че то там выдал типа процесс такойто породил двух детишек... Лезу к неме с другого терминала телнетом, пишу что-нть не в тему он отвечает - плохой заголовок иди... Переключаю терминал, там Ассасин пишет: ломился локалхост с порта такого-то, плохой заголовок, послан на... Так вот, Exim работал целый день и ничего Ассасин мне не писал! В чем тут дело может быть? Подозреваю что Exim собран без поддержки Ассасина.

Хотя собран он вроде бы как надо:

Код: Выделить всё

exim -bV:
Exim version 4.69 #0 (FreeBSD 6.3) built 05-Jun-2008 07:40:05
Copyright (c) University of Cambridge 2006
Probably Berkeley DB version 1.8x (native mode)
Support for: crypteq iconv() use_setclassresources PAM Perl Expand_dlfunc OpenSSL Content_Scanning Old_Demime
Lookups: lsearch wildlsearch nwildlsearch iplsearch cdb dbm dbmnz dnsdb dsearch nis nis0 passwd
Authenticators: cram_md5 dovecot plaintext spa
Routers: accept dnslookup ipliteral manualroute queryprogram redirect
Transports: appendfile/maildir/mailstore/mbx autoreply lmtp pipe smtp
Fixed never_users: 0
Size of off_t: 8
Configuration file is /usr/local/etc/exim/configure
В чем может быть прикол?

Re: Неправильно работает Exim!

Добавлено: 2008-09-29 12:20:13
barut
При сборке экзима нет никаких дополнительных параметров для сборки со спам-ассасином. Проблема скорее всего в том, что у Вас не настроенны транспорты и роутеры, которые пересылали бы входящую почту на вход спам-ассасина. Недостаточно только указать в конфиге экзима строчку ссылающуюся на спам демона, нужны еще правила, роутеры и транспорты.

Re: Неправильно работает Exim!

Добавлено: 2008-09-30 17:08:29
Гость
А линк на хорошую доку можно, можно даже по английски... В стандартной доке с сайта экзима ни фига не нашел...

Re: Неправильно работает Exim!

Добавлено: 2008-10-01 9:00:35
wanderbik
Тут еще такой момент - в логах хорошо было видно, как он к кламу ломится на сокет. Клам тогда не настроен был, потом настроил, сокет появился (в фс) и из логов это пропало. Значит к кламу он ломился а к spamd не хочет!

Re: Неправильно работает Exim!

Добавлено: 2008-10-02 16:49:46
barut
Если я правильно понял, то когда clamv был неправильно настроен и в логах были ошибки обращения к нему, а после того как Вы настроили clamv в логах сообщения пропали. Если бы ассассин был настроен неправильно, то вполне возможно что сообщения о попытках подключения тоже бы были, но так как spamd работал, то соответственно и ошибок подключения нет.
Я вообще новичек в этом деле, но все-таки думаю что проблема именно со сканированием содержимого. Документации для новичков я тоже не нашел, но в целом ориентируюсь по статьям многоуважаемого Лиссяры. В рабочем конфиге с сервера, есть примерно такой роутер:

Код: Выделить всё

# Spam Assassin
spamcheck_director:
  driver = accept
  condition = "${if and { \
			{!def:h_X-Spam-Flag:} \
			{!eq {$received_protocol}{spam-scanned}} \
			{!eq {$received_protocol}{local}} \
			{exists{/home/${lookup{$domain}lsearch{/etc/virtual/domainowners}{$value}}/.spamassassin/user_prefs}} \
                        { or { \
                             {!eq {}{${lookup{$local_part}lsearch{/etc/virtual/${domain}/passwd}}}} \
                             {!eq {}{${lookup{$local_part}lsearch{/etc/virtual/${domain}/aliases}}}} \
                             {eq {$local_part} {${lookup{$domain}lsearch{/etc/virtual/domainowners}}}} \
                             } \
                        } \
			{<{$message_size}{100k}} \
		} {1}{0}}"
  retry_use_local_part
  transport = spamcheck
  no_verify
и соответствующий транспорт

Код: Выделить всё

spamcheck:
  driver = pipe
  batch_max = 100
  command = /usr/sbin/exim -oMr spam-scanned -bS
  current_directory = "/tmp"
  group = mail
  home_directory = "/tmp"
  log_output
  message_prefix = 
  message_suffix = 
  return_fail_output
  no_return_path_add
  transport_filter = /usr/bin/spamc -u ${lookup{$domain}lsearch*{/etc/virtual/domainowners}{$value}}
  use_bsmtp
  user = mail
  # must use a privileged user to set $received_protocol on the way back in!
т.е. экзим согласно этому транспорту не отсылает письма на сокет спам-демона, а вручную запускает для каждого отдельного письма отдельную версию спам-ассасина.

З.Ы.
Согласно докментации, нужно в ACL использовать ключевое слов spam для начала проверки на спам демоном. К примеру

Код: Выделить всё

deny message = This message was classified as SPAM
spam = joe

Правая сторона условия “spam” определяет имя пользователя, для которого SpamAssassin сканирует
http://www.lissyara.su/?id=1240
Опять скажем большое спасибо Лиссяре, за его тяжкий труд по переводу документации к EXIM'у