Ru-Board.club
← Вернуться в раздел «В помощь системному администратору»

» FAQ по Exim MTA #2

Автор: vlary
Дата сообщения: 23.09.2015 18:50
Smito1
Цитата:
1) Достаточно ли тут прописать новый 5 домен + создать его в exchange для работы?
Да.
Цитата:
Посылая запросы в ad как он проверяет данные? Где они прописаны в AD, не по логину же и паролю админа, не понимаю
Почему нет? Его дело выяснить наличие юзера.
А для этого нужен логин/пароль того, кто вправе делать эти запросы.
Цитата:
3)в статье указанно про sql, может ли exim работать без него?
Вполне может, sql используется для разных вспомогательных вещей.
Типа хранения списка юзеров, грейлистинг, всякие цветные списки для антиспама...


Автор: Smito1
Дата сообщения: 23.09.2015 19:02

Цитата:
Посылая запросы в ad как он проверяет данные? Где они прописаны в AD, не по логину же и паролю админа, не понимаю
Почему нет? Его дело выяснить наличие юзера.
А для этого нужен логин/пароль того, кто вправе делать эти запросы.

Тут вроде всё логично, НО
LDAP_AD_BINDDN = mail@domen.com это логин
LDAP_AD_PASS = password пароль
LDAP_AD_BASE_DN = DC=domen,DC=com и собственно домен

но как может быть пользователь указан не через домен\логин, а через почту? Вот чего не пойму
Причём почты этой не существует и пользователя mail темболее
Окей, допустим прошлый админ криво это настроил или удалил потом пользователя, как он работает без данных этих? Вот чего я не пойму
То ли у меня крыша поехала, то ли лыжи не едут)
Автор: vlary
Дата сообщения: 23.09.2015 19:41
Smito1 Ну вот тебе еще статейка, надеюсь, станет чуть яснее.
Exim as Exchange 2013 front-end server with AD authentication
Автор: Smito1
Дата сообщения: 24.09.2015 12:07
Понял вот что, если конечно правильно понял, если даже не настроен ldap exim пускает все письма в exchange и если нет такого пользователя, то exсhange пишет в ответ что его не существует, а если был бы настроен то exim бы посылал ответ, т.е. и так и так будет работать, но нагрузка с 1 вариантов на сервер exchange немного больше

Что то не могу найти команду что бы проверить работает ли ldap с AD или нет?

Если послать письмо на не созданного пользователя приходит такой ответ, если я правильно понял отвечает всё таки exchange, а не exim

Формирующий сервер: domen.ru

mail@domen2.com
#550 5.1.1 RESOLVER.ADR.RecipNotFound; not found ##

Исходные заголовки сообщения:

Received: from mx.domen.ru (10.0.1.5) by PDC.domen.local (10.0.1.4) with
Microsoft SMTP Server id 14.2.328.3; Wed, 23 Sep 2015 18:55:32 +0300
Received: from f418.i.mail.ru ([185.5.136.89]:39967)    by mx.domen.ru with
esmtp (Exim 4.77 (FreeBSD))    (envelope-from <почта@mail.ru>)    id
Автор: vlary
Дата сообщения: 24.09.2015 18:13
Smito1
Цитата:
Что то не могу найти команду что бы проверить работает ли ldap с AD или нет?
Вот тут описано: Ссылка
Проверяется с помощью самого Эксима

Цитата:
You can make use of Exim’s -be option to run expansion tests and thereby check the results of LDAP lookups
Автор: darkomen
Дата сообщения: 12.10.2015 16:06
Добрый день,

Подскажите как заставить екзим добавлять в письмо заголовок с оригинальным ипом отправителя?
Автор: vlary
Дата сообщения: 12.10.2015 19:04
darkomen
Цитата:
Подскажите как заставить екзим добавлять в письмо заголовок с оригинальным ипом отправителя?
О каком отправителе речь? Если о том, от кого Эксим получает письмо, то он там уже присутствует.

Код: Received: from forward11h.cmail.yandex.net ([87.250.230.153])
    by nss.soft.ru with esmtp (Exim 4.80.1)
    (envelope-from <pvk@yandex.ru>)
    id 1Zl8mL-00086d-Es
    for vlary@soft.ru; Sun, 11 Oct 2015 08:02:37 +0300
