强制 nodemailer 仅使用推荐的密码执行 TLS 1.2

Forcing nodemailer to only do TLS 1.2 with recommended ciphers

我想让我的 NodeMailer 只能发送给收件人 运行 TLS 1.2 - 并且只有当前推荐的密码 - 我将提供列表。

我查看了当前的选项,似乎我无法直接在 Transport 上提供这个?或者如果可能的话如何?

我已经阅读了当前文档 - 它指的是 TLS 套接字对象,但我在那里看不到任何 "require" tls 选项?

您可以指定要使用的 TLS 选项,然后创建您的传输(请参阅此处的文档:https://nodemailer.com/smtp/)。

TLS Options 允许您指定要使用的 TLS 协议的最高和最低版本以及要使用的密码。

将最低 TLS 版本设置为 1.2 将至少强制执行此版本。

示例如下:

const nodemailer = require('nodemailer');

const transport = nodemailer.createTransport({
    host: "some-host",
    port: 465, // Use whichever port here.
    secure: true, // use TLS
    tls: {
        maxVersion: 'TLSv1.3',
        minVersion: 'TLSv1.2',
        ciphers: 'TLS_AES_128_GCM_SHA256',
    }
});

请在此处查看 link 以了解可能的密码套件:Node.js TLS Cipher suites