Моя проблема связана с правильной настройкой Nodemailer с почтовым сервером Exchange 2010 в приложении Node.js.
Поскольку у меня не возникает проблема аутентификации, которая возникает при использовании известных служб, таких как Outlook365, я предполагаю, что проблема связана с настройками хоста и / или безопасности и порта - я не думаю, что я подключаюсь во-первых.
Мой конфиг ниже -
let transporter = nodemailer.createTransport({
host: 'https://email.<COMPANYNAME>.com/owa',
port: '587',
secure: false,
auth: {
user: <USERNAME>,
pass: <PASSWORD>
},
tls: {
rejectUnauthorized: false
}
});
Здесь ошибки в моем приложении Node -
transporter.sendMail(mailOptions, (error, info) => {
if (error) {
console.log('Send error: ', error);
res.sendStatus(500);
} else {
console.log('Email sent!');
res.sendStatus(200);
}
});
Вот ошибка из журналов AWS EC2 -
getaddrinfo ENOTFOUND https://email.<COMPANYNAME>.com/owa https://email.<COMPANYNAME>.com/owa:587
at errnoException (dns.js:28:10)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:76:26)
code: 'ECONNECTION',
errno: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'https://email.<COMPANYNAME>.com/owa',
host: 'https://email.<COMPANYNAME>.com/owa',
port: '587',
command: 'CONN'
Документы Nodemailer указывают, что хост "- это имя хоста или IP-адрес для подключения (по умолчанию" localhost ’)"
Когда я пытаюсь использовать обычные mail.COMPANYNAME.com, время ожидания моих запросов истекает. Использование адреса явно попадает на мой сервер и возвращает ошибки на указанных мной этапах проверки / отправки.
Опять же, проблема, похоже, связана с моей конфигурацией транспортера с Exchange 2010. Любая помощь очень ценится!