Я бы хотел быть уверен в том, что содержимое моих электронных писем зашифровано при отправке по inte rnet. У меня есть простой сервис в node.js, где я использую nodemailer. Я пробовал много разных конфигураций для транспортера. На данный момент это:
const transporter = nodemailer.createTransport({
host: 'hostName',
port: 465,
secure: false,
tls: {
ciphers: 'SSLv3'
}
})
Когда я пытаюсь принудительно использовать STARTTLS с этой конфигурацией, для портов: 25, 465, 597
:
requireTLS: true,
secure: false,
У меня есть эта ошибка: Error upgrading connection with STARTTLS: 500 5.3.3 Unrecognized command
Итак Ясно, что мой сервер не поддерживает STARTTLS.
Когда я пытаюсь принудительно использовать TLS с:
requireTLS: true,
У меня ошибка: 4605283776:error:1408F10B:SSL routines:ssl3_get_record:wrong version number:../deps/openssl/openssl/ssl/record/ssl3_record.c:332:
, поэтому, вероятно, это означает, что я пытаюсь открыть соединение TLS с портом открытого текста (как сказано здесь: https://github.com/nodemailer/nodemailer/issues/993
Так что я могу предположить, что моя электронная почта не защищена и отправляется в виде открытого текста. Но ... когда Я пытаюсь проверить это, просматривая заголовки необработанных сообщений, я вижу, что используется TLS (некоторые данные были изменены в целях безопасности)
by mx.google.com with ESMTPS id s233id293944.29.2020.04.20.09.26.18
for <example@g.domain.org>
(version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);
Mon, 20 Apr 2020 09:26:18 -0700 (PDT)
Так почему здесь TLS? Я думаю, что нет понимаю, и я не уверен, зашифрованы ли мои электронные письма. Я буду благодарен за любые объяснения.