nodemailer с virtualmin и postfix - аутентификация не удалась - PullRequest
0 голосов
/ 26 сентября 2019

Я использую виртуальный мин.У меня есть рабочая учетная запись электронной почты no-reply@mydomain.com. Я могу войти через webmin / virtual min и отправлять электронные письма.

Теперь я хочу отправлять письма из node.js с помощью nodemailer.

Кстати, это также работает из командной строки.

mail -s "testing email" mygmail@gmail.com < /dev/null

Вот моя конфигурация nodemailer:

{
"smtp" : {
  "host": "localhost",
  "secure": false,
  "auth": {
    "user": "no-reply@mydomain.com",
    "pass": "mypass"
  },
  "tls": {
    "rejectUnauthorized": false
  },
  "debug" : true
},
"from" : "Resourceful Network <no-reply@resourcefulnetwork.nl>"
}

Я нашел следующую конфигурацию в файле конфигурации postfix:

smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination
smtp_tls_security_level = may

Это все устанавливается виртуальным мин.

Я получаю эту ошибку

Error: Invalid login: 535 5.7.8 Error: authentication failed: authentication failure
code: 'EAUTH',
response: '535 5.7.8 Error: authentication failed: authentication failure',
responseCode: 535,
command: 'AUTH PLAIN'

Я на 100% уверен, что пароль правильный.

Если я установил "secure" : true в конфиге nodemailer я получаю эту ошибку

errno: 'ECONNREFUSED',
code: 'ESOCKET',
syscall: 'connect',
address: '127.0.0.1',
port: 465,

Так что, похоже, это не тот путь.

Не уверен, какой протокол входа использовать .. Нужно лиустановить authMethod ?Безопасно или не безопасно?

1 Ответ

0 голосов
/ 27 сентября 2019

Мне удалось это исправить, удалив auth из конфигурации nodemailer.Теперь я понимаю, smtpd_recipient_restrictions = permit_mynetworks означает, что любому на локальном хосте автоматически разрешено отправлять.И каким-то образом все еще провайдер (правильное) имя пользователя + пароль срабатывает?

...