Exim4 (Unrouteable address)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

CheGevara80
Сообщения: 85
ОС: aasp

Exim4

Сообщение CheGevara80 »

Поднял exim4, все настройки по умолчанию, поменял тока основные, почта внутри домена ходит нормально, но на все внешние адреса не хочет, пишет вот такой отлуп Unrouteable address, сервак имеет внешний статический адрес, запросы днс выполняются, два дня на гугле результатов не принесли, но может это и хорошо), я думаю, чем больше проблем в настройке, тем лучше разбираться потом будешь, но сейчас прошу помощи, куда копнуть?

команда exim -d+all -bt dimon80@mail.ru

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

13:22:24  4702 Exim version 4.69 uid=0 gid=0 pid=4702 D=fffdffff
Berkeley DB: Berkeley DB 4.6.21: (September 27, 2007)
Support for: crypteq iconv() IPv6 GnuTLS move_frozen_messages
Lookups: lsearch wildlsearch nwildlsearch iplsearch cdb dbm dbmnz dnsdb dsearch nis nis0 passwd
Authenticators: cram_md5 plaintext
Routers: accept dnslookup ipliteral manualroute queryprogram redirect
Transports: appendfile/maildir/mailstore autoreply lmtp pipe smtp
Fixed never_users: 0
Size of off_t: 8
13:22:24  4702 changed uid/gid: forcing real = effective
13:22:24  4702   uid=0 gid=0 pid=4702
13:22:24  4702   auxiliary group list: <none>
13:22:24  4702 seeking password data for user "uucp": cache not available
13:22:24  4702 getpwnam() succeeded uid=10 gid=10
13:22:24  4702 configuration file is /etc/exim4/exim4.conf
13:22:24  4702 log selectors = 00000ffc 00612001
13:22:24  4702 trusted user
13:22:24  4702 admin user
13:22:24  4702 seeking password data for user "mail": cache not available
13:22:24  4702 getpwnam() succeeded uid=8 gid=8
13:22:24  4702 expanding: $1
13:22:24  4702    result: root
13:22:24  4702 user name "root" extracted from gecos field "root"
13:22:24  4702 originator: uid=0 gid=0 login=root name=root
13:22:24  4702 sender address = root@ETC_MAILNAME
13:22:24  4702 Address testing: uid=0 gid=104 euid=0 egid=104
13:22:24  4702 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
13:22:24  4702 Testing dimon80@mail.ru
13:22:24  4702 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
13:22:24  4702 Considering dimon80@mail.ru
13:22:24  4702 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
13:22:24  4702 routing dimon80@mail.ru
13:22:24  4702 --------> hubbed_hosts router <--------
13:22:24  4702 local_part=dimon80 domain=mail.ru
13:22:24  4702 checking domains
13:22:24  4702 expanding: /etc/exim4/hubbed_hosts
13:22:24  4702    result: /etc/exim4/hubbed_hosts
13:22:24  4702 condition: exists{/etc/exim4/hubbed_hosts}
13:22:24  4702    result: false
13:22:24  4702 expanding: partial-lsearch;/etc/exim4/hubbed_hosts
13:22:24  4702    result: partial-lsearch;/etc/exim4/hubbed_hosts
13:22:24  4702 skipping: result is not used
13:22:24  4702 failed to expand: ${if exists{/etc/exim4/hubbed_hosts}{partial-lsearch;/etc/exim4/hubbed_hosts}fail}
13:22:24  4702    error message: "if" failed and "fail" requested
13:22:24  4702 failure was forced
13:22:24  4702 expansion of "${if exists{/etc/exim4/hubbed_hosts}{partial-lsearch;/etc/exim4/hubbed_hosts}fail}" forced failure: assume not in this list
13:22:24  4702 hubbed_hosts router skipped: domains mismatch
13:22:24  4702 --------> real_local router <--------
13:22:24  4702 local_part=dimon80 domain=mail.ru
13:22:24  4702 real_local router skipped: prefix mismatch
13:22:24  4702 --------> system_aliases router <--------
13:22:24  4702 local_part=dimon80 domain=mail.ru
13:22:24  4702 checking domains
13:22:24  4702 mail.ru in "primaryhostname.ru"? no (end of list)
13:22:24  4702 mail.ru in "+local_domains"? no (end of list)
13:22:24  4702 system_aliases router skipped: domains mismatch
13:22:24  4702 --------> userforward router <--------
13:22:24  4702 local_part=dimon80 domain=mail.ru
13:22:24  4702 checking domains
13:22:24  4702 cached no match for +local_domains
13:22:24  4702 cached lookup data = NULL
13:22:24  4702 mail.ru in "+local_domains"? no (end of list)
13:22:24  4702 userforward router skipped: domains mismatch
13:22:24  4702 --------> procmail router <--------
13:22:24  4702 local_part=dimon80 domain=mail.ru
13:22:24  4702 checking domains
13:22:24  4702 cached no match for +local_domains
13:22:24  4702 cached lookup data = NULL
13:22:24  4702 mail.ru in "+local_domains"? no (end of list)
13:22:24  4702 procmail router skipped: domains mismatch
13:22:24  4702 --------> maildrop router <--------
13:22:24  4702 local_part=dimon80 domain=mail.ru
13:22:24  4702 checking domains
13:22:24  4702 cached no match for +local_domains
13:22:24  4702 cached lookup data = NULL
13:22:24  4702 mail.ru in "+local_domains"? no (end of list)
13:22:24  4702 maildrop router skipped: domains mismatch
13:22:24  4702 --------> lowuid_aliases router <--------
13:22:24  4702 local_part=dimon80 domain=mail.ru
13:22:24  4702 checking domains
13:22:24  4702 cached no match for +local_domains
13:22:24  4702 cached lookup data = NULL
13:22:24  4702 mail.ru in "+local_domains"? no (end of list)
13:22:24  4702 lowuid_aliases router skipped: domains mismatch
13:22:24  4702 --------> local_user router <--------
13:22:24  4702 local_part=dimon80 domain=mail.ru
13:22:24  4702 checking domains
13:22:24  4702 cached no match for +local_domains
13:22:24  4702 cached lookup data = NULL
13:22:24  4702 mail.ru in "+local_domains"? no (end of list)
13:22:24  4702 local_user router skipped: domains mismatch
13:22:24  4702 --------> mail4root router <--------
13:22:24  4702 local_part=dimon80 domain=mail.ru
13:22:24  4702 checking domains
13:22:24  4702 cached no match for +local_domains
13:22:24  4702 cached lookup data = NULL
13:22:24  4702 mail.ru in "+local_domains"? no (end of list)
13:22:24  4702 mail4root router skipped: domains mismatch
13:22:24  4702 no more routers
dimon80@mail.ru is undeliverable: Unrouteable address
13:22:24  4702 search_tidyup called
13:22:24  4702 >>>>>>>>>>>>>>>> Exim pid=4702 terminating with rc=2 >>>>>>>>>>>>>>>>

