При отправке писем средствами php как правило в качестве MTA используется sendmail далее обработкой писем занимается уже почтовый сервер.
Настраивая очередную систему, предназначенную сугубо под хостинг сайта я подумал — есть ли вообще смысл поднимать на этой машине собственный почтовый сервер — и пока воздержался от его установки.
Но при тестировании отправки писем скриптом через php обнаружилась проблема с отправкой писем на адреса xxxxxx@ngs.ru — на мой тестовый ящик на этом сервере письма не дошли.
В чём трабла ?
Врубаем параметр LogLevel=13 в /etc/mail/sendmail.cf снова пробуем отправить и наблюдаем логи /var/log/maillog
в которых и выясняется причина облома
Helo command rejected: need fully-qualified hostname
Почтовику не понравилось как мы с ним поздоровались «need fully-qualified hostname»
Ставим реальный hostname=”my-domain.ru” в /etc/rc.conf
Так же проделываем это командой hostname
Перезагрузка — снова тест — и снова облом.
Делаю вывод, что здоровается сервер не хостнеймом, а непонятно чем, и видимо это должно быть прописано в настройках sendmail…
в конфиге sendmail.cf обнаружил такие строки
# my official domain name
# … define this only if sendmail cannot automatically determine your domain
#Dj$w.Foo.COM
Раскоментируем последнюю строчку и заменяем на #Dj$w
Проверка — пашет.