Предыдущие варианты предполагают наличие установленных ssl сертификатов на нашем устройстве (opkg install ca-certificates).
Вариант от
Александр Рыжов предполагает наличие sendmail на нашем устройстве, т.к. busybox из Entware не включает в себя апплет sendmail.
Способов послать email много. Ниже я приведу еще один, самый легкий (по требуемому объему hdd), при этом установка сертификатов при использовании, например, gmail не нужна.
Пакет называется msmtp.
1. Установим `opkg install msmtp`
2. Отредактируем файл /opt/etc/msmtprc и приведем его к виду
Код: Выделить всё
host smtp.gmail.com
port 587
tls on
tls_certcheck off
syslog LOG_MAIL
auth login
user user@gmail.com
password my_secret_password
from user@gmail.com
Мы отредактировали строку с host, добавили port, раскомментировали tls on, добавили tls_certcheck off и добавили в самом конце информацию о нашем gmail аккаунте.
Посылка почты осуществляется командой
Код: Выделить всё
echo -e "Subject: Test Mail\r\n\r\nThis is a test mail" |msmtp --from=default -t komu_nado@gmail.com
В логе появлется информация об отправке
Код: Выделить всё
msmtp host=smtp.gmail.com tls=on auth=on user=user@gmail.com from=default recipients=komu_nado@gmail.com mailsize=92 smtpstatus=250 smtpmsg='250 2.0.0 OK 1466052226 g79sm2386866ljg.26 - gsmtp' exitcode=EX_OK
При проблемах добавьте ключ --debug для просмотра подробного лога при отправке.
Если необходимо, можно настроить несколько аккаунтов в msmtp и указывать нужный при отправке почты в параметре -a (вместо --from).
Пример нескольких аккаунтов
Код: Выделить всё
~ # cat /opt/etc/msmtprc
account mailru
# The SMTP smarthost.
host smtp.mail.ru
port 587
# Use TLS.
tls on
tls_certcheck off
# Syslog logging with facility LOG_MAIL instead of the default LOG_USER.
syslog LOG_MAIL
auth login
user user@mail.ru
password mailru_password
from user@mail.ru
account gmail
# The SMTP smarthost.
host smtp.gmail.com
port 587
# Use TLS.
tls on
tls_certcheck off
# Syslog logging with facility LOG_MAIL instead of the default LOG_USER.
syslog LOG_MAIL
auth login
user user@gmail.com
password gmail_password
from user@gmail.com
Отправка почты через mail.ru с дебагом:
Код: Выделить всё
echo -e "Subject: Test Mail\r\n\r\nThis is a test mail" |msmtp --debug -a mailru -t comu_nado@gmail.com