Как я понимаю письмо не прошло роуты, но почему, привожу конфиги роутов:

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

begin routers
.ifdef MAIN_ALLOW_DOMAIN_LITERALS
domain_literal:
  debug_print = "R: domain_literal for $local_part@$domain"
  driver = ipliteral
  domains = ! +local_domains
  transport = remote_smtp
.endif

hubbed_hosts:
  debug_print = "R: hubbed_hosts for $domain"
  driver = manualroute
  domains = "${if exists{CONFDIR/hubbed_hosts}\
                   {partial-lsearch;CONFDIR/hubbed_hosts}\
              fail}"
  same_domain_copy_routing = yes
  route_data = ${lookup{$domain}partial-lsearch{CONFDIR/hubbed_hosts}}
  transport = remote_smtp
.ifdef DCconfig_internet
dnslookup_relay_to_domains:
  debug_print = "R: dnslookup_relay_to_domains for $local_part@$domain"
  driver = dnslookup
  domains =!  +local_domains : +relay_to_domains
  transport = remote_smtp
  same_domain_copy_routing = yes
  no_more
dnslookup:
  debug_print = "R: dnslookup for $local_part@$domain"
  driver = dnslookup
  domains = ! +local_domains
  transport = remote_smtp
 same_domain_copy_routing = yes
