Настройка sendmail windows yandex

Обновлено: 07.07.2024

1 Установить полноценный почтовый сервер, например Kerio Connect (не реклама)
2 Использовать скрипты (классы) для работы с почтой: Zend_mail, PHPmailer и т.д.
3 Установить готовые веб-серверы типа Денвер, XAMPP
4 Воспользоваться эмуляцией демона sendmail для OS Windows

На помощь пришел 4-й пункт! Качаем, распаковываем, и начинаем настройку.

Настройка sendmail.ini

Настройка php.ini

Находим секцию [mail function]

комментируем все строки, кроме пути к sendmail, в этом пути прописываем полный путь к бинарнику.

Пишем простейший скрипт

ну пояснять тут ничего не буду, самый первый линк этой статьи видет на пояснения.

Разбор логов

Это вид простейшего лога. Ессно все параметры типа легальное мыло, домены, ай-пи адреса я заменил на вымышленные, что бы потом меня не спамили.

Ну и в ответ, на своем почтовом ящике, куда я послал почту я её и получил.

Сам сервис для отправка почты через sendmail в ОС Windows можете взять тут

Удачи, пиши отзывы, кликайте на рекламу )))

Статья просмотренна 90430 раз, зашло посетителей 32149

извини, но статья не раскрыта!можно было и поподробнее написать!

А что там описывать, есть бинарник, к нему конфиг, показал как настроить. Работает. Что не так. Положить в рот и разжевать?

тогда из таких, кому разжовывать, говно-девелоперы получаются.

заебали со своими девелоперами! Есть правило в русском языке, которое запрещает использование иностранных слов, когда есть русский аналог. РАЗРАБОТЧИК, а не девелопер.

ЗЫ в последнее время на работе я всё пишу на английском и граница между двумя языками исчезает для меня.

Помогите мне объяснить как можно настроить sendmail на одном сервере ,чтоб можно было несколько отправителей , типо 4 сайта на сервере , но в php.ini и в sendmail только можно одного отправителя вписать со всеми настройками ,или нужно под каждого отправителя отдельный движек sendmail ?

Приветствую. судя по статье так она про Sendmail в нэти везде одинаковая чтобы снять заглушку надо приминить
username=
password=
вот или я бестолковый или лыжи едут, username= и password= чего надо в водить smtp адреса от которого будит идти рассылка или отправка писем если да то опять не то, вот подскажите кто знает вот к примеру у меня внешний айпишник то есть ip статический возьмём к примеру локал хост денвер ну что хамп что денвер у них в sendmail заглушка стоит, вот установил я к примеру денвер ip провайдера внешний тоесть сервак в нэти через ip доступин виден, вот установил я к примеру денвер, вот каким макаровым мне снять заглушку в sendmail не таким способом как выше а без username= и password= то и есть по другому говоря есть скрипт(ы) php формата анонимной отправки писем, с хостингов они работают но банятся, вот как мне настроить или какой установить sendmail чтоб php скрипт анонимнай отправки писем отправлялся с компа с локального сервака sendmail может тут кто подскажет.

Программа sendmail которую мы скачивали в 4-ом пункте она бесплатная или ломаная?

Бесплатная, можете юзать, для тестов самое оно.

Спасибо за статью, все очень понятно. Получилось с первого раза настроить. Весь инет до этого облазил нигде толкового описания нет. Кстати прога какие нибудь ограничения имеет?

Пожалуйста. На продакшене у вас врятли будет Windows, а это прога просто эмулирует работы подобной проги в *nix системах.
Она для тех кто по каким-то причинам не хочет переходить на Linux, являясь программистом PHP, а остаётся на Windows.

как присоединить файл архив к письму?

Спасибо большое. 3 дня подряд не смог сделать

Подскажите как настроить почтовый сервер на домашнем ПК, у меня имеется домен, домен-регистратор разрешает вносить все необходимые записи.

