Использование порта 587 с sendmail

Я использую sendmail для отправки писем с помощью внутреннего почтового сервера. Но в настоящее время порт 25 заблокирован по соображениям безопасности.

Я хотел бы знать, есть ли способ указать номер порта в утилите sendmail. Я пытаюсь использовать безопасный SMTP-порт MSA 587 в качестве альтернативы, предполагая, что я мог бы открыть этот порт.

Я не смог найти что-либо на страницах man для sendmail. Есть ли альтернативная утилита, которая может это сделать?

2 Solutions collect form web for “Использование порта 587 с sendmail”

Если явно не настроено иначе, почта будет передаваться через порт 25.

Вы можете маршрутизировать почту с помощью других портов или даже других протоколов, кроме SMTP, но обычно это будет работать только в вашей собственной сети. Почтовые серверы от ваших предполагаемых получателей, скорее всего, будут принимать только входящую электронную почту через SMTP на порт 25.

Например, когда я настраиваю sendmail для прослушивания порта 587, он, как правило, принимает только входящую электронную почту по этому порту, когда пользователь прошел аутентификацию.

DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea') 

Большинство сетей, которые ограничивают входящий и / или исходящий SMTP-трафик (хорошая и распространенная практика как для интернет-провайдеров, так и для корпоративных сетей для предотвращения открытых почтовых рассылок, спама и других злоупотреблений), предоставляют серверы ретрансляции, что позволяет отправлять почту, но не неограниченно. Серверы ретрансляции могут проверять содержимое (вирусы, спам) или применять политики (добавление стандартного отказа от ответственности, архивирование сообщений на соответствие, ограничение получателей) и т. Д.

Если у вас есть сервер ретрансляции; в sendmail, который называется smarthost и настроен в

 # sendmail.mc define(`SMART_HOST',`relay.example.com`)dnl 

Если ваш сервер ретрансляции прослушивает порт 587, который становится:

 # sendmail.mc define(`SMART_HOST',`relay.example.com`)dnl define(`RELAY_MAILER',`esmtp')dnl define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl 

Предполагается, что sendmail перенаправляет весь ваш почтовый трафик на реле, которое передает сообщения предполагаемым получателям и серверу ретрансляции, не требующему аутентификации.

Вы можете настроить свою электронную почту с помощью mailertable.


Чтобы перенаправить некоторые домены электронной почты на один удаленный TCP-порт, а почта для других доменов для другого требует некоторого редактирования в sendmail.cf для настройки новой почтовой программы. Скопируйте настройки из существующей почтовой программы esmtp и добавьте номер порта:

  # sendmail.cf # <snip> Mesmtp587, P=[IPC], F=mDFMuXa, S=EnvFromSMTP/HdrFromSMTP, R=EnvToSMTP, E=\r\n, L=990, T=DNS/RFC822/SMTP, A=TCP $h 587 Mesmtp2525, P=[IPC], F=mDFMuXa, S=EnvFromSMTP/HdrFromSMTP, R=EnvToSMTP, E=\r\n, L=990, T=DNS/RFC822/SMTP, A=TCP $h 2525 

транспортный канал esmtp587 теперь будет поставляться на порт 587 вместо стандартного 25 или, соответственно, 2525 или любого другого альтернативного порта, который вы указали.

Затем в вашем почтовом ящике:

  example.com esmtp587:example.com example2.com esmtp2525:example2.com 

Вышеуказанная строка позволит sendmail искать записи MX для example.com, если только один (ретрансляционный) smtp-сервер для example.com поддерживает нестандартный порт, синтаксис станет:

  example.com esmtp587:[smtp.example.com] 

Скобки говорят sendmail игнорировать возможные записи MX для smtp.example.com и маршрутизировать всю почту для @ example.com на smtp.example.com:587.

Записи файла sendmail.mc:

 dnl Modify relay mailer to make it connect to port 587 instead of 25 define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl dnl Define relay for non local email dnl Use [] to disable looking up for MX records define(`SMART_HOST', `relay:[name.of.smart.host]')dnl 

Sendmail FAQ 3.39: Как отправить альтернативный порт?

PS Вы можете использовать FEATURE (mailertable), чтобы указать другое реле для определенных не локальных доменов электронной почты.

  • sendmail не отправляется в облако (работает локальная почта)
  • Блокировка блокировки SMTP с помощью белого списка
  • msmtp альтернатива, которая понимает / etc / aliases
  • Как отправить почту с удаленного SMTP-хоста?
  • Как я могу безопасно отправлять электронную почту через зашифрованное соединение из командной строки?
  • Ошибка доступа к ретрансляции при попытке отправить почту извне в постфикс
  • IPTABLES, чтобы разрешить ssh, ftp, pop и т. Д. С одного статического IP-адреса с открытым HTTP / SSL
  • Поймайте все электронные письма и сохраните их в MySQL
  • Настройка почтового сервера для простоты отправки сообщений электронной почты
  • Защита постфикса от атак с использованием bruteforce
  • SMTP Auth - SASL на Dovecot, Postfix и CentOS 6.2 (и Open-Xchange)
  • Linux и Unix - лучшая ОС в мире.