# ignore private rfc1918 and APIPA addresses
  ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
  no_more
nonlocal:
  debug_print = "R: nonlocal for $local_part@$domain"
  driver = redirect
  domains = ! +local_domains
  allow_fail
  data = :fail: Mailing to remote domains not supported
  no_more

.endif
smarthost:
  debug_print = "R: smarthost for $local_part@$domain"
  driver = manualroute
  domains = ! +local_domains
  transport = remote_smtp_smarthost
  route_list = * DCsmarthost byname
  host_find_failed = defer
  same_domain_copy_routing = yes
  no_more

.endif
COND_LOCAL_SUBMITTER = "\
               ${if match_ip{$sender_host_address}{:@[]}\
                    {1}{0}\
                }"

real_local:
  debug_print = "R: real_local for $local_part@$domain"
  driver = accept
  domains = +local_domains
  condition = COND_LOCAL_SUBMITTER
  local_part_prefix = real-
  check_local_user
  transport = LOCAL_DELIVERY


в принципе это и не вставлять, но так для наглядности, как быть то?
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: Exim4

Сообщение Ленивая Бестолочь »

судя по тому, что пропущены
dnslookup_relay_to_domains:
dnslookup:
nonlocal:

у вас .ifdef DCconfig_internet не сработал. что говорит о том, что dpkg-reconfigure exim4-config.
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Аватара пользователя
newsrc
Сообщения: 314
ОС: Slackware

Re: Exim4

Сообщение newsrc »

Откуда вы такой конфиг взяли? Он из пакета какого-нибудь дистрибутива?
Вот пример работающих роутеров:

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

begin routers

dnslookup:
  driver = dnslookup
  domains = ! +local_domains
  transport = remote_smtp
  ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
  no_more


system_aliases:
  driver = redirect
  allow_fail
  allow_defer
  data = ${lookup{$local_part}lsearch{/etc/aliases}}
  user = mail
  group = mail
  file_transport = address_file
  pipe_transport = address_pipe

userforward:
  driver = redirect
  check_local_user
  file = $home/.forward
  no_verify
  no_expn
  check_ancestor
  file_transport = address_file
  pipe_transport = address_pipe
  reply_transport = address_reply

localuser: # этот роутер, если пользователи локальные (в /etc/passwd)
  driver = accept
  check_local_user
  local_part_suffix = +* : -*
  local_part_suffix_optional
  transport = local_delivery
  cannot_route_message = Unknown user

mysqluser: # этот роутер, если в таблице mysql
  driver = accept
  condition = ${if eq{}{${lookup mysql{SELECT maildir FROM mailbox \
              WHERE username='${quote_mysql:$local_part}'}}}{no}{yes}}
  transport = mysql_delivery
Система -- это совокупность элементов и связей, дающая новые свойства, не присущие ни одному из элементов и ни одной из связей.
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: Exim4

Сообщение Ленивая Бестолочь »

newsrc писал(а):
19.08.2009 15:28
Откуда вы такой конфиг взяли? Он из пакета какого-нибудь дистрибутива?

