Назад | Перейти на главную страницу

Linux: отправлять почту на внешний почтовый ящик с сервера с именем хоста этого пользователя.

У меня sendmail работает на Linux. Скажем, имя хоста коробки bar.com. Если я выполню следующую команду, я не получу электронное письмо (которое размещено на стороннем сервере), предположительно из-за имени хоста, указывающего на локальный компьютер.

echo "Test Body" | mail -s "Test Subject" foo@bar.com

Есть ли способ заставить это работать, чтобы я мог получать электронные письма на свой сторонний адрес электронной почты, даже если у него такое же имя хоста? Должен ли я изменить имя хоста этого сервера (не рекомендуется)?

Возможно, стоит отметить, что я создал пользователя «foo» на своей машине и заметил, что почтовый ящик для этой учетной записи пуст.

Я заметил эти записи журнала, которые могут иметь или не иметь отношения:

Jun 28 01:09:48 bar sendmail[14338]: p5S59min014338: from=apache, size=80, class=0, nrcpts=1, msgid=<201106280509.p5S59min014338@bar.com>, relay=apache@localhost
Jun 28 01:09:48 bar sendmail[14339]: p5S59mIA014339: from=<apache@bar.com>, size=293, class=0, nrcpts=1, msgid=<201106280509.p5S59min014338@bar.com>, proto=ESMTP, daemon=MTA, relay=localhost.localdomain [127.0.$
Jun 28 01:09:48 bar sendmail[14338]: p5S59min014338: to=foo@bar.com, ctladdr=apache (48/48), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30080, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (p5S59mIA$
Jun 28 01:09:48 bar sendmail[14340]: p5S59mIA014339: to=<foo@bar.com>, ctladdr=<apache@bar.com> (48/48), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=30495, dsn=2.0.0, stat=Sent

С комментарием Флимзи я смог заставить это работать. Возможно, это не точное решение моего исходного вопроса, но это правда, что имя хоста сервера должно быть поддоменом.

Я изменил имя хоста на abc.bar.com:

(Особые инструкции Fedora)

Для существующей сессии: имя хоста abc.bar.com

Постоянно: редактировать /etc/sysconfig/network

затем service sendmail restart и вуаля!