SSL23_GET_SERVER_HELLO:未知协议[连接到msa(587)端口]

时间:2014-03-17 18:49:25

标签: javascript node.js email smtp smtpclient

我正在尝试在新用户注册或忘记密码时发送电子邮件。 我正在使用linux,该应用程序是使用node.js开发的。

错误:

[Error: 140020013401920:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:

014-03-17T04:23:22-0700 app.0: debug: cleared heartbeat timeout for client VP5heQmQKpirWe81qegF
2014-03-17T04:23:22-0700 app.0: debug: set heartbeat interval for client VP5heQmQKpirWe81qegF
2014-03-17T04:23:28-0700 app.0: { name: 'anyUser',
2014-03-17T04:23:28-0700 app.0: { [Error: 140020013401920:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:../deps/openssl/openssl/ssl/s23_clnt.c:683:
2014-03-17T04:23:28-0700 app.0:   hash: null,
2014-03-17T04:23:28-0700 app.0: ] stage: 'init' }
2014-03-17T04:23:28-0700 app.0:   email: 'testmail@testmail.com',
2014-03-17T04:23:28-0700 app.0:   initial: null,
2014-03-17T04:23:28-0700 app.0:   _id: 5326d4262a8c57cf04000005,
2014-03-17T04:23:28-0700 app.0:   __v: 0,
2014-03-17T04:23:28-0700 app.0:   pending: false,
2014-03-17T04:23:28-0700 app.0:   playerBadges: [],
2014-03-17T04:23:28-0700 app.0:   appRole: 'Player',
2014-03-17T04:23:28-0700 app.0:   projectsPlayer:
2014-03-17T04:23:28-0700 app.0:    [ { project: 5326d366c004dd9305000005,
2014-03-17T04:23:28-0700 app.0:        _id: 5326d4262a8c57cf04000006,
2014-03-17T04:23:28-0700 app.0:        role: 'Team Member' } ] }
2014-03-17T04:23:28-0700 app.0: PUT /login/resetpassword 200 4ms - 58
2014-03-17T04:23:28-0700 app.0: notify client side that there are a error send  email
2014-03-17T04:23:47-0700 app.0: debug: emitting heartbeat for client VP5heQmQKpirWe81qegF
2014-03-17T04:23:47-0700 app.0: debug: websocket writing 2::

配置:

var smtp = {
  host: "server.stestmail.local",
  secureConnection: true,
  port: 587,
  requiresAuth: false,
  domains: ["stestmail.com"],
  auth: {
    user: "anyuser@stestmail.com",
    pass: ""
  }

我不知道为什么会收到这个错误。

1 个答案:

答案 0 :(得分:9)

如果您连接到msa(587)或smtp(25)端口,则不要secureConnection设置为 true

secureConnection设置为true的代码会尝试立即启动SSL协商,但另一方会为您提供未加密的 SMTP问候语。

https://nodemailer.com/smtp/

  

secureConnection - 使用SSL(默认为false,服务不需要)。如果您正在使用端口587,则将secureConnection保持为false,因为连接以不安全的纯文本模式启动,并且稍后仅使用STARTTLS进行升级