В этой статье я расскажу как установить и настроить sendmail на домашнем сервере под windows.
Для начала скачайте комплект sendmail.
Если у вас уже стоит sendmail можете его удалить, а на его место скопировать скаченные файлы.
Особенно это касается тех, кто устанавливал сервер с помощью xampp.
Дело в том, что в последних версиях xampp лежит новая версия sendmail, лично я так и не смог его запустить, к тому же он работает с уже другим типом конфигурации.
Возможно проблемы с этим новым sendmail и будут решены в дальнейшем, а пока предлагаю использовать старый проверенный вариант, который работает как "трактор".
Так же в архиве лежит две библиотеки, с помощью которых sendmail может работать с защищенными соединениями TLS, типа почты гугла(gmail).

Скачали архив, распаковали, закачали файлы в папку sendmail, если такой папки нет, создайте ее.
Для xampp это путь /xampp/sendmail.
Теперь открывайте настройки sendmail.ini, в архиве находится пример этого файла с русскими комментариями.
Привожу пример файла настроек

; конфигурационный файл sendmail

; порт smtp, если обычный режим отправки, то порт будет 25
; если сервер работает в защищенном режиме (TLS), то порт 465, например почта гугла работает через 465 порт
smtp_port=25

; домен по умолчанию (совсем не обязательно)
;default_domain=local

; лог ошибок
error_logfile=error.log

; лог отправки, необходим на стадии тестирования. содержит весь текст переговоров с сервером при отправке писем.
debug_logfile=debug.log

; Если smtp сервер с авторизацией, укажите логин пароль(без кавычек), если без авторизации ничего не пишите
auth_username=
auth_password=

; если перед отправкой почты сервер требует авторизацию через POP, заполните эти поля
;pop3_server=
;pop3_username=
;pop3_password=

Вносите свои данные, логин-пароль и т.д. и все готово.
Сейчас настройте PHP, чтобы он мог использовать sendmail.
Откройте php.ini и найдите следующие строки

[mail function]
; SMTP = localhost
; smtp_port = 25
; sendmail_from = postmaster@localhost
sendmail_path = "\xampp\sendmail\sendmail.exe -t"

Первые строки указанные здесь закройте комментарием как показано (они не нужны), нужна только последняя строка указанная здесь, это путь до sendmail. Укажите свой путь и снимите комментарий (;) если он стоит.
Теперь перегружайте сервер и все готово, функция mail() должна работать.
Если возникают проблемы с отправкой почты, смотрите файлы error.log и debug.log в sendmail(если вы их конечно включили в настройках sendmail.ini)

Установка веб сервера на windows
Настройка и защита apache под windows
Бесплатный ДНС сервер
Настройка php
Настройка mysql
Настройка phpmyadmin
Настройка sendmail (эта статья)
Настройка ftp сервера FileZilla

Комментарии


05.12.2010 Sheg
Письмо почему то не доходит.
В error.log:
SSL is not available on this server.
В чём проблема, smtp Гугловский.


09.12.2010 Вячеслав.
Все настроил, при отправке письма скрипт ошибок не выдает - но в итоге, письмо для адресата так и не доходит.
В чем может быть проблема ?
Спасибо.


09.12.2010 админ
Вячеслав, включите логи.
Лог ошибок и лог отправки и посмотрите в эти файлы.
И сразу все будет ясно.


11.12.2010 админ
Вячеслав, ну а в debug.log что?
Там ошибок нет, по этим логам письмо отправляется?



