список доменов

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

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
ban
мл. сержант
Сообщения: 145
Зарегистрирован: 2009-07-22 22:36:29
Откуда: г.Волжский Волг. обл.

список доменов

Непрочитанное сообщение ban » 2010-06-24 13:58:31

В начале сосредотачения над конфигурационным файлом Exim.
И сразу же в тупик меня поставило то, что у кого не глянь у всех ошибка в конфиге.

Все началось с того, что я почитал 11.9 Переменные раскрытия, в частности о том, что есть переменная $domain и во что она расскрывается.

--------------------------------------
Список ошибочных выборок (по-моему неавторитетному мнению):
Красным цветом выделена часть условия запроса к БД, которая как мне кажеца ошибочна.

Март 2005, версия ginger:
domainlist local_domains = @ : @[] : localhost : MAILNAME : ${lookup mysql{SELECT domain FROM domains WHERE domain='${domain}' AND (type='LOCAL' OR type='VIRTUAL')}}
Январь 2006, версия из журнала сисадмин, автор Павел Семенец:
domainlist local_domains = ${lookup mysql{SELECT domain FROM domains WHERE domain='${domain}' AND (type='LOCAL' OR type='VIRTUAL')}}
Июль 2008, версия уважаемого Aleksey L Keda (со статьи exim + dovecot):
domainlist local_domains = ${lookup mysql{SELECT `domain`FROM `domain` WHERE `domain`='${domain}' AND `active`='1'}}
--------------------------------------

Если предположить, что в момент начала обработки письма, Exim перечитывает конфиг и составляет список local_domains, то в этом случае в переменную local_domains в идеале возвратится результат не более чем с одним доменом и НИКОГДА не будет возвращен список доменов..... Т.е. включение в условие запроса строки `domain`='${domain}' - катастрофически не правильно :)
Мне даже страшно за почтари, которые работают на конфиге с такой выборкой за списком локальных доменофф.
============================

Размышления мои пока чисто теоретические, до первого пробного запуска экзима осталось 1-3 дня.
Пока считаю, что олень все-таки я, ибо как говорит Леночка: "Миллион мух не могут ошибатЬся".....
Поэтому опровергните пожалуйста кто понимает о чем я речь веду и кому не положитЬ....
кто никуда не торопится, тот везде успевает

Хостинговая компания 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/

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: список доменов

Непрочитанное сообщение hizel » 2010-06-24 14:02:39

америку типа открыл http://forum.lissyara.su/viewtopic.php? ... 53&start=0
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

_Менделеев
проходил мимо

Re: список доменов

Непрочитанное сообщение _Менделеев » 2010-06-24 14:22:43

эт че получаеца... я не Олень?.... :cz2: медиана между Побухать и НЕ Побухать резко сместилась в сторону Побухать

еще какие-то tr и sg..... как все сложно....

дядя hizel категорически благодарю за направление, выпей водки.

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: список доменов

Непрочитанное сообщение hizel » 2010-06-24 14:24:19

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

_Гагарин
проходил мимо

Re: список доменов

Непрочитанное сообщение _Гагарин » 2010-06-24 14:28:41

эт почему же не надо?
сранно...
я же спросил номально вроде, развернуто спросил. Пока спрашивал меня не отпустило, если бы отпустило, то я значит сам бы догадался, а раз я нажал отправить, значит вопрос у меня остался.
И если это в твоих силах, то почему бы не помочЬ человеку.

Хотя... а че Хотя-то?..

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

Re: список доменов

Непрочитанное сообщение dikens3 » 2010-06-24 23:51:35

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

# Список доменов
MYSQL_DOMAINS           = SELECT domain FROM domain WHERE transport = 'virtual' AND active='1'

# Наши домены ( @ - домен нашего компьютера)
domainlist local_domains = @ : ${sg{${lookup mysql{MYSQL_DOMAINS}}}{\n}{:}}
Я вообще думал что у меня баг с sender_domains
http://forum.lissyara.su/viewtopic.php? ... 26&start=0
Вообще все, кто копается с Exim, всегда находят такую проблему, что приятно.
Мне даже страшно за почтари, которые работают на конфиге с такой выборкой за списком локальных доменов.
Не переживайте, там всё нормально работает, кроме sender_domains.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: список доменов

Непрочитанное сообщение hizel » 2010-06-25 0:10:23

при таком кол-ве скобочек и правил раскрытия почему Гейзел не уклонился окончательно в функциональщину, хотя бы лямбды воткнул :)
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

_Гагарин
проходил мимо

Re: список доменов

Непрочитанное сообщение _Гагарин » 2010-06-28 7:49:55

думаю, но вот правильный же конфиг... никаких domain='${domain}' нет, все ништяк
а письма в локальный домен reject'яца

запустил так:

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

exim -d bt ящик@локльный
и вижу, что когда выборка вернула список моих локальных доменов (каждый с новой строки) - exim не нашел локальный домен в списке, в котором он был :)

потом я еще раз перечитал свой вопрос на форуме и понял как надо исправить.

вот за это:
dikens3 писал(а):

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

domainlist local_domains = @ : ${sg{${lookup mysql{MYSQL_DOMAINS}}}{\n}{:}}
огромное спасибо. съэкономил мне мыслительную электроэнергию