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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
Kaasius

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

Цитата:
Kaasius  
не правильный совет - толку от того, что ты его носом ткнул в конфиг не будет никакого - он скопипастит, а думать и понимать конфиг не начнет.

 
Ну судя по вопросу что такое регулярные выражения он не знает, а то б давно нашел. И жизнь ведь состоит не только из понимания конфигов. Я вот сутки уж читаю и конфиг, и конфу, думаю, экспериментирую, на боевом сервере пересобираю эксим и конфиг правлю - не пойму никак в чем соль. Не дергает у меня эксим спамасасина. Телнетом он дергается, сам SA работает, with_content_scan="YES" - не пашет, как ни стараюсь. Если б меня кто-то носом ткнул - был бы счастлив. А если б предложили читать конфиг и думать, наверное послал бы. Потому что если можно задать вопрос, то это имеет смысл только при получении легитимного ответа. А если нельзя задавать вопросов - то чего тут 73 страницы написано тогда?

Всего записей: 3 | Зарегистр. 27-06-2008 | Отправлено: 14:36 27-06-2008
idiMAN

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Kaasius
 
“local_parts” = “<local part list>”
   Это условие доступно лишь после команды RCPT. Оно проверяет что локальная часть адреса получателя находится в списке. Если включена обработка символа процента, она завершется до этого теста. Если проверка успешна путём поиска, результат поиска помещается в “$local_part_data”, которая остаётся установленной до следующего теста “local_parts”.
 
А мне нужно проверить отправителя.
 
Сделал так:
 
deny senders = ^[|]
 
Не совсем уверен что правильно, т.к. на одном из сайтов прочитал что ^ в данном случае обозначает что следует регулярное выражение, а никак не совпадение с началом строки.  
 
P.S. И ещё - регулярные выражения я как раз знаю, но они их реализация отличается. Взять хотя бы для сравнения Perl и PHP.

Всего записей: 466 | Зарегистр. 05-05-2003 | Отправлено: 14:56 27-06-2008 | Исправлено: idiMAN, 16:19 27-06-2008
tankistua

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
idiMAN
  deny    message       = Restricted characters in address
          domains       = +local_domains
          local_parts   = ^[.] : ^.*[@%!/|]
 
  deny    message       = Restricted characters in address
          domains       = !+local_domains
          local_parts   = ^[./|] : ^.*[@%!] : ^.*/\\.\\./
 
 
вот 2 ацл-я, которые отвечают за локальную часть адреса, они дефолтные - если их не убирать, то этого дотаточно для непринятия всех писем не соответствющих рфц
 
 
что не получается ?
 

Всего записей: 9572 | Зарегистр. 15-01-2002 | Отправлено: 14:08 28-06-2008 | Исправлено: tankistua, 14:26 28-06-2008
idiMAN

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

Цитата:
 
Подскажите пожалуйста, какое условие нужно прописать в ACL, чтобы отбрасывались письма у которых адрес отправителя начинается с символа "|" ?  
 

 
Приведённые тобой строчки из конфига действуют только на адрес получателя, т.к. согласно 39.20 Условия ACL,

Цитата:
 
“domains” = “<domain list>”
   Это условие уместно лишь после команды RCPT. Оно проверяет, что домен получателя - в списке доменов.
 
“local_parts” = “<local part list>”
   Это условие доступно лишь после команды RCPT. Оно проверяет что локальная часть адреса получателя находится в списке.
 

 
Для моего же случая идеально подходит  
deny    message       = Restricted characters in address
           senders = ^[|]
т.к.

Цитата:
 
“senders” = “<address list>”
   Это условие тестирует отправителя сообщения по данному списку.
 

 
В любом случае спасибо за ответы, т.к. это подвигло меня на более пристальное изучение принципов работы ACL в Exim.

Всего записей: 466 | Зарегистр. 05-05-2003 | Отправлено: 12:18 29-06-2008
kid79

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
уважаемые форумчане, столнулся с такой проблемой.
Ставлю почтовик на debian etch
mail2:~# dpkg -l | grep exim
ii  exim4                             4.63-17  
 
mail2:~# dpkg -l | grep dovecot
ii  dovecot-common                    1.0.rc15-2etch4                      secure mail server that supports mbox and ma
ii  dovecot-imapd                     1.0.rc15-2etch4                      secure IMAP server that supports mbox and ma
ii  dovecot-pop3d                     1.0.rc15-2etch4                      secure POP3 server that supports mbox and ma
 
конфиг exim-а от ginger Улучшенный вариант части 1: Exim-4.50 + MySQL  
 
есть небольшие изменения в дампе базы
Подробнее...
в debian это выглядит так mail:x:8:8:mail:/var/mail:/bin/sh
 
добавляю пользователя
Подробнее...
пишу тестовое письмо
echo "my test" | mail -s "test message" kid
 
смотрю /var/log/exim4/mainlog
Подробнее...
пытаюсь забрать почту аутлуком
имя пользователя kid@fotonx.ru? нажимаю забрать почту , в суслоге вижу сообщение
Подробнее...
в чем могут быть грабли?
еще пара вопросов до кучи, прикручивал ли кто нибудь Postfixadmin для управления учетками пользователей ( мне она очень понравилась).. как можно модифицировать дамп ginger чтоб можно было работать  через постфиксадмин..
 
 
Добавлено:
конфиг dovecot
Подробнее...
 
