@0xC0CAC01A

Линуксовые рассылатели мейлов?

Есть список из сотни имён и мейлов, по ним надо разослать шаблонизированный текст (не спам). Есть работающая линуксовая тулза, подсоединяющаяся к почтовому серверу по SMTP и рассылающая такие письма?

EDIT: Пожалуйста, не надо отвечать рекомендацией соорудить свой велосипед. Да, это можно сделать без проблем, но лучший код - это тот код, который не написан, а задача решена. Ищу именно готовые решения, если такие есть.
  • Вопрос задан
  • 206 просмотров
Пригласить эксперта
Ответы на вопрос 3
paran0id
@paran0id Куратор тега Linux
Умный, но ленивый
Вам нужен консольный почтовый клиент? Их много.
Ответ написан
xotkot
@xotkot
хорошо есть и хорошо весьма
в принципе тут ничего такого сложного нету
1)
линуксовая тулза, подсоединяющаяся к почтовому серверу по SMTP

берем простенький SMTP-клиент, к примеру, msmtp и настраиваем его на нужный SMTP-сервер, займёт минут 5 в простом варианте
2)
рассылающая такие письма
Есть список из сотни имён и мейлов, по ним надо разослать шаблонизированный текст (не спам)

для этого можно написать простенький скрипт который с помощью нашего ранее установленного и настроенного msmtp будет рассылать письма по списку(list), сам список при желании можно вынести и в отдельный файл, а также уменьшить или добавить в него переменные для шаблона разделяя их с помощью ";"
самый простой вариант скрипта:
#!/usr/bin/env bash

From="username@domain.com"

list='username1@domain1.com;Name1
username2@domain2.com;Name2
username3@domain3.com;Name3'

for i in $list; do
eval $(echo "$i" |awk -F';' '{print "To="$1";Name="$2}')
template="To: ${To}
From: ${From}
Subject: A test

Hello ${Name}.
"
	echo -n -e "$template" | msmtp -a default "${To}"
	echo "отправленно $To"
done

где значение From и default (из конфига msmtp) должны совпадать
Ответ написан
Комментировать
@Karpion
Если у Вас в системе уже есть почтовый сервер (SendMail, Postfix, etc) - то он прекрасно работает в этой роли. Изучите работу программы mail или rmail.

Однако, есть проблема: Ваш IP-адрес д.б. корректно прописан в ReverceDNS, т.е. его IP-адрес должен нормально резолвится в доменное имя, а доменное имя - в тот же IP-адрес. И доменное имя д.б. не подозрительным - в смысле, типичным для спамеров. И оно не д.б. в списке адресов, с которых почту принимать не следует (нормальные провайдеры размещают свои IP-адреса в таких списках).
Если Вы работаете под NAT - то речь о внешнем IP-адресе NAT-сервера.
Если этого не сделать - то многие почтовые системы будут считать ваши письма заведомым спамом.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы