java使用javax.mail发送邮件报Could not connect to SMTP host:. SSLHandshakeException: No appropriate protocol

在使用javax.mail编写发送邮件的功能时,采用了SSL方式,在windows本地开发环境可以成功发送邮件。但是放到linux服务器上就不行,报以下错误:

javax.mail.MessagingException: Could not connect to SMTP host: test.163.com, port: 465;
  nested exception is:
        javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
        at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1961)
        at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:654)
        at javax.mail.Service.connect(Service.java:317)
        at javax.mail.Service.connect(Service.java:176)
        at javax.mail.Service.connect(Service.java:125)
        at javax.mail.Transport.send0(Transport.java:194)
        at javax.mail.Transport.send(Transport.java:124)
        at com.example.demo.controller.SendEmailUtil.sendEmail(SendEmailUtil.java:80)
        at com.example.demo.controller.DemoController.testDemo(DemoController.java:10)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190)
        at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138)
        at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:105)
        at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:893)
        at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:798)
        at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)

经过研究、排查发现是linux服务器的JDK不支持SSLv3,TLSv1,TLSv1.1,导致。
修改/usr/java/jdk1.8.0_60/jre/lib/security/java.security文件中的 jdk.tls.disabledAllgorithms属性,删除其中的SSLv3,TLSv1,TLSv1.1,然后resource /usr/java/jdk1.8.0_60/jre/lib/security/java.security即可。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
此扩展程序可帮助您追踪使用zoho邮件发送的电子邮件。 您是否使用Zoho Mail?您想知道何时阅读电子邮件吗?好吧,那么此扩展名适合您。只需使用您的电子邮件登录,它就会跟踪发送电子邮件的人何时阅读您的电子邮件。重要更新:-您现在可以静音/删除以前跟踪的电子邮件,以停止一些烦人的通知 -通知回来了! -您可以暂时关闭通知 -专用设置页面-专用历史记录页面-用户可以在设置中更新时区-在扩展程序的“更改日志”部分中有更多内容!常见问题解答-您如何做到这一点?实际上,这是大多数跟踪软件使用的一种常见技术 Mailchimp,Mailgun和所有其他提供跟踪功能的提供程序都使用了此功能。甚至Zoho都在他们的竞选电子邮件中使用了此功能 -嗯,这是什么技术?我们只需要在您的邮件中插入一张图片,该图片在加载后就表明已经阅读了该电子邮件 -因此,收件人必须单击*“显示图像”才能成功跟踪电子邮件?好吧,我比您真正讨厌它。但是如上所述,除非打开插入的图像,否则我们无法真正跟踪打开。但是好消息是,当收件人将您带入“受信任的列表”或Gmail等提供程序(将自动打开图像)中时,收件人将无需单击任何按钮 -那么您是否跟踪我发送给谁以及向谁发送?我们不是,绝不会追踪您寄来的任何费用。我们明白了,隐私很重要。但是,为了区分不同的电子邮件,我们必须存储电子邮件的“主题” **以及您要发送给谁。如果您要禁用此功能,我们计划在以后的版本中添加设置 ##我们计划添加的内容-我们计划非常快地进行firefox扩展。因此,如果您在firefox上使用Zoho Mail,这对您来说是个好消息 -我们将为用户添加一个设置,使该用户无法看到同一IP的多个打开 -当前,它仅在mail.zoho.com上有效。但是,zoho也允许您在自己的域(例如example.com/mail)上设置zoho邮件。我必须添加这些。显然,我们希望就如何使它变得更好提供一些建议和反馈。如果您发现错误或有话要说,可以在这里发表评论,甚至可以通过admin@zohomailtracker.com与我们联系。继续共享 ZMT 支持语言:English

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值