sendmail:使用智能主机的替代端口

sendmail:使用智能主机的替代端口

Sendmail 不遵循 smart_host 替代端口宏。
使用 Exchange 服务器,exchange.redacted.com,我们将端口 2525 用于内部设备和一些基于 Linux 的计算机,允许它们无需身份验证即可发送外发电子邮件。 “接收连接器”允许通过显式 IP 地址授权中继内部网和外部设备。
基于 Linux 的设备 MTA 是发送邮件

我编辑/etc/mail/sendmail.mc添加:

define(`SMART_HOST',`relay:[exchange.redacted.com]')dnl
define(`RELAY_MAILER_ARGS', `TCP $h 2525')dnl
define(`ESMTP_MAILER_ARGS', `TCP $h 2525')dnl
define(`SMTP_MAILER_ARGS' , `TCP $h 2525')dnl
define(`SMTP8_MAILER_ARGS', `TCP $h 2525')dnl
define(`DSMTP_MAILER_ARGS', `TCP $h 2525')dnl

以防万一,我添加了所有 _*MAILER_ARGS尝试指定要使用的端口但没有成功。

生成的发送邮件配置文件,显示智能主机已选择但未选择替代端口。

# "Smart" relay host (may be null)
DSrelay:[exchange.redacted.com]
...
Mrelay,     P=[IPC], F=mDFMuXa8, S=EnvFromSMTP/HdrFromSMTP, R=MasqSMTP/MasqRelay, E=\r\n, L=2040,
      T=DNS/RFC822/SMTP,
      A=TCP $h

修改 Mrelay,添加 2525 按预期工作:

Mrelay,     P=[IPC], F=mDFMuXa8, S=EnvFromSMTP/HdrFromSMTP, R=MasqSMTP/MasqRelay, E=\r\n, L=2040,
      T=DNS/RFC822/SMTP,
      A=TCP $h 2525

我怎样才能指定端口.mc无需手动编辑源代码即可.cf

答案1

您需要sendmail.mc通过添加以下行来编辑文件。

define(`SMART_HOST', `host.domain.com')dnl
define(`RELAY_MAILER_ARGS',`TCP $h 2525')
dnl # Above line for Smart Relay to use Port 2525 instead of 25

确保将第一行更改为运行 SMTP Port 的中继服务器主机名域2525

在 /etc/mail 目录中运行以下命令来更新 sendmail.cf

m4 sendmail.mc > sendmail.cf 

相关内容