dovecot-dql.conf
Подробнее...
 
password_query = SELECT crypt FROM users WHERE userid = '%n' AND domain = '%d' AND active = 'Y'
user_query = SELECT home, uid, gid FROM users WHERE userid = '%n' AND domain = '%d'
 если в этих запросах убрать AND domain при авторизации можно будет указывать только имя пользователя без @domain_name?

Всего записей: 6 | Зарегистр. 11-10-2007 | Отправлено: 17:52 29-06-2008
idiMAN

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день!
 
У меня в system_filter настроена пересылка определённых сообщений в один архив, рассылок - в другой, а всей остальной почты - в третий, но проблема в том, что эти письма приходят в архив не в еденичном экземпляре, а по 2-3 копии и в чём проблема я не могу понять. Может кто-нибудь прояснит?
 
Вот что у меня в system_filter:

Цитата:
 
# Exim system_filter
 
#mydomain
if foranyaddress "$sender_address , $recipients"
        ($thisaddress matches @mydomain\\.ru\$)
then
        unseen deliver archie@mydomain.ru errors_to postmaster@mydomain.ru
        finish
endif
 
# mail lists
if "${lookup{$sender_address} nwildlsearch {/var/db/mail/sender_maillist} {yes}{no}}" is yes
then
        unseen deliver archie_lists@mydomain.ru errors_to postmaster@mydomain.ru
        finish
endif
 
# another all
if foranyaddress "$sender_address , $recipients"
        ($thisaddress does not match @mydomain\\.ru$)
then
        unseen deliver archie_all@mydomain.ru errors_to postmaster@mydomain.ru
endif
 
###
 

Всего записей: 466 | Зарегистр. 05-05-2003 | Отправлено: 16:24 02-07-2008 | Исправлено: idiMAN, 16:26 02-07-2008
MakleKing

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Где в Exim-е указать внешние почтовые ящики, с которых я хочу забрать почту и хранить ее в Exim-e?

Всего записей: 32 | Зарегистр. 05-07-2005 | Отправлено: 17:49 07-07-2008
tankistua

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MakleKing
Экзим не забирает почту - учите матчасть.
 
idiMAN
я бы попробовал закамментить по одному правилу и посмотрел бы на поведение экзима. В любом случае делать тебе - никто не будет разбираться в чужих тонкостях.

Всего записей: 9572 | Зарегистр. 15-01-2002 | Отправлено: 00:11 08-07-2008
idiMAN

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

Цитата:
В любом случае делать тебе - никто не будет разбираться в чужих тонкостях.

Да уж, действительно.
 
