Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » FAQ по Exim MTA

Модерирует : lynx, Crash_Master, dg, emx, ShriEkeR

ShriEkeR (16-05-2011 18:50): FAQ по Exim MTA #2  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102

   

ginger



Рыжик
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Текущая версия Exim 4.72

   Home page Автор Philip Hazel, University of Cambridge.
Exim - чертовски быстр, отличный выбор для загруженных систем. Свободно распространяемый Mail Transport Agent (MTA, лицензия GPL), обладающий возможностью очень гибкой и тонкой настройки, включая поиск конфигурационной информации в базах данных - mySQL, PostgresQL, Oracle, SQLite.., а также LDAP.  В Exim встроена поддержка Maildir (quota), SMTP-аутентификация, TLS/SSL, SpamAssassin, сканирование на лету антивирусом(ами), ACL, системные фильтры... Сомневающимся.
На многие вопросы помогут найти ответы рассылки: На русском + На английском
Документация на русском по Exim + много полезной инфы на www.lissyara.su

Установка почтового сервера на базе Exim с поддержкой виртуальный аккаунтов (MySQL).
Подробное руководство состоит из двух связанных частей:
   1. Установка и настройка Exim 4.20.
   2. Установка  и настройка Tpop3d с поддержкой виртуальных аккаунтов.
Внимательно читаем здесь © ginger
-=-=-=-
Улучшенный вариант части 1: Exim-4.50 + MySQL © ginger
-=-=-=-
Так как Tpop3d не совместим с MS Outlook Express 6, а также не поддерживает IMAP, автор рекомендует его заменить на Dovecot. Изменения, которые нужно сделать cмотрим здесь © ginger
-=-=-=-
Еще один вариант установки © Wombat
-=-=-=-
Exim+Courier-Imap+MySQL+ClamAV+DSPAM+SquirrelMail © Павел Семенец Искать по ctrl+F=Павел Семенец
-=-=-=-
Опции для сборки exim из портов (FreeBSD) © tankistua
 
Уважаемые коллеги!
 
Нам очень дороги ваши конфиги и логи на несколько страниц, но, поверьте, их гораздо приятнее читать когда они заключены в тэг more.

Всего записей: 854 | Зарегистр. 03-09-2001 | Отправлено: 10:58 29-08-2003 | Исправлено: hoochie, 22:55 16-12-2010
fd254



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YakonНу роутер, скорее всего будет такой.  

Код:
 
spamd_router:
        no_verify
        driver                      = accept
        user = Debian-exim
        group = mail
        condition                   = ${if and{{def:spam_score_int}{>{$spam_score_int}{40}}}{yes}{no}}
        transport                   = spamd_delivery
        cannot_route_message        = Unknown user
 

 
А транспорт например такой  
 

Код:
 
spamd_delivery:
        driver = appendfile
        check_string = ""
        create_directory
        delivery_date_add
       directory = /home/vmail/mydomain2/ папка усера spam@mydomain2.ru
        directory_mode = 770
        envelope_to_add
        group = mail
        maildir_format
        maildir_tag = ,S=$message_size
        message_prefix = ""
        message_suffix = ""
        mode = 0660
        return_path_add
 

 

Всего записей: 142 | Зарегистр. 07-02-2003 | Отправлено: 17:32 11-12-2006 | Исправлено: fd254, 17:34 11-12-2006
DarkHost



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Скорее вот так:
 
spamd_router:
    driver = accept
    condition = ${if >{$spam_score_int}{60}{1}{0}}
    transport = spamd_delyvery
 
 
spamd_delivery:
    driver = appendfile
    check_string = ""
    create_directory
    delivery_date_add
    directory = /home/$domain/$local_part/Spam
    directory_mode = 770
    envelope_to_add
    user = exim
    group = mail
    maildir_format
    maildir_tag = ,S=$message_size
    message_prefix = ""
    message_suffix = ""
    mode = 0640
 
