Иногда бывает, что при отправке письма, через sendmail(почтовый сервер), письмо возвращается с ошибкой:
Apr 15 19:15:31 myhost sendmail[5806]: mATM4O8w58095806: Losing ./qfmATM4O8w58095806: savemail panic

Apr 15 19:15:45 myhost sendmail[5806]: mATM4O8w58095806: SYSERR(www): savemail: cannot save rejected email anywhere
При этом в логах периодически появляется:
stat=Data format error
Данная проблема обычно появляется, из-за несуществующего почтового адреса при отправке, либо несуществующего сервера hostname.

Для решения проблемы необходимо указывать правильный email. Его можно прописать в панели ISPmanager во вкладке свойств WWW в поле Email администратора.

Данный email также необходимо прописать в конфигурациях apache при описании виртуального хоста:
php_admin_value sendmail_path «/usr/sbin/sendmail -t -i -f [email protected]»
При использовании PHP в режимах FastCGI или CGI данная строка вносится в файл ~/php-bin/php.ini
sendmail_path = «/usr/sbin/sendmail -t -i -f [email protected]»
Как отключить проверку правильности email отправителя, когда отправляет email

 

Sendmail запускается, по умолчанию, с MSP (Message Submission Program). Данный процесс запускается отдельно, чтобы обрабатывать почтовую очередь.

Рассмотрим пример отключения Sendmail в системе FreeBSD

В файле /etc/make.conf пропишите строку submit.cf, для отключения автоматического создания файлов.
SENDMAIL_SET_USER_ID=yes
После чего необходимо удалить файл submit.cf, поменять права на исполнимый файл sendmail (поставить на него SUID bit вместо SGID, то есть установить права 4755 вместо 2755) и перезапустить sendmail
cd /etc/mail
rm submit.cf
make stop
chmod 4755 /usr/local/sbin/sendmail
make start

Аналогично можно произвести отключение и на других системах. На ОС CentOS Linux создание submit.cf, которое происходит автоматически, отключается простым редактированием файла /etc/mail/Makefile.