21.12.2010 Алексей
У меня sendmail даже на *.exe никак не реагирует, не говоря о скриптах, и в логах тож ниче нет(((


21.12.2010 админ
Алексей, можно подробнее? Что значит "sendmail на *.exe не реагирует"?

и письмо не отправляется в чем причина , что не так.



26.12.2010 админ
Виталий, что-то не совсем понятно. вроде начинается защищенное соединение и обрывается.
с другими серверами пробовали коннектиться?

И еще, по моему на Unix такой ошибки нету. Но письма все-равно не отправляются.


04.01.2011 Алексей К.
Спасибо вам большое .
Все получилось при использовании другого сервера почты!


04.01.2011
И еще вопрос,до каких размеров будет расти debug.log ? Или его можно отключить?


04.01.2011 админ
конечно лог отправки и лог ошибок можно отключить, просто удалите эту строку из конфига или закройте комментарием (;)


05.01.2011 Алексей К.
Спасибо еще раз! С Новым годом.

Столкнулся с проблемой: на правильно настроенном сервере Apache с установленными модулями и настроенными доменными записями у провайдера — письма отправленные через функцию mail из скриптов php попадали в спам или не доставлялись вовсе.

Начал разбираться и не смог найти не одной полноценной публикации в рунете, которая раскрывала бы проблему и помогала решить все вопросы.

Вашему вниманию представляю собранный из разных источников, проверенный и используемый способ настройки сервера для правильной отправки писем sendmail.

Система: Ubuntu 20.06
Почтовый сервис: Яндекс

1. Установка Sendmail

Если по какой-то причине не был установлен. Произведите базовую установку и настройку


Правим php.ini


Заголовок «Return-Path:» является важным заголовком в глазах почтовых сервисов.
Если его не установить, заголовок будет равен примерно такому значению «Return-Path: <noreply@localhost.localdomain>».

Очень желательно чтобы значение заголовка всегда совпадало с именем домена с которого отправляется письмо, независимо от значения заголовка «From:», иначе оно может быть отправлено в «Спам» или же отклонено вовсе.

2. Настройка DNS записей

Нам необходимо настроить SPF, DMARC, DKIM записи.

Какая за что отвечает расписывать не буду. В рунете огромное количество инструкций.
Если тоже используете какой-либо почтовый сервис, у них свои подробные инструкции по настройке.

На что следует обратить внимание — чтобы в SPF был прописан IP-адрес сервера.


Затем следует запросить у провайдера DNS-хостинга обратную запись rDNS (PTR-запись).
Привязать свой домен к ip-адресу сервера.

Как правило провайдер самостоятельно ее устанавливает по запросу.

4. Изменить hostname

Установить hostname равный названию нашего домена:


5. Редактировать файл sendmail.mc

Переходим к файлу /etc/mail/sendmail.mc

Нам необходимо настроить заголовки «Received: from» и «Received: by». Они являются важными при определении уровня доверия к серверу отправляющему электронную почту.

Добавляем следующие строки в конце файла перед MAILER_DEFINITIONS


И в конец файла:

6. Проверяем настройки apache и файервола


Ищем строчки и заменяем www-data на текущего пользователя под которым запущен apache

В данной инструкции будет показана установка SSMTP, конфигурация и замена Sendmail на примере сервисов Yandex и Google.


1. Установка SSMTP
В зависимости от установленной Linux ОС, может потребоваться подключение дополнительного репозитория, в нашем случае будет рассмотрена установка на CentOS 6 .

Для установки SSMTP откроем терминал и выполним ряд команд:

Инструкция по установке и привязке SSMTP к Yandex и Google. Подключение репозитория

Инструкция по установке и привязке SSMTP к Yandex и Google. Обновление всех установленных пакетов





Установка SSMTP выполнена успешно, теперь можно переходить к настройке конфигурационных файлов для дальнейшей возможности отправки электронной почты.

Процесс создания почтового адреса электронной почты на сервисах Gmail и Yandex описываться не будет, т.к. подразумевается, что аккаунты уже созданы.

Поэтому перейдем сразу к правке первого конфигурационного файла ssmtp.conf.

Для этого выполним в терминале команду вида:

Инструкция по установке и привязке SSMTP к Yandex и Google. Редактирование конфигурационного файла


И приведем фаил к данному виду:

Инструкция по установке и привязке SSMTP к Yandex и Google. Вид в редакторе файла SSMTP.conf

1. Для сервиса Gmail :

2. Для сервиса Yandex :

Выполним настройку второго конфигурационного файла revaliases

Для этого выполним команду в терминале:

И приведем наш файл к данному виду:

Дополнительно выполним еще ряд команд в терминале:

Инструкция по установке и привязке SSMTP к Yandex и Google. Переименование файла и подмена sendmail


После всех проделанных действий можно перейти к проверке отправки электронной почты.

Для этого в терминале выполним команду вида:

В результате должны получить следующее выполнение команды:

Инструкция по установке и привязке SSMTP к Yandex и Google. Проверка отправки через SSMTP


Если выполненная команда соответствует скриншоту, то настройка выполнена успешно.

Читайте также: