On Wed, 29 Jun 2022 at 16:55:32 (+0300), Anton Saietskii wrote:
> И вот такой конфиг dma:
> SMARTHOST smtp.google.com
> SECURETRANSFER
> STARTTLS
> MASQUERADE dma@
> Письма от periodic приходят прекрасно, а от update_srcports.sh (там
> вызовы git, zfs snapshot и poudriere) -- не со следующей ошибкой:
> Jun 29 12:33:44 freebsdvm dma[961a][56264]: new mail from user=root
> uid=26 envelope_from=<d...@freebsdvm.localdomain>
> Jun 29 12:33:44 freebsdvm dma[961a][56264]: mail
> to=<vsasjason+f...@gmail.com> queued as 961a.7b883c0c050
> Jun 29 12:33:44 freebsdvm dma[961a.7b883c0c050][56265]:
> <vsasjason+f...@gmail.com> trying delivery
> Jun 29 12:33:45 freebsdvm dma[961a.7b883c0c050][56265]: trying remote
> delivery to smtp.google.com [64.233.165.26] pref 0
> Jun 29 12:33:45 freebsdvm dma[961a.7b883c0c050][56265]: remote
> delivery to smtp.google.com [64.233.165.26] failed after final DATA:
> 550-5.7.1 [x.x.x.x] Messages missing a valid address in From: header,
> or^M 550 5.7.1 having no From: header, are not accepted.
> s5-20020a2e81c5000000b0025a97d857besi6415ljg.150 - gsmtp
> Чего же мне такого интересного в последнем скрипте не хватает, что
> даже MASQUERADE не помогает? Я неправильно воспринимаю ошибку gsmtp?
Думаю, если посмотреть в хидера сформированного письма, хидер From: (не
envelope-from, а From:) там отсутствует. Не знаю, как в dma это
заенфорсить.
--
George L. Yermulnik
[YZ-RIPE]
Так а не "mail -E ..." ли срабатывает и формирует "From:" в этом
periodic скрипте? Или у тебя вывод твоего скрипта тоже mail'ом
отправляется?
On Wed, 29 Jun 2022 at 23:06:07 (+0300), Anton Saietskii wrote:
> > Так а не "mail -E ..." ли срабатывает и формирует "From:" в этом
> > periodic скрипте? Или у тебя вывод твоего скрипта тоже mail'ом
> > отправляется?
> -E никакого отношения к From не имеет:
> -E Do not send messages with an empty body. This is useful for pip-
> ing errors from cron(8) scripts.
Я не про ключ(и), а про саму команду mail.
> У меня скрипт просто плюёт в stdout/stderr. Автомагически форвардить вывод
> в почту -- функция cron/anacron, разве нет?
Так оно и форвардит. As is. Не похоже, чтобы его (их) задачей было
устранять user errors или формировать user-friendly заголовки писем.
Заверни аутпут своего скрипта пайпой в mail.
> Jun 29 12:33:45 freebsdvm dma[961a.7b883c0c050][56265]: remote
> delivery to smtp.google.com [64.233.165.26] failed after final DATA:
> 550-5.7.1 [x.x.x.x] Messages missing a valid address in From: header,
> or^M 550 5.7.1 having no From: header, are not accepted.
> s5-20020a2e81c5000000b0025a97d857besi6415ljg.150 - gsmtp
>
> Чего же мне такого интересного в последнем скрипте не хватает, что
> даже MASQUERADE не помогает? Я неправильно воспринимаю ошибку gsmtp?
А эту dma нельзя попросить записать её общение в plaintext?
А если связать с пробным MTA и без SSL?
-netch-
On Thu, 07 Jul 2022 at 16:52:11 (+0300), Anton Saietskii wrote:
> > Delivered-To: vsasjason+f...@gmail.com
> > Return-Path: <d...@freebsdvm.localdomain>
> Вдогонку: и, конечно, иногда получаю "самый любимый" отлуп тех, кто
> отправляет письма на гмыло:
Сейчас же ж начнётся "какое это имеет отношение к FreeBSD" =)
> Jul 7 11:14:16 freebsdvm dma[81ba.266fa2781050][17750]: remote
> delivery to smtp.google.com [173.194.221.27] failed after final DATA:
> 550-5.7.26 This message does not have authentication information or
> fails to^M 550-5.7.26 pass authentication checks (SPF or DKIM). To
> best protect our users^M 550-5.7.26 from spam, the message has been
> blocked. Please visit^M 550-5.7.26
> https://support.google.com/mail/answer/81126#authentication for more^M
> 550 5.7.26 information.
> e18-20020a05651c04d200b0025d4fa7575bsi1120151lji.366 - gsmtp
> Конечно же, никаких SPF, DKIM и DMARC я для [freebsdvm.]localdomain
> настаивать не буду.
Я не помню, настаивают ли стандарты и RFC, чтобы return-path был не
фейковым, но почему просто не подставить адрес получателя в envelope-from.
> :-D А вообще странно -- я-то письмо отправляю _на
> свой ящик,_ _аутентифицировавшись_ под ним же.
Ничего странного. Это их система и это они устанавливают правила. Иногда
странные, но иногда - вполне адекватные. Имхо.
On Thu, 07 Jul 2022 at 17:23:04 (+0300), Anton Saietskii wrote:
> > > Конечно же, никаких SPF, DKIM и DMARC я для [freebsdvm.]localdomain
> > > настаивать не буду.
> > Я не помню, настаивают ли стандарты и RFC, чтобы return-path был не
> > фейковым, но почему просто не подставить адрес получателя в envelope-from.
> Тогда будет "envelope-from: vsas...@gmail.com; From: root" --
> проверить, конечно, можно, но заранее вангую, что станет только хуже.
Вероятно, у тебя были какие-то серьёзные аргументы в пользу выбора
утилиты, используемой для формирования и отправки email, но которая не
может удовлетворить все необходимые поинты.
Опять же: никто не мешает сформировать все нужные хидера самостоятельно
и отдать это MTA напрямую (или через этот dma(8))
> > > :-D А вообще странно -- я-то письмо отправляю _на
> > > свой ящик,_ _аутентифицировавшись_ под ним же.
> > Ничего странного. Это их система и это они устанавливают правила. Иногда
> > странные, но иногда - вполне адекватные. Имхо.
> В данном конкретном случае всё же настаиваю на том, что это странно.
Напиши им гневный отзыв куда-то =)))))
On Thu, 07 Jul 2022 at 17:55:45 (+0300), Anton Saietskii wrote:
> > Вероятно, у тебя были какие-то серьёзные аргументы в пользу выбора
> > утилиты, используемой для формирования и отправки email, но которая не
> > может удовлетворить все необходимые поинты.
> Включение dma в базовую систему, очевидно же.
А-а-а, так "ты его просто готовить не умеешь" =)))
[--- cut ---]
DESCRIPTION
dma is a small Mail Transport Agent (MTA), designed for home and office
use. It accepts mails from locally installed Mail User Agents (MUA) and
delivers the mails either locally or to a remote destination.
[--- cut ---]
Я прям сильно настаиваю, что твой скрипт нифига не MUA, но при этом в
задачи MUA входит в том числе формирование всех нужных и ненужных
заголовков правильно.
> > Опять же: никто не мешает сформировать все нужные хидера самостоятельно
> > и отдать это MTA напрямую (или через этот dma(8))
> Лень. Виртуалка тестовая -- не прод, так что отсутствие некоторых из
> ежедневных писем можно и потерпеть.
> На проде, конечно, будет какой-нибудь relay в виде postfix, где и
> rDNS, и SPF, и всё остальное нужное.
postfix тоже MTA, так что от отсутствия нормально сформированных
заголовков он тоже не вылечит.
я бы даже расширил твою мысль, что нужен не просто абстрактный postfix
как mta, а функционально отдельный smtp relay со всем этим барахлом.
> > > > > :-D А вообще странно -- я-то письмо отправляю _на
> > > > > свой ящик,_ _аутентифицировавшись_ под ним же.
> > > > Ничего странного. Это их система и это они устанавливают правила. Иногда
> > > > странные, но иногда - вполне адекватные. Имхо.
> > > В данном конкретном случае всё же настаиваю на том, что это странно.
> > Напиши им гневный отзыв куда-то =)))))
> Ну зачем же выдёргивать слова из контекста, вырезая аргументацию? Там
Не было там аргументации как по мне. Ты пользуешься чьим-то сервисом.
Это их система и это они устанавливают правила.
> же была важная деталь -- я не рандомно плюю письмами с непонятного
> адреса, а по сути делаю то же, что делает любой пользователь
> Thunderbird (ну, кроме того, что они обычно письма не сами себе, а
> другим шлют; однако механизм тот же).
Не путай тёплое с мягким: твой скрипт без формирования заголовков, мягко
говоря, далеко стоит Thunderbird, который MUA, а не шелл скрипт =)
> А я что-то не помню, чтобы каждого домашнего пользователя заставляли
> покупать домен и всякие email-auth штуки вписывать. ;-)
Зачем же обобщать и переиначивать? Гугл не заставляет тебя делать такое.
Гугл тебя заставляет подчиняться их правилам при использование их сервиса.
Ты с лёгкостью можешь обойти это ограничение, но тебе лень, как ты выше
написал =)
> On 7 Jul 2022, at 17:47, George L. Yermulnik <y...@yz.kiev.ua> wrote:
>
>
> Напиши им гневный отзыв куда-то =)))))
Вот сейчас было больно.
>
> --
> George L. Yermulnik
> [YZ-RIPE]
> _______________________________________________
> freebsd mailing list
> fre...@uafug.org.ua
> http://mailman.uafug.org.ua/mailman/listinfo/freebsd
--
Taras Heichenko
ta...@academ.kiev.ua
Hello!
On Thu, 07 Jul 2022 at 17:55:45 (+0300), Anton Saietskii wrote:
> > Вероятно, у тебя были какие-то серьёзные аргументы в пользу выбора
> > утилиты, используемой для формирования и отправки email, но которая не
> > может удовлетворить все необходимые поинты.
> Включение dma в базовую систему, очевидно же.
А-а-а, так "ты его просто готовить не умеешь" =)))
[--- cut ---]
DESCRIPTION
dma is a small Mail Transport Agent (MTA), designed for home and office
use. It accepts mails from locally installed Mail User Agents (MUA) and
delivers the mails either locally or to a remote destination.
[--- cut ---]
Я прям сильно настаиваю, что твой скрипт нифига не MUA, но при этом в
задачи MUA входит в том числе формирование всех нужных и ненужных
заголовков правильно.
> > Опять же: никто не мешает сформировать все нужные хидера самостоятельно
> > и отдать это MTA напрямую (или через этот dma(8))
> Лень. Виртуалка тестовая -- не прод, так что отсутствие некоторых из
> ежедневных писем можно и потерпеть.
> На проде, конечно, будет какой-нибудь relay в виде postfix, где и
> rDNS, и SPF, и всё остальное нужное.
postfix тоже MTA, так что от отсутствия нормально сформированных
заголовков он тоже не вылечит.
я бы даже расширил твою мысль, что нужен не просто абстрактный postfix
как mta, а функционально отдельный smtp relay со всем этим барахлом.
> > > > > :-D А вообще странно -- я-то письмо отправляю _на
> > > > > свой ящик,_ _аутентифицировавшись_ под ним же.
> > > > Ничего странного. Это их система и это они устанавливают правила. Иногда
> > > > странные, но иногда - вполне адекватные. Имхо.
> > > В данном конкретном случае всё же настаиваю на том, что это странно.
> > Напиши им гневный отзыв куда-то =)))))
> Ну зачем же выдёргивать слова из контекста, вырезая аргументацию? Там
Не было там аргументации как по мне. Ты пользуешься чьим-то сервисом.
Это их система и это они устанавливают правила.
> же была важная деталь -- я не рандомно плюю письмами с непонятного
> адреса, а по сути делаю то же, что делает любой пользователь
> Thunderbird (ну, кроме того, что они обычно письма не сами себе, а
> другим шлют; однако механизм тот же).
Не путай тёплое с мягким: твой скрипт без формирования заголовков, мягко
говоря, далеко стоит Thunderbird, который MUA, а не шелл скрипт =)
> А я что-то не помню, чтобы каждого домашнего пользователя заставляли
> покупать домен и всякие email-auth штуки вписывать. ;-)
Зачем же обобщать и переиначивать? Гугл не заставляет тебя делать такое.
Гугл тебя заставляет подчиняться их правилам при использование их сервиса.
Ты с лёгкостью можешь обойти это ограничение, но тебе лень, как ты выше
написал =)
2 netch@: благодарю за long awaited reply-to в рассылке. :-)
Всем сорри за лонгрид, в который перерос этот по виду невинный трид. По
сути уже ничего интересного в тексте нет, а просто переписка с Антоном
(для которого ответы ниже по тексту).
On Thu, 07 Jul 2022 at 19:53:30 (+0300), Anton Saietskii wrote:
> > > > Вероятно, у тебя были какие-то серьёзные аргументы в пользу выбора
> > > > утилиты, используемой для формирования и отправки email, но которая не
> > > > может удовлетворить все необходимые поинты.
> > > Включение dma в базовую систему, очевидно же.
> > А-а-а, так "ты его просто готовить не умеешь" =)))
> Почему же? Умею, письма в целом доставляются, о чём я уже писал ранее.
Как почему же? Потому, что "It accepts mails from locally installed Mail
User Agents (MUA)".
> [--- cut ---]
> > DESCRIPTION
> > dma is a small Mail Transport Agent (MTA), designed for home and
> > office
> > use. It accepts mails from locally installed Mail User Agents (MUA)
> > and
> > delivers the mails either locally or to a remote destination.
> > [--- cut ---]
> > Я прям сильно настаиваю, что твой скрипт нифига не MUA, но при этом в
> > задачи MUA входит в том числе формирование всех нужных и ненужных
> > заголовков правильно.
> Нисколько с этим не спорил и не спорю. Но дело в том, что мой скрипт и _не
> должен_ быть MUA, как и любой другой мой скрипт (и твой тоже).
Если мой скрипт должен что-то слать в почту, то я или использую mail,
или скармливаю вывод напрямую MTA, предварительно сформировав
недостающие заголовки.
> Сперва я полагался на то, что эти задачи выполнит anacron, как заявлено у
Линуховый anacron, кстати, умеет "If the LOGNAME environment variable is
set, it will be used as From: field.". У фрёвого такого в man'е нет, но,
может быть, он тоже умеет?
> него в описании. Он не справился и я завернул скрипт в periodic(8) и всё
> заработало, о чём также писал ранее. Внимательнее, пожалуйста.
В приведённом тобой periodic-скрипте для отправки аутпута в почту
используется mail, насколько я помню. Изначально это звено цепочки
(MUA) было тобой упущено, из-за чего и возникло изначальное ишшью.
> > > Опять же: никто не мешает сформировать все нужные хидера самостоятельно
> > > > и отдать это MTA напрямую (или через этот dma(8))
> > > Лень. Виртуалка тестовая -- не прод, так что отсутствие некоторых из
> > > ежедневных писем можно и потерпеть.
> > > На проде, конечно, будет какой-нибудь relay в виде postfix, где и
> > > rDNS, и SPF, и всё остальное нужное.
> > postfix тоже MTA, так что от отсутствия нормально сформированных
> > заголовков он тоже не вылечит.
> > я бы даже расширил твою мысль, что нужен не просто абстрактный postfix
> > как mta, а функционально отдельный smtp relay со всем этим барахлом.
> В третий раз прошу быть внимательнее -- я сразу relay написал.
Тут действительно я не подумал, что ты имеешь в виду отдельный хост.
Правда, это проблему с отсутствующим "From:" при изначальных условиях не
решит.
> Это их система и это они устанавливают правила.
> Не спорю. По их правилам и делалось (
> https://support.google.com/mail/answer/7126229?hl=en#zippy=%2Cstep-change-smtp-other-settings-in-your-email-client
> )
"Set up IMAP and change your SMTP settings to read Gmail messages in
other mail clients, like Microsoft Outlook and Apple Mail." - тут речь о
MUA, которые формируют нужные заголовки правильно. А у тебя изначальное
ишшью именно из-за отсутствия MUA при отправке писем.
> Кстати, этот мануал не совсем корректен -- smtp.gmail.com не слушает 587 и
> 465, только 25 на самом деле.
Не знаю, какое это отношение имеет к этому триду, но smtp.gmail.com
слушает на обоих этих портах и даже принимает на них почту на самом
деле.
> > же была важная деталь -- я не рандомно плюю письмами с непонятного
> > > адреса, а по сути делаю то же, что делает любой пользователь
> > > Thunderbird (ну, кроме того, что они обычно письма не сами себе, а
> > > другим шлют; однако механизм тот же).
> > Не путай тёплое с мягким: твой скрипт без формирования заголовков, мягко
> > говоря, далеко стоит Thunderbird, который MUA, а не шелл скрипт =)
> Мой скрипт не формирует письмо (это делает periodic(8), вызывая mail) и не
> доставляет его на smtp.google.com (это делает dma).
> Тем не менее, механизм всё-такт ровно тот же -- сам процесс отправки письма
> ничем не отличается.
Но при этом mail добавляет тот недостающий "From:", из-за которого у
тебя возникло ишшью, давшее старт этому триду. Т.е. механизм отправки
письма тот же, а вот механизм формирования письма - отличаетмся.
> > А я что-то не помню, чтобы каждого домашнего пользователя заставляли
> > > покупать домен и всякие email-auth штуки вписывать. ;-)
> > Зачем же обобщать и переиначивать? Гугл не заставляет тебя делать такое.
> Да, это я и написал -- не заставляет.
> Гугл тебя заставляет подчиняться их правилам при использование их сервиса.
> В соответствии с ними я и настроил.
Настроил MTA, а ссылку дал на настройку MUA.
> Ты с лёгкостью можешь обойти это ограничение, но тебе лень, как ты выше
> > написал =)
> Ограничение на наличие SPF не могу, уж точно не с лёгкостью. В инструкции
> по ссылке выше SPF не упомянут и вовсе.
Ещё раз: приведённая инструкция не имеет отношения к MTA.