С проблемой разобрался, оказалось что дубликаты появлялись из-за того, что в Exim`е настроен SpamAssassin по схеме через дополнительный роутер и транспорт. А в качестве транспорта выступал pipe, проходя через который письма снова попадали в system_filter.

Всего записей: 466 | Зарегистр. 05-05-2003 | Отправлено: 13:59 08-07-2008
Perimetrix

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день!
 
Борюсь с проблемой редиректа на заданный сервер.
Подскажите как можно реализовать следующий функционал:
Есть локальный пользователь - user@mydomain.ru
Как сделать так, чтобы письмо для пользователя user@mydomain.ru укладывалось локально, а так же его копия перенаправлялась на заданный smtp-server. Вариант с алиасами не подходит, т.к. имена идентичные
 
Я попробовал сделать, но не всеполучилось:
----
 
mailnic_router:
driver = manualroute
condition = ${if eq{$to}{user@mydomain.ru}{yes}{no}}
transport = mailnic
route_list = "mydomain.ru 111.11.11.111"
unseen = yes
-------------
mailnic:
    driver = smtp
    hosts = mail.ru
    hosts_require_auth = mail.ru
    hosts_require_tls = mail.ru
-------------
в логах ошибка:
2008-07-09 15:20:53 failed to expand condition "${if eq{$to}{user@maydomain.ru}{yes}{no}}" for mailnic_router router: unknown variable name "to"...
-------------
 
Подскажите, пожалуйста, как правильно реализовать данный функционал.

Всего записей: 3 | Зарегистр. 09-07-2008 | Отправлено: 16:47 09-07-2008
idiMAN

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Perimetrix
Попробуй вместо
Цитата:
condition = ${if eq{$to}{user@mydomain.ru}{yes}{no}}  

следующие два условия
domain = mydomain.ru
local_parts = user
 
или
 
condition = ${if match{$recipients}{user@mydomain\.ru}{yes}{no}}

Всего записей: 466 | Зарегистр. 05-05-2003 | Отправлено: 21:58 09-07-2008
Perimetrix

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Огромное спасибо.
Заработало по этим условиям

Цитата:
domain = mydomain.ru  
local_parts = user  

 
На второе опять в логах ошибка, что неизвестня переменная rcipients.

Всего записей: 3 | Зарегистр. 09-07-2008 | Отправлено: 11:30 10-07-2008
MakleKing

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

Цитата:
Экзим не забирает почту - учите матчасть.  

А чем тогда забирать почту и хранить ее у себя, затем отдавая ее пользователям?

Всего записей: 32 | Зарегистр. 05-07-2005 | Отправлено: 15:12 10-07-2008
idiMAN

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MakleKing
А ты напиши подробнее что ты хочешь сделать.
Из твоего предыдущего сообщения я понял, что у тебя на внешнем (не твоём) сервере есть несколько почтовых адресов, принадлежащих нескольким твоим локальным пользователям. И ты хочешь забирать с них (с этих адресов) почту и раздавать тем же локальным пользователям но уже со своего внутреннего сервера.
 
Правильно?

Всего записей: 466 | Зарегистр. 05-05-2003 | Отправлено: 16:23 10-07-2008
kid79

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
народ тут как то плешков обещался выложить админку для эксима, кто нито видел ее ?? если есть поделитесь, заранее благодарен.
сейчас пробую перепелить админку от постфикс.. но с пхп как то не очень дружу.

Всего записей: 6 | Зарегистр. 11-10-2007 | Отправлено: 09:58 11-07-2008
theBah

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А чем в качестве "админки" не устраивает Virtual Exim (http://silverwraith.com/vexim/)?
Я использую полную версию у одного провайдера. Также сделал урезанный по интерфейсу вариант (без виртуальных доменов и возможности отключения антивируса/антиспама) для корпоративных серверов.

Всего записей: 12 | Зарегистр. 06-01-2005 | Отправлено: 15:05 13-07-2008
kid79

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
тем что надо перелапачивать код vexim чтоб подогнать под структуру таблиц ginger -)

Всего записей: 6 | Зарегистр. 11-10-2007 | Отправлено: 13:42 14-07-2008
mas73r

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый вечер!
 
Неподскажите как реализовать на exim запрещение внешней почты с указанием собственным домена в качестве отправителя.
 
например:
   helo somehost
   mail from: me@mydomain.ru
   rcpt to: me@mydomain.ru
  data
 
Т.е. когда почта принимается с любого IP адреса.
 
Спасибо.

Всего записей: 1 | Зарегистр. 28-05-2007 | Отправлено: 19:04 14-07-2008
theBah

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

Цитата:
тем что надо перелапачивать код vexim чтоб подогнать под структуру таблиц ginger -)

 
А использовать структуру из Vexim'а не судьба?
dovecot вместо courier-imap приделавается на раз-два.
 
все не дойдут руки до доделки скриптов по удалению папок удаленных аккаунтов.
не хватает очень нужной функции в админке - видеть текущий размер ящика и IP и время последнего захода юзера, чтобы вычислять дохлых. сейчас это руками делается периодически.

Всего записей: 12 | Зарегистр. 06-01-2005 | Отправлено: 04:41 15-07-2008
Arcana_Wizard



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Приветствую всех -)
У меня небольшая проблема, буду рад принять любой совет более опытного человека) Вводные: FreeBSD 6.3 /exim-4.69 /tpop3d /MySQL 5.0 /nginx
Сам exim работает идеально, настроен под релей по инструкциям многоуважаемой ginger) Огромное ей спасибо за исчерпывающую информацию)  
Любой pop3/IMAP сервер категорически отказывается работать в связке с exim - пробовал popa3d/tpop3d/dovecot. Остановился на tpop3d как на самом простом ( ну по крайней мере для меня ), 110 порт он слушает, приветствие выдаёт но на попытку авторизоваться паникует:  

Код:
 
[root@ts /usr/local/etc]# telnet localhost 110
Trying 127.0.0.1...
Connected to localhost.ufanet.ru.
Escape character is '^]'.
+OK <a3d6638ce7acd4b6c196045b3beb4f82@ts.ufanet.ru>
user test@relay.bilix.ru
+OK Tell me your password.
pass test
-ERR Lies! Try again!
 

Юзер test в базе присутствует, по SMTP авторизацию проходит. Файл конфигурации tpop3d:

Код:
 
listen-address:         0.0.0.0
max-children:           1024
log-facility:          mail
auth-mysql-enable:      yes
auth-mysql-mail-group:  mail
auth-mysql-hostname:    localhost
auth-mysql-database:    exim
auth-mysql-username:    exim
auth-mysql-password:    mypass
auth-mysql-pass-query:  SELECT CONCAT(home, '/Maildir'), \
                        CONCAT('{crypt}',crypt),'mail','maildir' \
                        FROM users WHERE id = '$(local_part)' \
                        AND mbox_host = '$(domain)' \
                        AND active = 'Y'
 

 
Как я понял у меня такая же проблема как на стр. 11 этого топика - exim работает от пользователя mailnull (дефолтовый юзер sendmail), просто у меня закипает моск от двухнедельной возни с этим серваком и я не понимаю куда мне надо вбить юзера mail о_О

Всего записей: 6 | Зарегистр. 15-07-2008 | Отправлено: 13:57 15-07-2008 | Исправлено: Arcana_Wizard, 11:29 16-07-2008
   

Страницы: 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