Однако дома мой провайдер блокирует почту, отправленную напрямую через брандмауэр. У меня есть защищенный паролем ssl smtp-сервер, через который я мог бы перенаправить почту, но мне не удалось выяснить, как настроить exim4 для этой работы. Я надеюсь, что кто-нибудь может дать мне пример конфигурации, где я могу подключить имя хоста, имя пользователя, пароль и «использовать ssl», чтобы заставить его отправлять почту через один SMTP-сервер.
Сначала запустите sudo dpkg-reconfigure exim4-configи используйте эти параметры конфигурации:
Общий тип почтовой конфигурации: почта, отправленная smarthost; получено через SMTP или fetchmail
Имя системной почты: <ваше имя хоста>
IP-адрес для прослушивания входящих SMTP-соединений: 127.0.0.1
Другие направления, для которых принимается почта: <ваше имя хоста>
Машины для пересылки почты: <оставьте это поле пустым>
IP - адрес или имя хоста исходящего смартхоста: mail.example.com::587
Скрыть локальное имя в исходящей почте?
Да - вся исходящая почта будет приходить с вашего аккаунта Gmail
Нет - письмо, отправленное с действительным заголовком имени отправителя, будет содержать имя отправителя
Сохранить количество DNS-запросов минимальным (Dial-on-Demand)? нет
Способ доставки локальной почтой: <выберите тот, который вы предпочитаете>
Разбить файл конфигурации на маленькие файлы? Да (вам нужно отредактировать один из следующих файлов)
Затем запустите sudo vi /etc/exim4/passwd.clientи добавьте следующие строки для своего почтового хоста и любые псевдонимы, которые у него есть (найдены через nslookup). Замените <адрес электронной почты> и <пароль> учетной записью, через которую вы хотите направлять почту):
После того, как вы отредактируете passwd.clientфайл, запустите файл, sudo update-exim4.confкоторый интегрирует ваши изменения в конфигурацию Exim4.
Запустите sudo /etc/init.d/exim4 restartи убедитесь, что служба останавливается и запускается правильно. Если служба не может быть перезапущена, возможно, что-то пошло не так при редактировании passwd.clientфайла.
Если Exim4 перезапустился, продолжайте и бегите, sudo tail -f /var/log/exim4/mainlogчтобы посмотреть почтовые журналы. В другом окне отправьте электронное письмо со своей системы и убедитесь, что вы видите в нем запись R=smarthost T=remote_smtp_smarthost H=gmail-smtp-msa.l.google.com ... X=TLS-1.0:RSA_ARCFOUR_MD5:16. В X=TLSозначает , что почта направляется с безопасностью транспортного уровня , который является то , что вы хотите.
Нет необходимости «разбивать файл конфигурации на маленькие файлы», так /etc/exim4/passwd.clientкак в любом случае это отдельный файл.
Запуск CMD
Обратите внимание, что указание порта SMTP может работать не на всех почтовых серверах. Но exim4все равно будет использовать TLS с портом SMTP по умолчанию, если почтовый сервер предложит его. Это можно проверить, посмотрев X=информацию в/var/log/exim4/mainlog
Run CMD
Пожалуйста, просто укажите мне правильное направление. Я не хочу дублировать некоторые вопросы. Что если я хочу, чтобы все пользователи устанавливали свои собственные пароли stmp в своих каталогах HOME? Будет ли exim4 искать различные passwd.client? Tx
Dr Beco
Это звучит как новый вопрос для меня
Стивен Остермиллер
@DrBeco Если у вас есть конкретный вопрос, который не относится к этому вопросу или ответу, пожалуйста, задайте его как вопрос .
Томас Уорд
5
Если вашему провайдеру требуется аутентификация, вы должны установить dc_smarthost в качестве имени хоста почтового сервера и комбинации портов, которые использует ваш провайдер, а dc_eximconfig_configtype в значение «smarthost» следующим образом:
В update-exim4.conf я вставил два двоеточия для строки smarthost, как в, dc_smarthost='mail.example.com::587'и это имело все значение! Наконец начал отправлять почту через.
Маркос
+1 Это очень распространенная ошибка, которую я видел во многих уроках.
TwystO
4
Это работает очень хорошо для меня. Мой провайдер использует порт 25 и dc_smarthost='myisp.mail.server:25'
после изменения этих файлов и выдачи команд:
update-exim4.conf
/etc/init.d/exim4 restart
После того, как я сделал тест, чтобы отправить электронное письмо через образец exim4 classic, как:
echo "content of mail body with pt-br chars ação avião língua é essa em 1609." | mail -s "Confirmar 16DOM" my-user-in-isp@my-domain-url
И это поток нормально папка Входящие my-userв my-domain-url.
/etc/exim4/passwd.client
как в любом случае это отдельный файл.exim4
все равно будет использовать TLS с портом SMTP по умолчанию, если почтовый сервер предложит его. Это можно проверить, посмотревX=
информацию в/var/log/exim4/mainlog
Если вашему провайдеру требуется аутентификация, вы должны установить dc_smarthost в качестве имени хоста почтового сервера и комбинации портов, которые использует ваш провайдер, а dc_eximconfig_configtype в значение «smarthost» следующим образом:
Затем вы можете добавить свои учетные данные,
/etc/exim4/passwd.client
например, так:Затем любая почта, отправленная через ваш сервер exim4, будет направлена через этот почтовый хост.
источник
dc_smarthost='mail.example.com::587'
и это имело все значение! Наконец начал отправлять почту через.Это работает очень хорошо для меня. Мой провайдер использует порт 25 и
dc_smarthost='myisp.mail.server:25'
после изменения этих файлов и выдачи команд:update-exim4.conf
/etc/init.d/exim4 restart
После того, как я сделал тест, чтобы отправить электронное письмо через образец exim4 classic, как:
И это поток нормально папка Входящие
my-user
вmy-domain-url
.источник