Mule 如何将smtps消息发送到独立的greenmail服务器

Mule 如何将smtps消息发送到独立的greenmail服务器,mule,greenmail,smtps,Mule,Greenmail,Smtps,我有一个mule流,需要将smtps消息发送到greenmail服务器 mule流使用smtps连接器配置密钥库和信任库: 我的绿色邮件服务器是使用默认值启动的 当我调用我的流发送电子邮件时,我会收到以下日志: 在Mule日志中: 错误2017-03-17 19:33:38106[默认的连接器.receiver.06] org.mule.exception.defaultMessaginExceptionStrategy: **********************************

我有一个mule流,需要将smtps消息发送到greenmail服务器

mule流使用smtps连接器配置密钥库和信任库:


我的绿色邮件服务器是使用默认值启动的

当我调用我的流发送电子邮件时,我会收到以下日志:

在Mule日志中:

错误2017-03-17 19:33:38106[默认的连接器.receiver.06] org.mule.exception.defaultMessaginExceptionStrategy: ********************************************************************************消息:无法连接到邮件传输。代码
:MULE_错误--2 --------------------------------------------------------------------------------异常堆栈是: 1.未找到受信任的证书(sun.security.validator.ValidatorException)
sun.security.validator.SimpleValidator:396(null) 2.sun.security.validator.ValidatorException:未找到受信任的证书(javax.net.ssl.SSLHandshakeException)
sun.security.ssl.Alerts:192 () 3.无法连接到SMTP主机:localhost,端口:3465(javax.mail.MessaginException)com.sun.mail.SMTP.SMTPTransport:1706 () 4.无法连接到邮件传输。(org.mule.api.endpoint.EndpointException)
org.mule.transport.email.SmtpMessageDispatcher:67 () --------------------------------------------------------------------------------根异常堆栈跟踪:sun.security.validator.validator异常: 在上找不到受信任的证书 sun.security.validator.SimpleValidator.buildTrustedChain(SimpleValidator.java:396) 在 sun.security.validator.SimpleValidator.engineValidate(SimpleValidator.java:134) 位于sun.security.validator.validator.validate(validator.java:260) +3个以上(为所有内容设置调试级别日志或“-Dmule.verbose.exceptions=true”)


在Greenmail服务器日志中:


错误2017-03-17 19:33:38086[smtps:localhost:3465您是如何创建greenmail.jks的?如果您使用的是“keytool-genkey…”,请注意您将使用两个密码

第一个引用.jks文件,第二个引用密钥密码。如果使用此jks设置服务器,则必须同时设置“密钥密码”和“密码”,否则将收到错误:

sun.security.provider.JavaKeyStore.engineGetKey(JavaKeyStore.java:138)位于sun.security.provider.JavaKeyStore$JKS.engineGetKey(JavaKeyStore.java:55)位于

keytool命令示例:

keytool-genkey-keyalg RSA-alias selfsigned-keystore greenmailServer.jks-storepass password-validity 360-keysize 2048

按照步骤进行操作,并注意将要求您输入“密钥密码”

不幸的是,我不能帮你设置smtp服务器,我想这不是替代的


问候!

要解决这个问题,我必须更改所有密码(密钥库、密钥)到greenmail的默认密码。目前,我无法更改正在使用的套接字工厂,因此我无法更改greenmail密码,因为它是在套接字工厂中硬编码的。

Hi Mario。是的,我使用了keytool。我所做的是将存储和证书的密码设置为“changeit”。如果您熟悉greenmail DummySlslServerSocketFactory,如果您查看源代码,您可以看到密码被硬编码为值“changeit”。不熟悉套接字工厂的工作方式,因此我仍在查看密钥库和证书密码的使用/设置方式。