Автор: Smito1
Дата сообщения: 15.10.2015 18:11
Глупый вопрос, захожу на exim через телнет и 25 порт, как отправить письмо с него? То что в интернете пишут, говорит неверная команда, в факе ехима тоже что то найти не могу
Автор: vlary
Дата сообщения: 15.10.2015 19:43
Smito1
Цитата:
Глупый вопрос, захожу на exim через телнет и 25 порт, как отправить письмо с него?
Действительно глупый. А что именно пишут?
Стандартный SMTP обмен такой:

Код: $ telnet 10.1.1.1 25
Trying 10.1.1.1...
Connected to 10.1.1.1.
Escape character is '^]'.
220 ns.soft.ru ESMTP Exim 4.80.1 Thu, 15 Oct 2015 19:35:20 +0300
HELO me
250 ns.soft.ru Hello ns.soft.ru [10.1.1.1]
MAIL FROM:<info@soft.ru>
250 OK
RCPT TO:<vasya@mail.ru>
250 Accepted
DATA
354 Enter message, ending with "." on a line by itself
From: info@soft.ru
To: vasya@mail.ru
Subject: Test

This is test
.
250 OK id=1ZmlWY-0000en-I6
QUIT
221 ns.soft.ru closing connection
Connection closed by foreign host.
Автор: Smito1
Дата сообщения: 19.10.2015 13:55
vlary
спасибо тебе добрый человек, всё просто и понятно, что за ерунду я нашёл в интернет лучше промолчу, я просто думал что у exima свои команды, а не стандартные SMTP
Автор: vlary
Дата сообщения: 19.10.2015 16:45
Smito1
Цитата:
я просто думал что у exima свои команды, а не стандартные SMTP
Нет, все почтовые сервера и программы должны чтить RFC и предков.
Дабы понимать друг друга. Потому команды exima - стандартные SMTP,
а основные опции командной строки совместимы со старушкой sendmail.
Автор: BlackLabel
Дата сообщения: 23.10.2015 10:33
Ребята помгите с задачей ...

есть простой такой фильтр

if h_from: contains user@domain.com
then
unseen deliver "robot@domain.com"
endif

проблемма в том что пользователю user@domain.com надо дублировать письмо мнoгим адресатам и для этого он пишет все адреса в BCC и вот тут уже затык... как сделать копию писем на robot@domain.com со всех BCC адресов ?
Автор: vlary
Дата сообщения: 23.10.2015 12:11
BlackLabel
Цитата:
как сделать копию писем на robot@domain.com со всех BCC адресов ?
1. Нафига делать несколько копий одного письма?
2. Можешь использовать переменную $recipients, которая содержит все to, cc и bcc.
Обработай ее с помощью команды foranyaddress
Автор: Alukardd
Дата сообщения: 23.10.2015 12:23
BlackLabel
Ну во первых лучше указывать не $h_from, а $sender_address, ну это моё мнение.

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

Накидал без проверки работоспособности:

Код:
if foranyaddress $recipients: ( $thisaddress matches * )
then
if $h_from: contains user@domain.com
then
unseen deliver "robot@domain.com"
endif
endif
Автор: BlackLabel
Дата сообщения: 23.10.2015 13:48
vlary
Alukardd

Цитата:
Далее я не очень понимаю зачем Вам это потребовалось, ведь все письма будут одинаковыми, или т.о. ведётся учёт того кому письма были отправлены, так для этого есть лог


Получатель письма для robot@domain.com некая программа которая должна будет отвечать на все адреса..

Пытаюсь вникать в написанное , пока сложновато )) но не работает в моем случае и к тоу же ругаеться на
*
Error in system filter: error while compiling regular expression "*": nothing to repeat at offset 0
может версия старая ?
"dpkg -l | grep exim exim4 4.72-6+squeeze4"

Переделал на ( $thisaddress matches ".*" ) письмо подхватывает и отсылает на robot@domain.com

но доходит простой BCC , т.е. if foranyaddress $recipients: никуда не подставилось ?

Даже пробовал подставить в хедеры
headers remove "Bcc:"
headers add "Bcc: $recipients"

