Настроить отправку почты через SSMTP для любого почтовика

Как настроить отправку почты через SSMTP

Как получить данные и настроить SSMTP на сервере.

Введение

Настройка отправки почты через SSMTP реализуется в три шага. Для этого нужно:

1. Выбрать сервис для отправки писем:

2. Получить данные SMTP для настройки.

      3. Настроить SSMTP на сервере. Для настройки SMTP используются данные, которые получены у выбранного сервиса для отправки писем.

      Ниже мы подробнее поговорим про получение данных и настройку.

        Получить данные SMTP для настройки

        Для настройки SMTP используются данные, которые получены у выбранного сервиса для отправки писем. Мы будем рассматривать настройку на примере существующей учетной записи у поставщика почты Gmail (аналогично можно использовать почту Яндекса).

        Для настройки потребуются:

        • имя сервера (hostname);
        • порт (port). Для предупреждения несанкционированных почтовых рассылок, 25 TCP-порт заблокирован Selectel для исходящих соединений в направлении публичных IPv4 и IPv6 адресов. Рекомендуем использовать TCP-порт 587 и 465;
        • логин (login);
        • пароль (password). Получите пароль для приложения, это позволит избежать проблемы с двухфакторной авторизацией и не использовать свой основной пароль.

        Получить пароль для приложения

        1. Откройте страницу своего аккаунта Google. При необходимости выполните вход.
        2. На странице Безопасность перейдите к разделу Вход в аккаунт Google.
        3. Нажмите Пароли приложений.
        4. Войдите в свою учетную запись Google.
        5. На странице Пароли приложений заполните значения параметров и нажмите Создать.
        6. Сохраните сгенерированный пароль, посмотреть пароль еще раз будет невозможно. Если пароль утерян, удалите его и создайте новый.
        7. Нажмите Готово.

        Настроить SSMTP на сервере

        Настройка выполняется через терминал.

        1. Установите SSMTP.

        В CentOS:

        # yum update
        # yum install ssmtp

        В Debian / Ubuntu:

        # apt update
        # apt install ssmtp

        2. Если у вас не установлен nano, установите его.

        В CentOS:

        # yum install nano

        В Debian / Ubuntu:

        # apt install nano

        3. Настройте конфигурационный файл ssmtp.conf.

        # nano /etc/ssmtp/ssmtp.conf

        Для Gmail:

        mailhub=smtp.gmail.com:587
        hostname=smtp.gmail.com:587
        root=ваш_аккаунт@gmail.com
        AuthUser=ваш_аккаунт@gmail.com
        AuthPass=ваш_пароль_для_приложения
        UseSTARTTLS=YES
        UseTLS=YES
        FromLineOverride=YES
        TLS_CA_File=/etc/pki/tls/certs/ca-bundle.crt
        

        Для Яндекса

        hostname=localhost
        FromLineOverride=YES
        AuthUser=ваш_аккаунт@yandex.ru
        AuthPass=ваш_пароль_для_приложения
        smtp.yandex.ru:465
        rewriteDomain=yandex.ru
        UseTLS=YES
        TLS_CA_File=/etc/pki/tls/certs/ca-bundle.crt
        

        4. Настройте конфигурационный файл revaliases:

        # nano /etc/ssmtp/revaliases

         Для Gmail:

        root:ваш_аккаунт@gmail.com:smtp.gmail.com:587

        Для Яндекса:

        root:ваш_аккаунт@yandex.ru:smtp.yandex.ru:465

        5. Замените отправщик почты, который используется по умолчанию, на настроенный ssmtp:

        # mv /usr/sbin/sendmail /usr/sbin/sendmail.orig

        6. Создайте симлинк на ssmtp вместо sendmail:

        # ln -s /usr/sbin/ssmtp /usr/sbin/sendmail

        7. Проверьте отправку электронной почты:

        # $ echo test | mail -v -s "testing ssmtp" адрес@получателя

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