Кривой return path при аутентифицированной отправке

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

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Wombat
рядовой
Сообщения: 13
Зарегистрирован: 2007-09-14 18:16:44

Кривой return path при аутентифицированной отправке

Непрочитанное сообщение Wombat » 2007-10-22 12:51:29

Exim. Для аутентификации при отправке используется полный имейл-адрес и пароль.
В результате письма приходят с заголовком:
Return-Path: <username@example.com@server.fqdn.com>
А надо чтобы было
Return-Path: <username@example.com>


ACL:

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

  accept  authenticated = *
          control       = submission/sender_retain/domain=

  require verify        = sender

# obtain local user ID
set acl_m10  = ${lookup mysql{MYSQL_LOOKUP_USER_ID}{$value}{0}}

  accept  domains       = +local_domains
          endpass
          verify        = recipient
          condition     = ${if >{$acl_m10}{0}{true}{false}}
Роутеры:

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

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

router_local:
  driver = accept
  condition = ${lookup mysql{ \
     SELECT DISTINCT CONCAT(u.user_name,'@',d.domain_name) AS email \
     FROM users u INNER JOIN domains d ON u.domain_id=d.domain_id \
     WHERE u.user_name='${quote_mysql:$local_part}' AND d.domain_name='${quote_mysql:$domain}' AND u.is_smtp_enabled=1 \
     }{true}{false}}
  transport = local_delivery
  no_more
В результате lookup_mysql возвращается полный имейл с доменом.

Транспорты:

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

remote_smtp:
  driver = smtp

local_delivery:
  driver = appendfile
  directory = /var/mail/${domain}/${local_part}/
  maildir_format
  delivery_date_add
  envelope_to_add
  return_path_add
  user = mail
  group = mail
  mode = 0660

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

Wombat
рядовой
Сообщения: 13
Зарегистрирован: 2007-09-14 18:16:44

Re: Кривой return path при аутентифицированной отправке

Непрочитанное сообщение Wombat » 2007-10-22 13:06:41

Проблема такого return-path в том, что он не работает.

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

2007-10-22 04:24:36 1IjtUz-0007ZE-4s <= "username@example.com"@server.fqdn.com H=([192.168.1.5]) [82.144.212.76] I=[74.86.78.10]:25 P=esmtpa A=auth_cram_md5:username@example.com S=2483604 id=471C6BF5.7030308@stranslation.com from <username@example.com> for example@gmail.com

2007-10-22 04:24:40 1IjtUz-0007ZE-4s ** example@gmail.com R=router_dnslookup T=remote_smtp: SMTP error from remote mail server after end of data: host gmail-smtp-in.l.google.com [72.14.247.27]: 552 5.7.0 Illegal Attachment 18si11189839agb

2007-10-22 04:24:40 1IjtWa-0007b5-OI <= <> R=1IjtUz-0007ZE-4s U=mail P=local S=108474 from <> for "username@example.com"@server.fqdn.com

2007-10-22 04:24:40 1IjtUz-0007ZE-4s Completed

2007-10-22 04:24:40 1IjtWa-0007b5-OI ** username@example.com@server.fqdn.com <"username@example.com"@server.fqdn.com>: Unrouteable address

2007-10-22 04:24:40 1IjtWa-0007b5-OI Frozen (delivery error message)

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35426
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Кривой return path при аутентифицированной отправке

Непрочитанное сообщение Alex Keda » 2007-10-22 13:07:43

где-то в середине конфига (который ты не показал) надо отключить контрол = субмиссион.
Убей их всех! Бог потом рассортирует...

Wombat
рядовой
Сообщения: 13
Зарегистрирован: 2007-09-14 18:16:44

Re: Кривой return path при аутентифицированной отправке

Непрочитанное сообщение Wombat » 2007-10-22 15:08:14

Оказалось, проблема не в submission.

Вот мой authenticators, который я написал бездумно, скопипейстив с какого-то источника:

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

begin authenticators

auth_login:
driver = plaintext
public_name = LOGIN
server_prompts = Username:: : Password::
server_condition = ${if eq{$2}{${lookup mysql{ \
    SELECT DISTINCT user_password FROM users u INNER JOIN domains d ON u.domain_id=d.domain_id \
    WHERE CONCAT(u.user_name, '@', d.domain_name)='${quote_mysql:$1}' AND d.domain_is_enabled=1 \
}}}{yes}{no}}
server_set_id = $1

auth_cram_md5:
driver = cram_md5
public_name = CRAM-MD5
server_secret = ${lookup mysql{SELECT u.user_password FROM users u \
    INNER JOIN domains d ON u.domain_id=d.domain_id \
    WHERE CONCAT(u.user_name, '@', d.domain_name) = '${quote_mysql:$1}' AND d.domain_is_enabled=1 \
    }{$value}fail}
server_set_id = $1
Поубирал server_set_id = $1 и все заработало нормально.