С токой конструкцией robot@domain.com получает список адресатов , но его так же получает и оригинальный получатель что неприемлимо ...
Автор: Alukardd
Дата сообщения: 26.10.2015 07:42
BlackLabel
Лучше условия, которые я написал поменять местами, что бы не гонять сервак по списку когда это не нужно:

Код:
if $h_from: contains user@domain.com
then
if foranyaddress $recipients: ( $thisaddress matches ".*" )
then
unseen deliver "robot@domain.com"
endif
endif
Автор: BlackLabel
Дата сообщения: 27.10.2015 11:30
Alukardd


К сожалению не работает , приходит одно письмо , что не так я уже и не знаю ... ((
Автор: vlary
Дата сообщения: 27.10.2015 11:57
BlackLabel
Цитата:
К сожалению не работает , приходит одно письмо ,  что не так я уже и не знаю
Ну так мы - тем более. Дебажь скрипт, пиши в лог переменные, смотри что не так.

Автор: redthnb
Дата сообщения: 25.11.2015 17:35
Настраиваю mail relay на Debian через Exim4. Письма, отправленные на @domain.com, приходят как и положено. Письма, где в адресате указан name@domain.com и, например, name@gmail.com натыкаются на relay not permitted. Как сделать так, чтобы при нескольких указанных адресатах письмо уходило на @domain.com, а на другие адреса нет? Куда смотреть?

/etc/exim4/update-exim4.conf.conf


Код:
dc_eximconfig_configtype='satellite'
dc_other_hostnames=''
dc_local_interfaces=''
dc_readhost='domain.com'
dc_relay_domains='domain.com'
dc_minimaldns='false'
dc_relay_nets='192.168.0.0/24, 192.168.10.0/16'
dc_smarthost='mail.domain.com::25'
CFILEMODE='644'
dc_use_split_config='false'
dc_hide_mailname='true'
dc_mailname_in_oh='true'
dc_localdelivery='mail_spool'
Автор: Alukardd
Дата сообщения: 26.11.2015 09:51
redthnb
Видимо надо убрать запрет на open relay из ACL и использовать headers_rewrite в соответствующем транспорте.
Help здесь. Не уверен что все получится, но так на вскидку не вижу невозможности.
Автор: Smito1
Дата сообщения: 26.11.2015 12:25
Ребят подскажите по ldap авторизации, что бы exim говорил что тут нет таких, а не exchange
имеется домен artline.local и EXIM 4.77 версии, нашёл примеры настройки старых версий, а у новых они отличаются
имя ldapreader в AD допустим

# макросы для работы с LDAP
LDAP_AD_BINDDN = Что должно быть? Поидее тут должен быть пользователь созданный в AD, просто пользователь без прав админа подойдёт? в 2008 нет гостей домена, а то в описание написано (создайте пользователя домена, обязательно определите ему группу "Гости домена", из всех других групп исключите)
LDAP_AD_PASS = password тут вроде понятно
LDAP_AD_BASE_DN = DC=artline,DC=local и тут


# макрос для проверки пользователей в домене
LDAP_AD_MAIL_RCPT = \
user=LDAP_AD_BINDDN \
pass=LDAP_AD_PASS \
ldap:/// и больше всего интересно что тут должно быть? Может кто то скинет свой рабочий конфиг, спасибо
Автор: redthnb
Дата сообщения: 26.11.2015 16:08
Alukardd
сомневаюсь, что для backup mx мне нужен open relay -.-
Автор: vlary
Дата сообщения: 26.11.2015 16:21
Smito1 Ты путаешь авторизацию и проверку наличия почтового ящика.
У меня юзеры вообще хранятся в локальной базе.
Но при желании можешь сделать скрипт синхронизации базы с АД
Автор: Alukardd
Дата сообщения: 26.11.2015 16:36
redthnb
Он небудет Open Relay просто вместо проверки адресов на уровне ACL, ты будешь срезать все лишние на уровне transport'а.
Автор: Smito1
Дата сообщения: 27.11.2015 15:37
vlary что то я тогда не понимаю, а зачем нужна тогда авторизация с АД? Если я правильно понимаю, она сверяет имена исходящих отправителей и если такого нет, то не шлёт письмо?
Тогда не понимаю как сделать так чтобы приходит из вне письмо, и если такого адреса нет, идёт ответ с exima, а не с exchange?
Автор: vlary
Дата сообщения: 27.11.2015 18:13
Smito1
Цитата:
что то я тогда не понимаю, а зачем нужна тогда авторизация с АД?
Допустим ты хочешь куда-то послать письмо из дома через рабочий сервак.
Любой может использовать твой адрес, поэтому ты должен как-то подтвердить,
что ты - это ты. И ты авторизуешься со своим логином и паролем, используя
то, что у тебя есть - SASL, LDAP, AD, POP before SMTP...
А в твоем случае нужно просто определить, есть такой ящик или нет.
Ты для этого можешь использовать LDAP search AD, локальную базу,
либо встроенный в акцесс листы Exim verify recipient. В последнем случае Exim будет
связываться с эксченжем, и получив от того ответ. что такого юзера нет,
передавать его отправителю.
У меня Exim работает с локальной базой на SQLite, куда записаны все юзеры.
Потому он сам проверяет наличие юзера, и только тогда отправляет письмо на
внутренний сервер.
Можно написать скрипт, который будет автоматически синхронизировать адреса с АД,
а можно, если юзеров немного и меняются не часто, просто забить вручную.
Автор: Smito1
Дата сообщения: 25.01.2016 11:38
vlaryспс за объяснение
Вопрос на засыпку, есть exim + exchange 2010 и база Access, в ней вбит адрес SMTP сервера exchange для отправки писем из списка раз в месяц(пробывал и exim указывать), всё до сих пор работало, теперь же в базе висят письма и не отправляются, если слать поштучно уходят, пробовал смотреть логи SMTP exchange, там глухо, письма через telnet что с exhange, что с exim уходят нормально, очередей нет, есть идеи ребят?
Автор: vlary
Дата сообщения: 25.01.2016 13:12
Smito1
Цитата:
есть идеи ребят?
Есть. Например, логи посмотреть. Особенно если отправка через exim.
Автор: Smito1
Дата сообщения: 25.01.2016 16:24
Этим именно и занимаюсь, там столько записей что без 100 грамм не разберёшься, понятно дело что exchange тут не причём, проблема действительная странная, такое ощущение что какой то тайм аут срабатывает на массовую рассылку.
Из самого странного
18:30:49 [16475] 1aMcjh-0004Hj-8p SA: Debug: SAEximRunCond expand returned: '0'
2016-01-22 18:30:49 [16475] 1aMcjh-0004Hj-8p SA: Action: Not running SA because SAEximRunCond expanded to false (Message-Id: 1aMcjh-0004Hj-8p). From <test@film.ru> (host=dd-comp.film.local [10.0.1.8]) for dd@gmail.com

18:31:40 [16480] Start queue run: pid=16480
2016-01-22 18:31:40 [16481] 1aM9k4-0004QO-NF == n.plyusnin@ltinex.ru routing defer (-51): retry time not reached
2016-01-22 18:31:40 [16481] 1aM9k4-0004QO-NF == marketing@ltinex.ru routing defer (-51): retry time not reached
2016-01-22 18:31:41 [16481] 1aM9k4-0004QO-NF == volh@bor.ru R=dnslookup T=remote_smtp defer (-53): retry time not reached for any host
2016-01-22 18:31:41 [16481] 1aM9k4-0004QO-NF == sns@tinex.ru R=dnslookup T=remote_smtp defer (-53): retry time not reached for any host
2016-01-22 18:31:41 [16489] 1aMcBX-00049W-Q3 Message is frozen

p.s. кажется я нашёл решение своей проблемы.

Удаление DNS кеша в exim
    
usr/local/etc/rc.d/exim stop

cd /var/spool/exim/db

rm retry retry.lockfile wait-remote_smtp wait-remote_smtp.lockfile

/usr/local/etc/rc.d/exim start



Автор: vlary
Дата сообщения: 25.01.2016 19:13
Smito1
Цитата:
Из самого странного ...
Да ничего там странного, видимо, просто поскольку письма изнутри наружу,
не срабатывает условие для проверки их Спам Ассасином.

Страницы: 123456789101112131415161718192021

Предыдущая тема: Посоветуйте девайс для орг-ии VPN


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.