通过 swift 邮件程序中的数字证书使用 office365 中继连接器进行身份验证

Authenticating with office365 relay connector via digital certificate in swift mailer

我正在从一个基于 IP 的 office365 交换连接器转移到一个数字证书连接器,因为我正在移动到一个弹性 beanstalk web 集群,它没有一个 ip 供我验证

我已尝试阅读此处可用的有限文档 https://docs.microsoft.com/en-us/previous-versions/exchange-server/exchange-150/dn910993(v=exchg.150) 这帮助我弄清楚我需要发送具有特定域的 TLS 证书,但我不知道如何实际发送该证书PHP 与 SwiftMailer

我找到的最接近的例子是这个例子

$mail->SMTPSecure = 'tls';
$mail->Port = 587;
$mail->SMTPAuth = false;
$mail->SMTPOptions = [
    'ssl' => [
        'verify_peer'  => true,
        'local_cert' => '/path/to/client_cert_and_key.pem'
    ]
];

其中 local_cert 是我的数字证书,但我不确定如何使用正确的域生成证书,我可以重新使用我的 HTTPS 证书吗?

我使用 letsencrypt 生成了证书,从 /etc/letsencrypt/ 中获取了 pem 文件,然后将 fullchain.pem 作为 local_cert 传入,将 privkey.pem 作为 local_k 传入在初始化 smtp 传输时,我为 *.domain 添加了一个数字证书连接器,我能够进行身份验证