Дело в том, что, если ты укажешь no_verify, то тебе столько папок наделается, что ты прозреешь. Прочитай сначала, для чего оно нужно.

Всего записей: 189 | Зарегистр. 01-08-2005 | Отправлено: 18:58 11-12-2006 | Исправлено: DarkHost, 19:00 11-12-2006
Yakon

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Спасибо за советы.
В итоге получилось следущее:
В таблицу spamd в mysql заношу домены, в которых такое перенаправление необходимо.
 
роутер
dovecot_user_spamd:
  driver = accept
  condition = ${if and{{and{{def:spam_score_int}{>{$spam_score_int}{40}}}}\
              {eq{}{${lookup mysql{SELECT `domain` FROM `spamd` \
              WHERE `domain`='${quote_mysql:@$domain}'}}}}}{yes}{no}}
  transport = dovecot_delivery_spamd
 
транспорт
dovecot_delivery_spamd:
  driver = appendfile
  group = mail
  check_string = ""
  message_prefix = ""
  message_suffix = ""
  create_directory
  delivery_date_add
  directory_mode = 770
  envelope_to_add
  directory = /var/mail/exim/${lookup mysql{SELECT \
              `maildir` FROM `spamd` WHERE `domain` \
              = '${quote_mysql:$domain}'}}new/
 
Добавлено:
Ошибся.
Правило
eq{}{${lookup mysql{SELECT `domain` FROM `spamd` \  
              WHERE `domain`='${quote_mysql:@$domain}'}}}}
срабатывает всегда.
В чём ошибка?

Всего записей: 162 | Зарегистр. 11-01-2004 | Отправлено: 21:07 11-12-2006
darkomen



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
warn  message = X-Spam-Score: $spam_score ($spam_bar)
          condition = ${if <{$message_size}{50k}{1}{0}}
          hosts = ! 127.0.0.1 : ! 192.168.5.0/24
          spam    = mail:true
 
А вот почему проверяет всеравно большое входящее письмо , не смотря на ограничение 50к ? Я смотрю в топе при получении ввходящего письма асасин начинает напрягаться, хоте не должен ведь по идее?

Всего записей: 272 | Зарегистр. 26-08-2003 | Отправлено: 10:35 12-12-2006
DarkHost



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Почему ты не думаешь, что делаешь? Ты в кондишне роутера должен проверять не существование домена, а существование пользователя. Прикинь, что произойдет, если я тебе пришлю 10000000 писем с адресами aaaa@domain,aaab@domain,...,xxxx@domain. У тебя роутер ровно столько раз отработает и насоздает 10000000 папок. Поэтому в роутере проверяй наличие пользователя. Вот абсолютно рабочий роутер с транспортом, он работает у меня:
 

spamd_router:
    driver = accept
    condition = ${if and{{!eq{} {${lookup mysql{SELECT home FROM users WHERE id='${local_part}' AND mbox_host='${domain}' AND active='Y'}}}}{and{{def:spam_score_int}{>{$spam_score_int}{60}}}}}{1}{0}}
    transport = spamd_delivery
 
spamd_delivery:
    driver = appendfile
    check_string = ""
    create_directory
    delivery_date_add
    directory = ${lookup mysql{SELECT CONCAT(home, "/Spam") FROM users WHERE id='${local_part}' AND mbox_host='${domain}'}}
    directory_mode = 770
    envelope_to_add
    user = exim
    group = mail
    maildir_format
    maildir_tag = ,S=$message_size
    message_prefix = ""
    message_suffix = ""
    mode = 0640
    quota = ${lookup mysql{SELECT quota FROM users WHERE id='${local_part}' AND mbox_host='${domain}'} {${value}M}}
    quota_size_regex = S= (\d+)$
    quota_warn_threshold = 75%
    return_path_add

 
Тебе нужно лишь в транспорте исправить путь. У меня спамовые письма кладутся в домашнюю директорию пользователя, в подпапку Spam. Ты же можешь экспериментировать с путями.

