Интересно почитать… Блог в котором есть много интересной информации…

18 января 2011

Как работает почта в Авангарде

Категория: linux — admin @ 1:26

Вступление

Как мне удалось выяснить ранее, одной из особенностей почты на Google или Yandex-e является то, что при отсылке письма, каким бы то ни было способом, будь то sendmail, PHPMailer и др., поле From должно совпадать с именем ящика, через который отправляется письмо. Если поле From отличается от имени ящика, то Google это поле, просто напросто, проигнорирует, а Yandex вообще откажется отправлять такое письмо.
Таким образом, я пришел к выводу, что реализовать на сайте форму такого вида:

через Google или Yandex не получится, так как адрес отправителя письма (поле From) в этой форме для каждого письма задаётся индивидуально. Более того, если у меня есть несколько сайтов, с которых могут приходить письма, то у каждого сайта должен быть свой From Address (поле From в письме). Остается другой вариант — посылать письма через smtp сервер интернет провайдера, и как выяснилось у моего провайдера, Avangard-DSL он имеется, но с ним тоже не всё просто.

Задача

Если я задаю smtp сервер Авангарда в настройках Joomla:

, то у меня вся почта на сайте нормально работает, и проблема с полем From решается, и это уже определенный успех. Чтобы успех был полным, надо настроить почту через sendmail или ssmtp, причем второй вариант предпочтительнее, потому что ssmtp проще конфигурируется.

Инсталлирую ssmtp и смотрю, что он подменил sendmail:

# ls -l /usr/sbin/sendmail
lrwxrwxrwx 1 root root 5 2010-12-03 10:54 /usr/sbin/sendmail -> ssmtp

для проверки прописываю конфигурацию в файле /etc/ssmtp/ssmtp.conf через GMail:

mailhub=smtp.gmail.com:587
AuthUser=unixappdev
AuthPass=******
UseSTARTTLS=yes
UseTLS=yes
FromLineOverride=yes

создаю файл body.txt:

To: Test Guy <sometextguy1@yandex.ru>
From: Me <unixappdev@gmail.com>
Subject: Hello World

Hello world!

тестирую:

sendmail sometextguy1@yandex.ru < body.txt

Ура! Письмо пришло, значит всё работает. Теперь то же самое через smtp.spbtlg.ru. Прописываю конфигурацию:

mailhub=smtp.spbtlg.ru
AuthUser=soap
AuthPass=******
UseSTARTTLS=no
UseTLS=no
FromLineOverride=yes

тестирую:

$ sendmail cvx@yandex.ru < body.txt

sendmail письмо не посылает и выдаёт вот такую штуку:

sendmail: Server didn’t like our AUTH LOGIN (530 5.7.0 Must issue a STARTTLS command first. x54sm3988511eeh.11)

если прописать в конфигурации следующее:

mailhub=smtp.spbtlg.ru
AuthUser=soap
AuthPass=******
UseSTARTTLS=yes
UseTLS=yes
FromLineOverride=yes

то сообщение будет таким:

sendmail: Cannot open smtp.spbtlg.ru:25

, причем если посмотреть через telnet smtp.spbtlg.ru 25, то всё ок.

надо разобраться в чем тут дело, и выяснить можно ли настроить ssmtp для работы с smtp.spbtlg.ru, если через ssmtp не получится то можно сделать через sendmail.

Примечания

Как это ни странно, у Авангарда есть ещё и другой сервер mail.spbnit.ru, при использовании которого происходит то же самое. Вот что по его поводу говорит служба поддержки:

Сервер входящей почты (POP3-сервер): pop.mail.spbnit.ru порт 110.
Сервер исходящей почты (SMTP-сервер): smtp.mail.spbnit.ru порт 25.
Имя пользователя на POP-сервере: имя почтового ящика вместе со значком «@» и названием домена (для почтового ящика user@mail.spbnit.ru — user@mail.spbnit.ru).
Пароль: Ваш пароль к почтовому ящику.
При отправке писем через наш SMTP-сервер содержимое поля From: должно совпадать с именем почтового ящика, в котором была осуществлена SMTP-авторизация: если в настройках почтовой программы указан почтовый ящик mailname@mail.spbnit.ru , то именно это имя почтового ящика должно указываться в поле From:.

Странности

один раз при отправке письма через «Напишите Нам» с установленной галочкой «Отправить копию этого сообщения на ваш адрес» была вот такая штука:

См. Продолжение.

Линии 3D/Шарики 3D

Комментариев нет »

No comments yet.

RSS feed for comments on this post. TrackBack URL

Leave a comment

SlogPost.ru