это дебиановский кофиг. там очень своя логика.
в дебиане - либо используем стандартный конфиг в /etc/exim4/exim4/conf,
либо пользуемся вот таким, администрируя его с помощью dpkg-reconfigure (ну и можно ковырять в /etc/exim4/conf.d/*, только аккуратно).
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
CheGevara80
Сообщения: 85
ОС: aasp

Re: Exim4

Сообщение CheGevara80 »

Ленивая Бестолочь писал(а):
19.08.2009 18:22
newsrc писал(а):
19.08.2009 15:28
Откуда вы такой конфиг взяли? Он из пакета какого-нибудь дистрибутива?

это дебиановский кофиг. там очень своя логика.
в дебиане - либо используем стандартный конфиг в /etc/exim4/exim4/conf,
либо пользуемся вот таким, администрируя его с помощью dpkg-reconfigure (ну и можно ковырять в /etc/exim4/conf.d/*, только аккуратно).

Да так и есть, это Дебиан, а вот на счет конфигов, разве можно в нем использовать стандартный конфиг, т.е. безовсяких там макроопределений и dpkg-reconfigure?
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: Exim4

Сообщение Ленивая Бестолочь »

CheGevara80 писал(а):
19.08.2009 21:32
Да так и есть, это Дебиан, а вот на счет конфигов, разве можно в нем использовать стандартный конфиг, т.е. безовсяких там макроопределений и dpkg-reconfigure?

можно. о чем прямо написано в /usr/share/doc/exim4-daemon-heavy/README.Debian.gz, пункт 2.1.6:

2.1.6. Using a completely different configuration scheme

If you are an experienced Exim administrator, you might feel working
with our pre-fabricated configuration cumbersome and complex. You might
feel right if you need to make more complex changes and do not need to
receive updates from us. This section is going to tell about how to use
your own configuration.

..........................
2.1.6.1. Override exim4-config configuration magic

If you are only running a small number of systems and want to
completely disable Debian's magic, just take your monolithic
configuration file and install it as /etc/exim4/exim4.conf. Exim will
use that file verbatim. To have something to start, you can either take
/etc/exim4/exim4.conf.template, run update-exim4.conf --keepcomments
--output /etc/exim4/exim4.conf, or use upstream's default configuration
file that is installed as
/usr/share/doc/exim4-base/examples/example.conf.gz. You are going to
lose all magic you get from packaging though, so you need to be
familiar with Exim to build an actually working config.


просто кладете свой конфиг в /etc/exim4/exim4.conf и дебиан пользует только его. и дебконф будет в курсе, что вы неформал.
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Аватара пользователя
newsrc
Сообщения: 314
ОС: Slackware

Re: Exim4

Сообщение newsrc »

Кошмар какой-то. Каждый норовит придумать что-то свое.

Мой вам совет, CheGevara80, возьмите стандартный конфиг.

Если вы будите разбираться в нем, то вы будите разбираться в Exim'e, а не в выдумках Debian (никого обидеть не хочу).
Ой! Что-то напоминает мне выражение: «Если вы знаете Slackware — вы знаете GNU/Linux. Если вы знаете Red Hat, то всё, что вы знаете, — это Red Hat»
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Система -- это совокупность элементов и связей, дающая новые свойства, не присущие ни одному из элементов и ни одной из связей.
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: Exim4

Сообщение Ленивая Бестолочь »

iУведомление от модератора
newsrc, по существу, насчет экзима - согласен. Однако все же воздержитесь от предвзятых высказываний в скольугодно мягкой форме. ;-)
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
CheGevara80
Сообщения: 85
ОС: aasp

Re: Exim4

Сообщение CheGevara80 »

Спасибо, всем, сейчас попробую, кстати сейчас настраиваю связку exim+dovecot на драйвере dovecot, очень грамотная тема, т.е. смысл такой что exim аутифицирует польвателей через сокет dovecota, а уж довекот можно настроить на что угодно(я начал с простого файла), правда у меня пока не получилось это реальзовать, но я полон оптимизма и советаю всем это попробовать, особенно новичкам, которые не знают с чего начать, если кому надо могу выслать свой конфиг!
Спасибо сказали:
konki
Сообщения: 216

Re: Exim4

Сообщение konki »

CheGevara80 писал(а):
20.08.2009 15:26
Спасибо, всем, сейчас попробую, кстати сейчас настраиваю связку exim+dovecot на драйвере dovecot, очень грамотная тема, т.е. смысл такой что exim аутифицирует польвателей через сокет dovecota, а уж довекот можно настроить на что угодно(я начал с простого файла), правда у меня пока не получилось это реальзовать, но я полон оптимизма и советаю всем это попробовать, особенно новичкам, которые не знают с чего начать, если кому надо могу выслать свой конфиг!

вот если бы кто сказал, можно ли использоваться dovecot-sasl для аутентификации своего сервера у ISP, через который надо слать почту, было бы дело.
Спасибо сказали: