С выходом виртуальной машины появилась стабильная ниша тикетов в техподдержке по настройке почты в виртуальной машине. Стараемся в таких случаях помочь[spoiler], но в основном это касается настройки встроенного в дистрибутив Ubuntu smtp-клиента - msmtp. Такие тикеты подпадают под категорию решение проблем с серверным ПО, и запросто может быть отказано в поддержке или, в лучшем случае, перевод в статус "Консультирование" с временем реакции в 120 часов.
Чтобы уменьшить нагрузку на ТП и как-то помочь решить проблему с почтой на VMBitrix рассмотрим типовую настройку.
Заходим на виртуальную машину и видим первое окно:

Нажимаем Login, входим под root (это обязательно) и видим далее меню настройки:

Жмем 1, потом Enter и проходим шаги базового мастера настройки почты. Для большинства клиентов этот мастер может сразу решить проблему настройки, достаточно указать адрес почтового сервера, порт, требуется ли авторизация для отправки писем, и, если да, то логин и пароль.
Однако, этот мастер не учитывает много нюансов относительно шифрования, специфических алгоритмов аутентификации.
Для проверки результата мы параллельно настройке открываем сам сайт,
переходим в Инструменты-Командная PHP строка и выполняем скрипт после каждой манипуляции с настройками:
Если после прохождения мастера почтовая система не заработала, то заходим под root в консольный режим, переходим в папку /home/bitrix/ - в этой папке мастер создает файл конфигурации .msmtprc - в нем хранится конфиг, вот его то и надо поправить. Также, после того, как мы через функцию mail попробовали отправить письмо и получили ошибку должен создаться файл .msmtp.log - с указанием ошибки отправки, которую вернул почтовый сервер. Его также необходимо изучить.
Примерное содержимое файла .msmtprc:
Видим, что указан хост, порт и то, что авторизация не требуется. Если при таком конфиге в файле .msmtp.log ошибка вида:
Значит, надо включать авторизацию:
Значения user_name и user_password и user@email.com - меняем на свои, их надо запросить у администратора почтового сервера, если они вам неизвестны.
Далее, если ошибка не пропала, значит схема авторизации немного другая и надо пробовать такой конфиг (после каждого изменения необходимо сохранить файл и без перезагрузки веб-сервера пробовать отправить почту скриптом, данным выше):
и такой:
Видны небольшие изменения в названии директив. Один из этих вариантов должен сработать, если нет - возможен другой, специфический механизм, это надо также уточнить у администратора почтового сервера.
Перечисленные выше варианты для почтовой системы без шифрования. Если на вашем почтовом сервере обязательно требуется шифрованием для отправки письма, то тут надо запросить новый номер порта, обычно это 465 и конфиг меняется на такой:
Этот конфиг должен работать с шифрованым соединением. Также, иногда возможны совмещения шифрования с вариантами авторизации, описанными выше и надо пробовать разные конфиги, вроде:
или:
На этом настройка почты должна завершиться с успехом. Если все же есть проблемы, пишите, попробуем помочь с настройкой.
Чтобы уменьшить нагрузку на ТП и как-то помочь решить проблему с почтой на VMBitrix рассмотрим типовую настройку.
Заходим на виртуальную машину и видим первое окно:

Нажимаем Login, входим под root (это обязательно) и видим далее меню настройки:

Жмем 1, потом Enter и проходим шаги базового мастера настройки почты. Для большинства клиентов этот мастер может сразу решить проблему настройки, достаточно указать адрес почтового сервера, порт, требуется ли авторизация для отправки писем, и, если да, то логин и пароль.
Однако, этот мастер не учитывает много нюансов относительно шифрования, специфических алгоритмов аутентификации.
Для проверки результата мы параллельно настройке открываем сам сайт,
переходим в Инструменты-Командная PHP строка и выполняем скрипт после каждой манипуляции с настройками:
if(mail("email@example.com", "TEST SUBJECT", "TEST BODY")) echo "Почтовая система работает!"; else echo "Неудача, почтовая система не работает, попробуйте еще!"; |
Если после прохождения мастера почтовая система не заработала, то заходим под root в консольный режим, переходим в папку /home/bitrix/ - в этой папке мастер создает файл конфигурации .msmtprc - в нем хранится конфиг, вот его то и надо поправить. Также, после того, как мы через функцию mail попробовали отправить письмо и получили ошибку должен создаться файл .msmtp.log - с указанием ошибки отправки, которую вернул почтовый сервер. Его также необходимо изучить.
Примерное содержимое файла .msmtprc:
account default logfile /home/bitrix/.msmtp.log host mail.bitrixsoft.com port 25 from user@email.com auth off |
Видим, что указан хост, порт и то, что авторизация не требуется. Если при таком конфиге в файле .msmtp.log ошибка вида:
cannot use a secure authentication method |
Значит, надо включать авторизацию:
account default logfile /home/bitrix/.msmtp.log host mail.bitrixsoft.com port 25 from user@email.com auth on user user_name passord user_password |
Значения user_name и user_password и user@email.com - меняем на свои, их надо запросить у администратора почтового сервера, если они вам неизвестны.
Далее, если ошибка не пропала, значит схема авторизации немного другая и надо пробовать такой конфиг (после каждого изменения необходимо сохранить файл и без перезагрузки веб-сервера пробовать отправить почту скриптом, данным выше):
account default logfile /home/bitrix/.msmtp.log host mail.bitrixsoft.com port 25 from user@email.com auth on login user_name passord user_password |
и такой:
account default logfile /home/bitrix/.msmtp.log host mail.bitrixsoft.com port 25 from user@email.com auth login user user_name passord user_password |
Видны небольшие изменения в названии директив. Один из этих вариантов должен сработать, если нет - возможен другой, специфический механизм, это надо также уточнить у администратора почтового сервера.
Перечисленные выше варианты для почтовой системы без шифрования. Если на вашем почтовом сервере обязательно требуется шифрованием для отправки письма, то тут надо запросить новый номер порта, обычно это 465 и конфиг меняется на такой:
account default logfile /home/bitrix/.msmtp.log host mail.bitrixsoft.com port 465 tls on tls_starttls off tls_certcheck off from user@email.com auth on login user_name passord user_password |
Этот конфиг должен работать с шифрованым соединением. Также, иногда возможны совмещения шифрования с вариантами авторизации, описанными выше и надо пробовать разные конфиги, вроде:
account default logfile /home/bitrix/.msmtp.log host mail.bitrixsoft.com port 465 tls on tls_starttls off tls_certcheck off from user@email.com auth login user user_name passord user_password |
или:
account default logfile /home/bitrix/.msmtp.log host mail.bitrixsoft.com port 465 tls on tls_starttls off tls_certcheck off from user@email.com auth on login user_name passord user_password |
На этом настройка почты должна завершиться с успехом. Если все же есть проблемы, пишите, попробуем помочь с настройкой.