Задать вопрос
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 не нашел.
Как быть и что делать?
  • Вопрос задан
  • 3788 просмотров
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 4
@Tabletko
никого не трогаю, починяю примус
На современных дебианах дефолтный mta - exim. А /bin/sendmail - симлинк на exim. Смотреть вам надо логи exim.
Ответ написан
Комментировать
leahch
@leahch Куратор тега Linux
3D специалист. Dолго, Dорого, Dерьмово.
Дополню CityCat4
Дополнительно, к правильному формату письма с заголовками и прочей дрянью, еще хорошо бы сделать подпись письма DKIM, и правильно прописать в DNS записи MX и SFP. Иначе в 95% случаев ваше письмо никто не захочет принимать.
Ответ написан
Комментировать
CityCat4
@CityCat4
//COPY01 EXEC PGM=IEBGENER
Отправить письмо из чистого 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 сервера.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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