我在一个非常严格的网络上进行了远程系统设置。不幸的是,我还没有找到一种方法让他们运行电子邮件中继,或者让系统连接出去发送邮件。
没有办法连接,而是系统使用 SSH 连接(通过 HTTPS 代理发生)并使用 -R 标志将我们系统上的端口转发回远程系统,以便我们登录。
我不知道让 sendmail 使用 https 代理进行出站连接的方法。相反,我使用 -L 将 localhost:2525 转发到我们的邮件服务器,但我不知道如何让 sendmail 将其用作其智能中继。
我的 mc 文件中有以下内容
define(`SMART_HOST', `[10.10.22.4]')
define(`RELAY_MAILER_ARGS', `TCP $h 2525')
10.10.22.4 是系统的 IP 地址,我也试过 127.0.0.1 得到相同的结果..
邮件日志看起来像..
Jun 16 06:50:36 remotehost sm-mta[49702]: starting daemon (8.12.9p2): SMTP+queueing@00:30:00
Jun 16 06:50:36 remotehost sm-msp-queue[49703]: starting daemon (8.12.9p2): queueing@00:30:00
Jun 16 06:51:52 remotehost sendmail[50072]: r5G6poHi050072: from=user, size=46, class=0, nrcpts=1, msgid=<201306160651.r5G6poHi050072@remotehost>, relay=user@localhost
Jun 16 06:51:54 remotehost sm-mta[50129]: r5G6pqM2050129: from=<user@remotehost>, size=373, class=0, nrcpts=1, msgid=<201306160651.r5G6poHi050072@remotehost>, proto=ESMTP, daemon=Daemon0, relay=localhost [127.0.0.1]
Jun 16 06:51:54 igarashi1 sendmail[50072]: r5G6poHi050072: to=user@outside.host, ctladdr=user (19999/19999), delay=00:00:04, xdelay=00:00:02, mailer=relay, pri=30041, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (r5G6pqM2050129 Message accepted for delivery)
Jun 16 06:52:05 remotehost sm-mta[50137]: r5G6pqM2050129: to=<user@outside.host>, ctladdr=<user@remotehost> (19999/19999), delay=00:00:11, xdelay=00:00:11, mailer=esmtp, pri=30368, relay=mail.outside.host. [203.31.81.10], dsn=4.0.0, stat=Deferred: Connection reset by mail.outside.host.
即它似乎忽略了智能继电器部分。是的,我检查了 cf 文件是否正在更改 :) 我还完全重新启动了 sendmail(不仅仅是发送了 HUP)。