Надсилання електронної пошти з мого сервера


11

Отже, я хотів би надіслати електронну пошту зі свого сервера.

Я встановив mailx

apt-get install mailx

Але така команда, як

mail -s "Hello world" me@gmail.com

Насправді вводиться помилка в / var / spool / mail /, яка говорить:

Mailing to remote domains not supported.

Чому це відбувається?

Відповіді:


17

Який MTA ви використовуєте на місцях? mailпросто дає вам можливість формувати поштове повідомлення, але вам все одно потрібно і MTA, щоб зробити фактичну доставку? За замовчуванням більшість дистрибутивів надходять із sendmail. Можливо, вам буде потрібно встановити інший MTA або налаштувати поточний для підтримки зовнішньої доставки.


1
З лог-файлу тут виглядає як exim 4.69
bobobobo

6
Якщо ви використовуєте Debian / Ubuntu, вам потрібно буде відредагувати /etc/exim4/update-exim4.conf.confта змінити рядок, щоб прочитати dc_eximconfig_configtype='internet'та перезапустити exim. Якщо ви використовуєте інший дистрибутив, переконайтеся, що ця лінія виглядає приблизно такhostlist relay_from_hosts = 127.0.0.1
vmfarms

10
Насправді я використав команду dpkg-reconfigure exim4-config"майстер", і вона працює зараз! Спасибі!
бобобобо

2

Тому що mailx очікує повну інфраструктуру SMTP, яка не налаштована за замовчуванням. Який тип SMTP-сервера, якщо такий є, ви встановили (наприклад, postfix, exim, sendmail, qmail)?


Я вважаю, що у мене є exim
bobobobo

1
# fgrep remote /var/log/exim4/mainlog.1 | sed -E 's#([ <])[^ <]+@[^ >]+([ >])#\1a@b\2#g' | head -1
2019-01-08 00:47:00 1ggebk-00055M-St ** a@b <a@b> R=nonlocal: Mailing to remote domains not supported
#

Здається, що Debian може exim4поставитись із встановленим для неправильної роботи на підключеному до Інтернету машині, де вихідні порти smtp не блоковані.

Як вказувалося в різних коментарях, щоб правильно працювати, потрібно запустити dpkg-reconfigure exim4-config, і в межах майстра вибрати перший internetваріант . Зауважте, що в наступних діалогових вікнах майстра налаштування за замовчуванням все ще встановлено для прослуховування лише на localhostIPv4 / IPv6 адресах, тож виявляється, що якщо ви залишите інші параметри за замовчуванням у спокої, ви все ще залишаєте вхідний порт SMTP у спокої.

Щоб переконатися, що майстер працював правильно, ви можете перевірити специфіку Debian /etc/exim4/update-exim4.conf.conf(так, це дубль .conf.conf, це не помилка), яка грає роль у цьому фіаско. Ось відповідні частини після запуску dpkg-reconfigure exim4-configта лише зміни першої опції майстра, яка дозволяє надсилати пошту, але зберігає порт SMTP відкритим лише для самого апарату (опція за замовчуванням, якщо ви просто натискаєте в перенастроюванні після першого параметра) :

dc_eximconfig_configtype='internet'
…
dc_local_interfaces='127.0.0.1 ; ::1'

Іншим рішенням буде встановити DragonFly Mail Agent в jessie і вище - https://packages.debian.org/jessie/dma - що є простою реалізацією MTA, реалізуючи всі хороші речі по пошті UNIX, крім SMTP, що надходить, так , вам не доведеться турбуватися про неправильну конфігурацію або зовнішні вразливості.


0

Якщо у вас немає встановленого внутрішнього сервера SMTP, ви могли б надіслати пошту, наприклад, через SMTP-сервер gmail, ви можете встановити sSMTP MTA і налаштувати її за допомогою сервера gMail SMTP або іншого зовнішнього SMTP-сервера.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.