SSL23_GET_SERVER_HELLO:unknown protocol [connection to msa (587) port]

杀马特。学长 韩版系。学妹 提交于 2019-12-09 18:45:54

问题


I am trying to send email when a new user registrates or forgot his password. I am working on a linux and the app was developed with node.js.

Error:

[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::

Configuration:

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

I don't know why I get that error.


回答1:


If you connect to msa (587) or smtp (25) port then DO NOT set secureConnection to true.

Your code with secureConnection set to true tries to start SSL negotiation at once but the other side gives you unencrypted SMTP greeting.

https://nodemailer.com/smtp/

secureConnection - use SSL (default is false, not needed with service). If you're using port 587 then keep secureConnection false, since the connection is started in insecure plain text mode and only later upgraded with STARTTLS



来源:https://stackoverflow.com/questions/22462819/ssl23-get-server-hellounknown-protocol-connection-to-msa-587-port

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!