Всего записей: 189 | Зарегистр. 01-08-2005 | Отправлено: 10:39 12-12-2006 | Исправлено: DarkHost, 10:41 12-12-2006
G_R



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
привет!
 
если какая прога для анализа логов ексима? типа кто чего и куда отправлял, какие ошибки были.

Всего записей: 38 | Зарегистр. 07-09-2006 | Отправлено: 10:50 12-12-2006
Yakon

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
DarkHost

Цитата:
Почему ты не думаешь, что делаешь? Ты в кондишне роутера должен проверять не существование домена, а существование пользователя. Прикинь, что произойдет, если я тебе пришлю 10000000 писем с адресами aaaa@domain,aaab@domain,...,xxxx@domain. У тебя роутер ровно столько раз отработает и насоздает 10000000 папок.

см. мой первый пост.
У меня совсем другая задача.
Письма с $spam_score_int > 30 складировать в общую для всего домена папку для спама.
А в eq{}{${lookup mysql{SELECT `domain` FROM `spamd` \  
              WHERE `domain`='${quote_mysql:@$domain}'}
я хочу проверять включено ли такое правило для домена.
Если да, то складируются письма, если нет, то следующий роутер.
А письма для несуществующих пользователей я ранее могу отсекать, если понадобиться или это правило модернизировать.
Сейчас не это важно.
Это правило не работает, оно одинаково реагирует, если домен есть в таблице и если его нет.
В таблице у меня запись mydomain2.ru spam@mydomain2.ru
Роутер срабатывает и для записи mydomain3.ru, хотя такой записи нет в таблице.

Всего записей: 162 | Зарегистр. 11-01-2004 | Отправлено: 11:18 12-12-2006 | Исправлено: Yakon, 11:22 12-12-2006
hoochie



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
если какая прога для анализа логов ексима?  

eximstats

----------
Раньше у нас было время
Теперь у нас есть дела...

Всего записей: 434 | Зарегистр. 30-03-2003 | Отправлено: 12:06 12-12-2006
theBah

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Для анализа логов используем exilog: http://duncanthrax.net/exilog/
работает почти год, в момент подчистки базы слегка тормозит систему (на несколько секунд), но это ночью и заметно только для мониторинга

Всего записей: 12 | Зарегистр. 06-01-2005 | Отправлено: 13:55 12-12-2006
AnGo



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
hoochie
За намбер ван - спасибо, работает.
 
Рекомендация намбер ту не помогла, я наверное по пояс деревянный. Покажи пальцем где и что надо прописать.

Всего записей: 1078 | Зарегистр. 07-07-2002 | Отправлено: 09:01 13-12-2006
darkomen



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Господа к проблеме о работе ассасина в логе екзима  
2006-11-30 09:49:00 1Gpfj6-0002qq-3r spam acl condition: cannot parse spamd output
2006-11-30 10:00:03 1Gpftm-0002s1-U7 spam acl condition: cannot parse spamd output
2006-11-30 10:12:21 1Gpg50-0002vQ-T6 spam acl condition: cannot parse spamd output
2006-11-30 10:27:30 1GpgKK-00031C-39 spam acl condition: cannot parse spamd output
 
в логе асасина  
 
Dec 13 11:39:49 mx spamd[12801]: spamd: connection from localhost.dtb.ru [127.0.0.1] at port 54950
Dec 13 11:39:49 mx spamd[12801]: spamd: checking message <08db01c71e91$332c6a7e$b9483840@barbf.com> for mail:1003
Dec 13 11:39:53 mx spamd[889]: spamd: handled cleanup of child pid 12801 due to SIGCHLD
Dec 13 11:39:53 mx spamd[889]: prefork: child states: I
Dec 13 11:39:53 mx spamd[889]: spamd: server successfully spawned child process, pid 13152
 
Чтобы это означало всё??

Всего записей: 272 | Зарегистр. 26-08-2003 | Отправлено: 12:36 13-12-2006
AnGo



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
darkomen
Ошибка в 17 строке.
А если серьезно, приведи конфиг ассасина.  
Тогда м/б, что-нить и скажем.

Всего записей: 1078 | Зарегистр. 07-07-2002 | Отправлено: 16:05 13-12-2006
alexpogodin



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Уважаемые!
 
Я уже задавал вопрос, но так ответа и не получил. Беспокоит следующая проблема. Когда письма отправляются с помощью почтовой программы, то все происходит нормально. Однако, когда пытаемся отправить почту из скрипта вызываемого апачем, происходит следующее: заголовок From выставляется как и полагается в установленное значение (например webmaster@example.com), но добавляется заголовок Return-path вида www@www.example.com.  
 
Уж очень напрягает такое поведение Exim-а. При этом, проблема появилась после миграции на новый сервер, конфиг Exim-а был снят со старого практически без изменений. Но на старом сервере такие заголовки НЕ добавлялись, а тут - да.
 
Подскажите где чего подкрутить. Уж замаялся. Готов выложить конфиг, если такой ситуации никто не встречал...
 
С уважением.

Всего записей: 35 | Зарегистр. 28-06-2004 | Отправлено: 15:01 14-12-2006
tankistua

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
в системных фильтрах переписывать заголовок в соотвествие с From.
 
if      
        $message_headers contains Return-path
then
        headers remove "Return-path:"
        headers add "Return-path: $h_From"
endif
 
 
примерно вот так. Победить другим способом мне не удалось.
 
З.Ы. или втупую в роутере выреай заголовок Return-path - он не нужен для ответа, для ответа будет использоваться поле фром

Всего записей: 9572 | Зарегистр. 15-01-2002 | Отправлено: 15:28 14-12-2006
autopilot

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alexpogodin
У нас это в PHP проявлялось. Тогда лечится  
mail($emailto, $subj, $body, $head, " -f webmaster@example.com");
и в конфиге EXIM добавить  
trusted_users = apache
 

Всего записей: 8 | Зарегистр. 21-01-2006 | Отправлено: 16:11 14-12-2006
G_R



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
привет всем!
 
кто как поступает с логами ексима и довекота? т.е. растут они до бесконечности или их надо чистить ручками? а можно ли чтоб они складывались, например, по неделям или месяцам?

Всего записей: 38 | Зарегистр. 07-09-2006 | Отправлено: 17:20 14-12-2006
tankistua

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
http://www.exim.org/exim-html-4.63/doc/html/spec_html/ch48.html#SECTwhelogwri
 
P.S. я все складываю в папочку - на всякий случай.

Всего записей: 9572 | Зарегистр. 15-01-2002 | Отправлено: 18:16 14-12-2006
kornell

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Выложите пожалуйста кому не жалко рабочие конфигурации Exim, который работает в связке с MySQL...
Хочется сравнить, посмотреть... А то много недоделок в конфигурации от Ginger...

Всего записей: 102 | Зарегистр. 11-01-2006 | Отправлено: 16:43 18-12-2006
G_R



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Выложите пожалуйста кому не жалко рабочие конфигурации Exim, который работает в связке с MySQL...  
Хочется сравнить, посмотреть... А то много недоделок в конфигурации от Ginger...  

 
за основу взял конфиг от Вомбата. обнавленный от Джинджер я пока не ставил - не разобрался с ним
Подробнее...

Всего записей: 38 | Зарегистр. 07-09-2006 | Отправлено: 09:47 19-12-2006
G_R



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
можно ли как то сделать, чтобы каждый вечер лог давекота переименовывался на подобии логов ексима?

Всего записей: 38 | Зарегистр. 07-09-2006 | Отправлено: 17:21 19-12-2006
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102

Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » FAQ по Exim MTA
ShriEkeR (16-05-2011 18:50): FAQ по Exim MTA #2


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru