Задать вопрос
lxfr
@lxfr

Как отправить почту из чистого sendmail на чистом сервере?

Предположим я установил чистый Debian и чистый sendmail.
Мой IP равен IP моего домена, например pochtalon.ru
Т.е. мой сервер IP 2.2.2.2 и домен pochtalon.ru тоже имеет IP 2.2.2.2

Далее я устанавливаю sendmail, и пишу:
echo "hello world" | sendmail -s "hello ded moroz" dedmoroz@ya.ru

Но на dedmoroz@ya.ru ничего не приходит (даже в спам).
Sendmail при этом отрабатывает команду примерно 1 минуту.
Логов по адресу /var/log/sendmail не нашел.
Как быть и что делать?
  • Вопрос задан
  • 3807 просмотров
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 4
@Tabletko
никого не трогаю, починяю примус
На современных дебианах дефолтный mta - exim. А /bin/sendmail - симлинк на exim. Смотреть вам надо логи exim.
Ответ написан
Комментировать
leahch
@leahch Куратор тега Linux
3D специалист. Dолго, Dорого, Dерьмово.
Дополню CityCat4
Дополнительно, к правильному формату письма с заголовками и прочей дрянью, еще хорошо бы сделать подпись письма DKIM, и правильно прописать в DNS записи MX и SFP. Иначе в 95% случаев ваше письмо никто не захочет принимать.
Ответ написан
Комментировать
CityCat4
@CityCat4
Жил да был черный кот за углом...
Отправить письмо из чистого sendmail (а не из mail, как это обычно делается) не совсем просто. На вход sendmail нужно подать готовое письмо - с почтовыми заголовками. Сам sendmail их не генерит, за исключением заполнения заголовка Date:
В письме должны быть следующие заголовки:
- Date: (можно пустой, только текст Date:)
- From: (заполненный, как минимум fromuser@nichego.net в угловых скобках)
- To: (заполненный, также как From)
- Subject: (заполненный, если тема не латиницей, то перекодированный с тегом кодировки - иначе не прочитается)
- Content-Type: (если письмо - не текст, то заполненный по RFC)

Само письмо отправляется командой:
# cat headers.txt body.txt | sendmail junkuser@nichego.net

где headers.txt и body.txt - файлы с заголовками и телом письма.

А лог у sendmail обычно /var/log/maillog
Ответ написан
Комментировать
nekipelov
@nekipelov
Может быть что-нибудь полезное есть в /var/log/maillog? Sendmail обязательно куда-то должен писать логи. Еще можно глянуть взаимодействие с mx сервером yandex с помощью tcpdump, там будет ответ их smtp сервера.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы