Jenkins 詹金斯奴隶代理启动失败

Jenkins 詹金斯奴隶代理启动失败,jenkins,Jenkins,使用“从从从机上的浏览器启动代理”选项从从机启动从机代理时,会失败。它为slave-agent.jnlp打开一个窗口,当使用Java Web Start Launcher打开时,它会显示启动应用程序弹出窗口,然后另一个弹出窗口会显示“验证证书失败”消息 错误详细信息如下: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: java.security.InvalidKeyE

使用“从从从机上的浏览器启动代理”选项从从机启动从机代理时,会失败。它为slave-agent.jnlp打开一个窗口,当使用Java Web Start Launcher打开时,它会显示启动应用程序弹出窗口,然后另一个弹出窗口会显示“验证证书失败”消息

错误详细信息如下:

java.security.cert.CertificateException:
java.security.cert.CertPathValidatorException:
java.security.InvalidKeyException: Wrong key usage
    at com.sun.deploy.security.TrustDecider.isAllPermissionGranted(Unknown Source)
    at com.sun.javaws.security.AppPolicy.grantUnrestrictedAccess(Unknown Source)
    at com.sun.javaws.LaunchDownload.checkSignedResourcesHelper(Unknown Source)
    at com.sun.javaws.LaunchDownload.checkSignedResources(Unknown Source)
    at com.sun.javaws.Launcher.prepareResources(Unknown Source)
    at com.sun.javaws.Launcher.prepareAllResources(Unknown Source)
    at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
    at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
    at com.sun.javaws.Launcher.launch(Unknown Source)
    at com.sun.javaws.Main.launchApp(Unknown Source)
    at com.sun.javaws.Main.continueInSecureThread(Unknown Source)
    at com.sun.javaws.Main$1.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.security.cert.CertPathValidatorException:
 java.security.InvalidKeyException: Wrong key usage
    at sun.security.provider.certpath.OCSPResponse.verifyResponse(Unknown Source)
    at sun.security.provider.certpath.OCSPResponse.<init>(Unknown Source)
    at sun.security.provider.certpath.OCSP.check(Unknown Source)
    at sun.security.provider.certpath.OCSP.check(Unknown Source)
    at com.sun.deploy.security.TrustDecider.doOCSPEEValidation(Unknown Source)
    ... 13 more
Caused by: java.security.InvalidKeyException: Wrong key usage
    at java.security.Signature.initVerify(Unknown Source)
    ... 18 more
java.security.cert.CertificateException:
java.security.cert.CertPathValidator异常:
java.security.InvalidKeyException:密钥使用错误
在com.sun.deploy.security.TrustDecider.IsAllPermissionGrassed上(未知源)
位于com.sun.javaws.security.AppPolicy.grantUnrestrictedAccess(未知源)
在com.sun.javaws.LaunchDownload.checkSignedResourceHelper(未知源)
位于com.sun.javaws.LaunchDownload.checkSignedResources(未知源)
位于com.sun.javaws.Launcher.prepareResources(未知源)
位于com.sun.javaws.Launcher.prepareAllResources(未知源)
位于com.sun.javaws.Launcher.prepareToLaunch(未知源)
位于com.sun.javaws.Launcher.prepareToLaunch(未知源)
位于com.sun.javaws.Launcher.launch(未知源)
位于com.sun.javaws.Main.launchApp(未知源)
位于com.sun.javaws.Main.continueInSecureThread(未知源)
位于com.sun.javaws.Main$1.run(未知源)
位于java.lang.Thread.run(未知源)
原因:java.security.cert.CertPathValidator异常:
java.security.InvalidKeyException:密钥使用错误
位于sun.security.provider.certpath.OCSPResponse.verifyResponse(未知源)
位于sun.security.provider.certpath.ocsResponse。(未知源)
位于sun.security.provider.certpath.OCSP.check(未知源)
位于sun.security.provider.certpath.OCSP.check(未知源)
在com.sun.deploy.security.TrustDecider.DoocPeeValidation(未知源)上
... 还有13个
原因:java.security.InvalidKeyException:密钥使用错误
位于java.security.Signature.initVerify(未知源)
... 还有18个
而当我运行“if the slave is headless:”选项时,它会打开一个命令提示符,并显示连接到主机的消息。从机也会在线显示在仪表板上


主机在我的本地计算机上,我通过VPN连接到远程计算机(WindowsXP)。我想将此远程设备用作Windows服务的从属设备,而不是通过命令提示符运行。如何执行此操作?

将Jenkins slave作为服务安装后,转到您的slave上配置的“远程根目录”,在文本编辑器中打开
Jenkins slave.xml
文件,将
-noCertificateCheck
添加到
标记的末尾,然后重新启动服务。这将消除证书异常。

首先,从控制面板中选择“Java”。选择“高级”选项卡。扩展“安全性”。确保未选中“启用联机证书验证”和“仅为发布者证书启用联机证书验证”

然后运行JNLP文件。如果Jenkins根目录不存在,则需要创建它


最后,按照@sschuberth的回答进行操作。

我尝试了-无证书检查…仍然出现错误…就在slave Win ER OnDemand启动之前。。。正在执行启动前脚本。。。[12/29/17 11:01:16]启动代理$aws ec2启动实例--实例ID i-0bb13cxxxxx--地区ap-Southwest-1{“启动实例”:[{“以前的状态”:{“名称”:“正在运行”,“代码”:16},“当前状态”:{“名称”:“正在运行”,“代码”:16},“InstanceId”:“i-0bb13c3xxxxx”}]}错误:无法启动Win-ER OnDemand java.io.EOFEException的代理程序:hudson.remoting.ChannelBuilder.negotiate(ChannelBuilder.java:411)处的意外流终止hudson.remoting.ChannelBuilder.build(ChannelBuilder.java:356)在hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:412)和hudson.slaves.CommandLauncher.launch(CommandLauncher.java:139)中,在hudson.slaves.SlaveComputer$1.call(SlaveComputer.java:285)中,在jenkins.util.ContextResettingExecutorService$2.call(ContextResettingExecutorService.java:46)中,在java.util.concurrent.FutureTask.run中(FutureTask.java:266)java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)java.lang.Thread.Thread.java:748)错误:以退出代码0终止的进程禁用证书检查不是解决方案,而是无法修复问题。如果没有其他解决方案,这是一个很容易的说法。也尝试了您的选项…..2017年12月29日上午11:22:04 hudson.remoting.jnlp.Gulistener$2运行严重:服务器拒绝了连接:无协议被接受java.lang.Exception:服务器拒绝了连接:hudson.remoting.Engine.onConnectionRejected(Engine.java:651)的hudson.remoting.Engine.innerRun(Engine.java:615)的hudson.remoting.Engine.run(Engine.java:451)没有接受任何协议