Вот для апача как раз и будет (_по-умолчанию_) X-Authentication-Warning в
заголовке. Тем не менее - письмо отправится. Отличие root в этом
смысле - он в trusted-users по-умолчанию. Только и всего.
Так что, ничего прикольного - все работает, как и должно. Чтобы не
работало - нужно сначала что-то сломать ;)
/usr/sbin/sendmail -t -i -f support@microsoft.com
Именно так и тестировалось (From и To - установлены в два других
адреса). Никаких проблем нет и быть не должно.
Для user!=root будет просто добавлен заголовок X-Authentication-Warning в
конфигурации по-умолчанию.
1. masterhost.ru
2. envelope sender address (-f - то, что будет потом в Return-Path будет) выставляет
обычно администратор сервера - и не дает сменить пользователям.
3. попробовал, в консоли под root - без проблем. ISP + CentOS 5.4 + sendmail "по-умолчанию".
За то, что клиент на хостинговом сервере выставил From: support@microsoft.com ? :)
Раз речь идет о mail(), то достаточно выставить "-f" опцию sendmail
уникальную для разных пользователей. Проверка From дополнительно -
ограничивает пользователей, не облегчая больше поиск спамеров никак.
Очень странно, значит как минимум для debian и centos в установках по-умолчанию
sendmail ведет себя "нестандартно". Тест простой:
<?php mail("me@mail.ru","test","test","From: support@microsoft.com"); ?>
За что? В первый раз слышу, что абузу могут прислать по подобному поводу.
Кто-то кроме Вас такое видел?
Есть RFC, в которых запрещено подобное? Насколько я знаю - нет.
Это просто одина из эвристик, при проверке на спам. Кто-то
использует - кто-то нет. Никто из крупных провайдеров не использует
пока точно. Максимум - проверка PTR.
Возможно, Вы имели в виду т.н. Callback verification - когда принимающий
сервер ходит на MX-сы отправителя и проверяет там наличие почтового
адреса. Так это совем другое.
В чем глубокий смысл ограничивать пользователям возможность указать
From: - какой они пожелают? Или о какой еще проверке речь может идти?
Я имел в виду тех, кто не держит апач с php и smtp/pop/imap сервисы на одних и
тех же серверах, а использует для этого отдельные инфраструктуры.
Согласен, что к mail() это отношения не имеет.
Но разве в sendmail также не разрешен релей с localhost? По умолчанию.
Любой крупный хостер так работает. Почту вполне можно слать
с хостинговых серверов, в то время как MX-ы доменов указывают
на специальные почтовые сервера. Самый обычный postfix сумеет это сделать.
В том, что человек не хочет принимать почту на сервере. Это
совершенно разумно, кстати. А если создадите ящик локально - локальная
почта для домена будет миновать MX, даже если он указывает на другой сервер.
Ничего страшного нет в том, что MX домена указывают на совершенно другой сервер,
а с хостингового сервера идут письма с адресами в этом домене. Ну
что с этим не так, совершенно обычная практика для нормальных хостеров?
ЧТО это значит "не шлет". Письма не доходят? Функция mail() возвращает ошибку? Письма не
доходят до _конкретных_ адресатов?
Это что ж такое уделать надо, чтобы mail() в PHP не работал? :)
Достаточно глупое желание - делать это существенно
децентрализованно. Есть же apt-proxy, например.