如何为Jenkins JNLP从站启用安全性?

And*_*tte 10 security jenkins

这似乎是一个显而易见的问题,但我看起来又高又低,找不到答案.情况如下:

  1. 我在公共互联网上运行Jenkins持续集成服务器,在Windows和Linux机器上混合使用(受信任)志愿者运行奴隶
  2. 我们正在使用JNLP(Web启动)doodad启动从站以避免防火墙问题和设置/调试ssh
  3. 服务器设置了基于Matrix的安全性

麻烦的是,我可以找到关于安全性如何与JNLP一起工作的零信息.如果授予任何匿名读取权限,那么世界上任何人都可以下载slave.jar并访问我服务器上(易于猜测)URL的jnlp文件,并作为从属连接.

我发现如果我撤销所有匿名访问,jnlp文件被阻止,但slave.jar仍然可以访问.

jnlp文件似乎没有什么特别安全的,除了一个长十六进制数.这个设置安全吗还是我还有别的办法吗?

如果访问者可以在没有登录的情况下看到最近的版本,那将是很好的,但是如果我向匿名者授予读取权限,则任何人都可以访问jnlp文件.

And*_*tte 3

如果授予任何匿名读取权限,那么世界上的任何人都可以下载slave.jar并通过我的服务器上的(容易猜测的)URL访问jnlp文件,并作为从属连接。

事实证明,这实际上是 Jenkins 中的一个严重安全漏洞:

https://wiki.jenkins-ci.org/display/SECURITY/Jenkins+Security+Advisory+2013-01-04

在回答我的问题时,最好的方法似乎是禁用所有匿名读取访问。