mail relay: do not accept TLS servers
haraka can only relay via STARTTLS
This commit is contained in:
@@ -97,13 +97,11 @@ const assert = require('assert'),
|
||||
services = require('./services.js'),
|
||||
settings = require('./settings.js'),
|
||||
shell = require('./shell.js'),
|
||||
smtpTransport = require('nodemailer-smtp-transport'),
|
||||
superagent = require('superagent'),
|
||||
sysinfo = require('./sysinfo.js'),
|
||||
system = require('./system.js'),
|
||||
tasks = require('./tasks.js'),
|
||||
users = require('./users.js'),
|
||||
util = require('util'),
|
||||
validator = require('validator'),
|
||||
_ = require('underscore');
|
||||
|
||||
@@ -237,7 +235,8 @@ async function checkSmtpRelay(relay) {
|
||||
connectionTimeout: 5000,
|
||||
greetingTimeout: 5000,
|
||||
host: relay.host,
|
||||
port: relay.port
|
||||
port: relay.port,
|
||||
secure: false // haraka relay only supports STARTTLS
|
||||
};
|
||||
|
||||
// only set auth if either username or password is provided, some relays auth based on IP (range)
|
||||
@@ -250,9 +249,9 @@ async function checkSmtpRelay(relay) {
|
||||
|
||||
if (relay.acceptSelfSignedCerts) options.tls = { rejectUnauthorized: false };
|
||||
|
||||
const transporter = nodemailer.createTransport(smtpTransport(options));
|
||||
const transporter = nodemailer.createTransport(options);
|
||||
|
||||
const [error] = await safe(util.promisify(transporter.verify)());
|
||||
const [error] = await safe(transporter.verify());
|
||||
result.status = !error;
|
||||
if (error) {
|
||||
result.value = result.errorMessage = error.message;
|
||||
|
||||
Reference in New Issue
Block a user