问题:配置jenkins邮箱邮件发送功能时,邮件服务器使用SSL连接,但是在Jenkins中勾选"Use SSL"和"SMTP Port"后,点击Test configuration后,总是报“unable to find valid certification path to requested target”
参考:
参考1:https://www.cnblogs.com/cuiliqiang/p/4039395.html
参考2:https://blog.csdn.net/jiang1986829/article/details/50955359/
原因:
邮件服务器使用的是SSL连接,而要访问的服务器的证书不被jenkins使用的java运行时认可。需要手动下载导入到对应的安全认证中。
解决方法:
1. 首先要得到证书文件(xxx.cer)。从哪里获得呢?既然浏览器能够正常访问,通过浏览器查看证书,并复制到文件XXXX.cer。
2. 然后使用下面的命令把上面那个cer文件导入到Java的运行时系统中:
keytool -import -alias startcom -keystore %JRE_HOME%/lib/security/cacerts -file XXXX.cer
运行该命令时会提示输入密码,如果你没有改过的话密码是’changeit’
然后再运行下面的命令,就可以看到StartCom已经被加进去了。
keytool -list -keystore %JRE_HOME%/lib/security/cacerts
然后在在Jenkins的安装目录下面找到jre\lib\security\cacerts, 重命名备份该文件。
3. 再将%JRE_HOME%/lib/security/cacerts拷贝到Jenkins的安装目录下面。
4. 重启jenkins服务
5. 重新测试发送邮件成功!