2012-12-12 17 views
8

यह एक स्पष्ट प्रश्न की तरह लगता है, लेकिन मैंने उच्च और निम्न देखा है और मुझे कोई जवाब नहीं मिल रहा है।मैं जेनकिन्स जेएनएलपी दासों के लिए सुरक्षा कैसे सक्षम करूं?

  1. मैं (भरोसा)
  2. हम JNLP उपयोग कर रहे हैं (वेब ​​शुरुआत) doodad विंडोज और लिनक्स मशीनों के मिश्रण पर दास चल स्वयंसेवकों के साथ सार्वजनिक इंटरनेट पर एक जेनकींस निरंतर एकीकरण सर्वर चल रहा हूँ: यहाँ की स्थिति है फ़ायरवॉल मुद्दों से बचने के दास शुरू करने और/डिबगिंग ssh की स्थापना
  3. सर्वर मैट्रिक्स आधारित सुरक्षा

मुसीबत है के साथ सेट कर दिया जाता है, मैं कैसे सुरक्षा JNLP साथ काम करता है पर वास्तव में शून्य जानकारी पा सकते हैं। अगर किसी अज्ञात पढ़ने की अनुमति दी जाती है, तो दुनिया में कोई भी गुलाम.जर डाउनलोड कर सकता है और जेएनएलपी फ़ाइल को अपने सर्वर पर यूआरएलएस (अनुमान लगाने में आसान) पर एक्सेस कर सकता है, और दास के रूप में कनेक्ट हो सकता है।

मुझे पता चला कि अगर मैं सभी अज्ञात पहुंच को निरस्त करता हूं, तो jnlp फ़ाइल अवरुद्ध है लेकिन slave.jar अभी भी पहुंच योग्य है।

एक लंबे हेक्स नंबर को छोड़कर, jnlp फ़ाइल में विशेष रूप से सुरक्षित कुछ प्रतीत नहीं होता है। क्या यह सेटअप सुरक्षित है या क्या मुझे कुछ और करना है?

यह अच्छा होगा अगर आगंतुक हाल ही में लॉग इन किए बिना निर्माण देख सकें, लेकिन फिर अगर मैं अज्ञात को पढ़ने की अनुमति देता हूं, तो कोई भी jnlp फ़ाइल तक पहुंच सकता है।

उत्तर

3

किसी भी गुमनाम पढ़ा अनुमतियाँ प्रदान किए जाते हैं, तो दुनिया में किसी slave.jar डाउनलोड कर सकते हैं और (अनुमान लगाना आसान) अपने सर्वर पर यूआरएल पर jnlp फ़ाइल का उपयोग, और एक दास के रूप में जोड़ते हैं।

ऐसा लगता है कि यह वास्तव में जेनकींस में एक महत्वपूर्ण सुरक्षा भेद्यता था:

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

मेरे सवाल के जवाब में, ऐसा लगता है सबसे अच्छा तरीका सभी अनाम तक पढ़ने की पहुंच को अक्षम करने के लिए है।

+0

ऐसा लगता है कि अगर आप अपग्रेड किए गए हैं तो क्या यह तय किया गया था, क्या आपको अभी भी अनाम पढ़ने की पहुंच को अक्षम करने की आवश्यकता है? – DonBecker

0

this jenkins bug पर टिप्पणी से यह है कि इस व्यवहार the security vulnerability फिक्सिंग के पाठ्यक्रम में बदल गया था (पढ़ने अनुमतियों के साथ किसी को भी jnlp फ़ाइल को देखने के लिए अनुमति देता है) लगता है, और अब आप विशेष उपयोगकर्ताओं के लिए jnlp फ़ाइल तक पहुँच को सीमित कर सकते हैं।

मैं या तो वर्तमान व्यवहार पर किसी भी प्रलेखन नहीं मिल सका, लेकिन यह द्वारा

  1. किसी भी प्रदान किए बिना "anynmous"
  2. jnlp फ़ाइल डाउनलोड करने के लिए प्रयास कर रहा है के लिए सभी अनुमतियां वापस लेने के कुछ सुराग प्राप्त करना संभव है साख, wget या इसी तरह का उपयोग कर

चरण 2. एक "403 निषिद्ध" प्रतिक्रिया जो

की तरह एक कुछ होता है दे देंगे

प्रतिक्रिया में जावास्क्रिप्ट रीडायरेक्ट भी शामिल है, इसलिए आपको इसे देखने में सक्षम होने के लिए wget या कुछ अन्य गैर-जावास्क्रिप्ट-सक्षम विधि का उपयोग करने की आवश्यकता है।

परीक्षण और त्रुटि से, मैंने पाया कि "hudson.model.Computer।कनेक्ट "जेनकींस यूआई में" स्लेव कनेक्ट "अनुमति के लिए मानचित्र पर प्रतीत होता है।

संबंधित मुद्दे