Надсилання пошти з сервера для лінивих, ssmtp
Відразу про мінуси. SSMTP працює повільно. 2 секунди на 1 лист для нього – добрий результат. Зазвичай, на велике HTML лист йде 3-6 секунд. Використовуйте акуратно у синхронних операціях. Я переписував код ssmtp так, щоб він працював набагато швидше (
0.2с на лист), але у разі листи починали губитися. Так що не раджу робити цього =)
Загалом, це начебто все важливе. Сама утилітка є красива та система не помітить різницю між, наприклад, локально встановленим exim та ssmtp, котрий шле у віддалений smtp-сервер/relay. Звичайно, вона не працює як справжній smtp-сервер - не відкриває сокет на 25-му порту, не дозволяє відправляти листи телнетом. Але командам mail (з пакету mailx) та apache цього не потрібно.
Встановлюється як завжди:
#apt-get install ssmtp
Попросить знести інші заглушки для sendmail. Потрібно розуміти, що заглушки зазвичай входять до складу MTA, тому MTA знесуться теж (postfix, exim, etc).
Тепер переходимо до редагування конфігу. Спочатку почистимо його (спочатку можете почитати, але мої приклади зійдуть за цілий конфіг):
#echo > /etc/ssmtp/ssmtp.conf
# Вказуємо smtp-сервер, через який надсилатимемо листи. mailhub=smtp.yandex.ru
# Вказуємо ім'я користувача на smtp-сервері. Для ПДР - ящик цілком. [email protected]
# Виставляємо примусове переписування домену у полі From:. В іншому випадку наш лист не буде надісланий стороннім smtp-сервером: rewriteDomain=debian.pro