Хорошо, прежде всего, я сделал свою домашнюю работу и исследования по этому вопросу. Большинство руководств, которые я нашел, предназначены для настройки MSMTP с помощью Gmail. Сначала позвольте мне рассказать вам, что я сделал до сих пор.
Моя коробка работает под управлением Ubuntu 12.04. Я использую Zpanel 10.1.1. Поскольку мне не нужно получать электронные письма на моем сервере, мне не нужен Postfix, который входит в комплект программного обеспечения. Поэтому я отключил его при запуске, используя:
sudo update-rc.d postfix disable
Прежде чем я продолжу, сценарий таков. Я запускаю несколько сайтов на этом поле. Они все WordPress сайты. На одном из этих сайтов есть пользователи, которым нужно зарегистрироваться, но мне нужно, чтобы они отправляли письма с подтверждением. Когда люди получают электронные письма, мне нужно сказать, что это с "wordpress@mydomain1.com". Затем, если другой веб-сайт должен отправить электронное письмо, мне нужно получить электронное письмо от домена этого веб-сайта: «wordpress@mydomain2.com». Есть смысл?
Поэтому после того, как я отключил Postfix, я установил MSMTP с помощью команды
sudo apt-get install msmtp ca-certificates
Затем я создал файл конфигурации, используя следующую команду:
sudo nano /etc/msmtprc
Затем внутри Конфигурационный файл выглядит следующим образом: (Имя пользователя и пароль были изменены)
tls on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
tls_starttls off
account default
host smtpout.asia.secureserver.net
user (my GoDaddy email address)
from (my GoDaddy email address)
password (my GoDaddy password)
port 25
Затем в руководстве, которому я следовал, говорилось, что мне нужно выполнить следующую команду:
sudo chmod 0644 /etc/msmtprc
Затем Я вошел в свой файл php.ini и изменил путь sendmail следующими командами:
nano /etc/php5/apache2/php.ini
Затем в php.ini я изменил путь sendmail на этот:
sendmail_path = "/usr/bin/msmtp -t"
Затем я выполнил тест с MSMTP из командной строки:
echo -e "Subject: Test Mail\r\n\r\nThis is a test mail" |msmtp --debug --from=(GoDaddyEmail) -t (PersonalGmailEmail)
С помощью этой команды он показывает мне, что делает сервер, и показывает все ошибки, которые происходят:
loaded system configuration file /etc/msmtprc
ignoring user configuration file /root/.msmtprc: No such file or directory
falling back to default account
using account default from /etc/msmtprc
host = smtpout.asia.secureserver.net
port = 25
timeout = off
protocol = smtp
domain = localhost
auth = choose
user = (GoDaddyEmail)
password = *
passwordeval = (not set)
ntlmdomain = (not set)
tls = on
tls_starttls = off
tls_trust_file = /etc/ssl/certs/ca-certificates.crt
tls_crl_file = (not set)
tls_fingerprint = (not set)
tls_key_file = (not set)
tls_cert_file = (not set)
tls_certcheck = on
tls_force_sslv3 = off
tls_min_dh_prime_bits = (not set)
tls_priorities = (not set)
auto_from = off
maildomain = (not set)
from = (GoDaddyEmail)
dsn_notify = (not set)
dsn_return = (not set)
keepbcc = off
logfile = /root/msmtp.log
syslog = (not set)
aliases = (not set)
reading recipients from the command line and the mail
msmtp: TLS handshake failed: An unexpected TLS packet was received.
msmtp: could not send mail (account default from /etc/msmtprc)
Но ничего из этого не работает .. Так что я делаю не так? Сведения о сервере поступили из центра настройки электронной почты в GoDaddy.
Заранее спасибо. [+1121]
Я думаю, что проблема может совпасть с, я испытал на другом хостинге экономики. Попытайтесь добавить это к своему msmtprc файлу.
tls_certcheck off
кроме того, прокомментируйте эту строку:
tls_trust_file ...