? Логировать smtp сессию Exim'a в mysql

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Гость
проходил мимо

? Логировать smtp сессию Exim'a в mysql

Непрочитанное сообщение Гость » 2008-04-16 13:07:41

(Настройка почтовых систем у меня впервые)
Схема dovecot+exim+(clamav+spamassasin+mysql+apache1)
Суть вопроса, нам (не мне 8) ) нужно полностью писать smtp сессию экзима, дабы ни одно ценное письмо (а так же горы спама) не прошло мимо нас, т.е. перед условиями отбора на антивирус и всеми остальными правилами.
Развернуто:
1. каким способом (желательно внутреЭКЗИМОВСКИМ) сделать лог входящего смтп (т.е. нам) соединения и класть его в базу.
2. При проверке на clamav если письмо с вирусом, то отправляеющему ничего не отправлять,а внутреннему адресу сообщить что аткой то такойто вам слал это..
3. Можно ли (и если да то как), настроить экзим и довекот полностью на работу в базе. т.ею аналог dbmail сделать. чтобы никаких директорий на диске.
Проделовать за себя всю работу не прошу( хотя на деле так может выйти).. просто укажите куда копать. ибо работа в настройке встала. Заранее благодарен

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Re: ? Логировать smtp сессию Exim'a в mysql

Непрочитанное сообщение dikens3 » 2008-04-16 16:20:03

Гость писал(а):1. каким способом (желательно внутреЭКЗИМОВСКИМ) сделать лог входящего смтп (т.е. нам) соединения и класть его в базу.
У меня так:

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

MYSQL_LOGHELOMYBLOCK    = INSERT INTO `log`(`action`,src_ip,src_email,dst_email,helo,hostname,date,time) VALUES (16,'$sender_host_address',LCASE('$sender_address'),'$local_part@$domain','$sender_helo_name','$sender_host_name',CURDATE(),now())

acl_smtp_rcpt:
# Прибиваем, если HELO совпадает с нашими шаблонами блокировок
  deny    message       = Your are blocked in HELO/EHLO - access denied.
          !senders      = :
          condition     = ${if match{$sender_helo_name}{.orange.|.wanadoo.|dynamic|.vhonest.}{yes}{no}}
          set acl_m19   = ${lookup mysql{MYSQL_LOGHELOMYBLOCK}}
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35297
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: ? Логировать smtp сессию Exim'a в mysql

Непрочитанное сообщение Alex Keda » 2008-04-17 8:44:59

2 дикенс
http://www.lissyara.su/?id=1209#9.9
и выпонить рекомендации
а то при желании можно и базу твою дропнуть
Убей их всех! Бог потом рассортирует...

Аватара пользователя
70n0ff
ефрейтор
Сообщения: 55
Зарегистрирован: 2008-04-16 12:50:55

Re: ? Логировать smtp сессию Exim'a в mysql

Непрочитанное сообщение 70n0ff » 2008-04-17 10:10:40

Спасибо за помощь, эт я темку сделал просто не понял почему гостём.
Сейчас (так как можно завязать на базу почти все) буду эксперементировать.
Такой вопросик.
Какую базу использовать на серваке Xenon 2x процессорном?
Mysql or postgress?
ПРо первый прочел, что он второй процессор почти не использует, а вот про прогресс програмисты(свои) то же что то полчат..
И последние, так как с линухов пересаживаюсь на BSD (не понимаю зачем но влечет чето), понял, что тут все не просто, есть FreeBSD, OpenBSD, NetBSD, DragonFlyBSD.
ИЗначальную их ориентацию я понял, мне конкретно для почты какую ставить и для прокси?
По форумам прошел, грят что FreeBSD внедряет нароботки Open? тогда вопрос может сразу опен ставить.
Буду рад если дадите ссылк на дискусси, но мне важно ваше мнение. Пока себе поставил FreeBSD 7 - proxy. Но просто если есть лучше операционка дл яэтой задачи то че тупить. Вот такая просьба. Просветить мне насчет этого.

Аватара пользователя
70n0ff
ефрейтор
Сообщения: 55
Зарегистрирован: 2008-04-16 12:50:55

Re: ? Логировать smtp сессию Exim'a в mysql

Непрочитанное сообщение 70n0ff » 2008-04-17 13:39:38

Подскажите, что бы всё письмо записать в базу как сделать? $message ? или как? А то заголовок, даты. кароче лог нормально а вот само б письмо

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Re: ? Логировать smtp сессию Exim'a в mysql

Непрочитанное сообщение dikens3 » 2008-04-17 14:58:55

Пример использования message_body:
http://forum.lissyara.su/viewtopic.php?f=20&t=8187
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Аватара пользователя
70n0ff
ефрейтор
Сообщения: 55
Зарегистрирован: 2008-04-16 12:50:55

Re: ? Логировать smtp сессию Exim'a в mysql

Непрочитанное сообщение 70n0ff » 2008-04-18 8:53:34

Все работает. только ,в база пополняется, одно но, тест сообщения($message_body) 505 символов, даже и не знаю что делать.... копаюс.

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35297
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: ? Логировать smtp сессию Exim'a в mysql

Непрочитанное сообщение Alex Keda » 2008-04-18 10:05:18

в переменной не всё сообщение.
курите доку
Убей их всех! Бог потом рассортирует...

Аватара пользователя
70n0ff
ефрейтор
Сообщения: 55
Зарегистрирован: 2008-04-16 12:50:55

Re: ? Логировать smtp сессию Exim'a в mysql

Непрочитанное сообщение 70n0ff » 2008-04-21 6:50:49

Подсказать доки можите? я в оригинале уже фак прочел..

НАшел след инфу
$message_body
This variable contains the initial portion of a message’s body while it is being delivered, and is
intended mainly for use in filter files. The maximum number of characters of the body that are put
into the variable is set by the message_ body_ visible configuration option; the default is 500.
Newlines are converted into spaces to make it easier to search for phrases that might be split over
a line break. Binary zeros are also converted into spaces.
$message_body_end
This variable contains the final portion of a message’s body while it is being delivered. The
format and maximum size are as for $message_body.

message_ body_ visible= поставил значение по больше, но как мне кажется не так должна решатся проблема