Этот минимальный код для запуска SMTP-сервера работает нормально.Когда я отправляю электронное письмо на мой сервер, все (из-за опции logger
) регистрируется как положено, и данные электронной почты принимаются.
const {SMTPServer} = require("smtp-server");
const {simpleParser} = require("mailparser");
const server = new SMTPServer({
authOptional: true,
onData: async (stream, session, callback) => {
const parsed = await simpleParser(stream);
callback();
console.log(parsed);
},
logger: true
});
server.listen(8025);
Однако, когда я включаю опции TLS, отправкаэлектронная почта на мой сервер больше ничего не регистрирует.Я даже не получаю соединение, согласно журналам.
const fs = require("fs");
const {SMTPServer} = require("smtp-server");
const {simpleParser} = require("mailparser");
const server = new SMTPServer({
secure: true,
authOptional: true,
onData: async (stream, session, callback) => {
const parsed = await simpleParser(stream);
callback();
console.log(parsed);
},
key: fs.readFileSync("privkey.pem"),
cert: fs.readFileSync("cert.pem"),
ca: fs.readFileSync("chain.pem"),
logger: true
});
server.listen(8025);
Я думаю, что файлы сертификатов правильные, потому что я использую их для своего веб-сервера, а также для своей конфигурации Postfix, в том же домене,и HTTP / SMTP-выход работает нормально и безопасно.Я просто не могу получать электронную почту безопасно из-за этой проблемы.
Кстати, я слушаю порт 8025 с перенаправлением iptables
с 25 на 8025, и я просто отправляю через мой Gmailаккаунт.
Что здесь происходит?Я что-то не так делаю?