Отправка почты с локальной машины

Добавлено: 30/12/2022 13:24 |  Обновлено: 19/01/2023 11:05 |  Добавил: nick |  Просмотры: 103 Комментарии: 0
Вводная часть
К примеру, есть у вас локальная машина, физическая или виртуалка и вам нужно отправлять с нее почту. Очень часто советуют в таких случаях подключаться к серверам какого-нибудь почтового провайдера, например, Яндекса или Гугла (smtp.yandex.ru / smtp.gmail.com). Но это можно сделать по-другому.
В первую очередь для отправки почты нужен домен, с которого почта будет отправляться. Поэтому в любом случае его нужно зарегистрировать. После регистрации домена, в настройках DNS нужно добавить новую TXT запись:
v=spf1 mx a ip4:123.123.123.123 ~all
где 123.123.123.123 - это ваш публичный ip-адрес (адрес, который выдал ваш интернет-провайдер).

Грубо говоря, эта запись разрешает отправку писем с данного ip-адреса, с использованием данного домена.

Если на машине для отправки писем у вас установлен линукс, в моем случае это Debian, то попытаться отправить письмо можно с помощью следующей команды:
echo "Текст письма" | mail -s "Тема письма" -a "From: root@vash-domen.ru" vasha-pochta@mail.ru
Но данная команда не сработает, так как не установлены и не настроены сервисы для отправки писем.

Установим их с помощью следующей команды:
sudo apt-get install mailutils
После чего нужно дополнительно настроить exim4 - агент пересылки почтовых сообщений.

Переходим в папку с конфигурацией:
cd /etc/exim4
И открываем файл update-exim4.conf.conf, например, с помощью nano:
sudo nano update-exim4.conf.conf
В файле нужно заменить дефолтные настройки на следующие:
dc_eximconfig_configtype='internet'
dc_other_hostnames=''
dc_local_interfaces='0.0.0.0'
dc_readhost=''
dc_relay_domains='vash-domen.ru'
dc_minimaldns='false'
dc_relay_nets='0.0.0.0/0'
dc_smarthost=''
CFILEMODE='644'
dc_use_split_config='true'
dc_hide_mailname=''
dc_mailname_in_oh='true'
dc_localdelivery='mail_spool'
После чего применяем новые настройки командой:
sudo update-exim4.conf
Все. Теперь команда:
echo "Текст письма" | mail -s "Тема письма" -a "From: root@vash-domen.ru" vasha-pochta@mail.ru
должна работать. Я проверил с Яндексом, Майлом и Гуглом. Почта приходит, единственное, что она попадает в спам. Но никто не мешает ее оттуда достать.

Оставьте свой комментарий

Комментариев нет