将 sendmail 配置为 SSL 端口 465 (SMTPS) 的客户端

将 sendmail 配置为 SSL 端口 465 (SMTPS) 的客户端

基本上与以下问题相同Sendmail 配置 SMTP 中继端口 465然而,答案是“我已放弃使用我的主机作为发送邮件中继的想法,转而使用 Gmail”

不过,我打算再试一次,所以情况就是这样。

  • 我的邮件服务器接受短信服务,(SMTP 通过 SSL 到端口 465)。因此,SMTPS 配置是我需要的方式,而不是 STARTTLS,因为
  • STARTTLS 在端口 25 上启动连接,然后将未加密的连接转变为加密连接。
  • 但是,我的邮件服务器的 25 端口被阻止了,原因您也知道,因此短信服务仅有的

选项

根据我从互联网上找到的信息,这里有几种不同的方法。但是我不知道该相信哪一个。

https://fedoraproject.org/wiki/Configure_sendmail_as_a_client_for_SMTPs说(2016 年 8 月 3 日),

使用 Evolution 之类的客户端设置 SMTPS 相当容易,但是配置 sendmail 来完成这项工作并不那么简单……在研究这个主题时,我在互联网上找到了很多有用的资源。但问题之一是他们没有所有的东西,或者有些东西有点不对劲……
在端口 465 上设置 SSL 连接的第一步是配置和运行 stunnel。Stunnel 为普通程序使用 SSL 提供了一个套接字包装器。

即,它说使用stunnel。然而, https://www.cyberciti.biz/faq/howto-configure-sendmail-ssl-certificate-email/说(2006 年 12 月 4 日),

当您想要发送和接收电子邮件时,可以配置 Sendmail 通过安全套接字层 (SSL) 加密电子邮件.
打开 sendmail 配置文件/etc/mail/sendmail.mc...附加/修改以下指令:

define(`confCACERT_PATH',`/etc/mail/ssl/certs')
define(`confCACERT',`/etc/mail/ssl/ca-bundle.crt')
define(`confSERVER_CERT',`/etc/mail/ssl/sendmail.pem')
define(`confSERVER_KEY',`/etc/mail/ssl/sendmail.pem')

以及https://groups.google.com/forum/#!topic/comp.mail.sendmail/Gy6QBfMd3l4上面写着(2006 年 10 月 31 日)

Sendmail 不执行客户端 SMTPS...
您实际上不需要任何证书来进行客户端设置 - 例如,不需要为客户端 STARTTLS 进行任何配置。

问题

所以你可以看到,根据我从互联网上找到的信息,对于如何做到这一点存在相当多的争议。

也许是因为在说出这句话的时候,这个选项已经不存在了,又或者在说出这句话的时候,作者还不知道还有其他选择,等等。因此,

总而言之,sendmail截至 2018 年,如何进行客户端 SMTPS?即,

  • 短信服务仅,没有 STARTTLS。
  • smtp.PlainAuth 已经足够好了——这个 Go 代码 100% 有效:https://gist.github.com/chrisgillis/10888032,但我想sendmail这样做,而不是编写 Go/Nodejs/Python/Php/etc 等代码

谢谢。

答案1

sendmail我已经放弃了使用SSL 端口 465(SMTPS)作为客户端的想法,而是使用msmtp,因为我发现了一篇文章,介绍得msmtp非常清楚,非常容易理解,而且可以轻松地使其工作:

Msmtp:一个简单的邮件传输代理
http://www.futurile.net/resources/msmtp-a-simple-mail-transfer-agent/#installing-msmtp

然而,如果有人愿意回答sendmail,我很乐意将我的答案改为你的答案。

相关内容