2010-09-14 10 views
8

मैं HudsonGerrit Trigger प्लग-इन का उपयोग करने का प्रयास कर रहा हूं।गेरिट और हडसन के लिए एसएसएच कुंजी बनाना

किसी भी कारण से, Gerrit/var/lib/hudson/.ssh/id_rsa पर SSH कुंजी को स्वीकार नहीं कर रहा है।

जीयूआई में मैं एक त्रुटि के रूप में Connection error : com.jcraft.jsch.JSchException: Auth fail मिलता है, और जब मैं टर्मिनल में काम कर रहा हूँ मैं एक Permission denied (publickey) त्रुटि मिलती है।

मैं एक काम कर रहे निजी कुंजी को कैसे उत्पन्न और उपयोग कर सकता हूं ताकि Hudson और Gerrit अच्छा खेल सकें?

उत्तर

9

ओपी Josh Smith यह सुलझा करने में कामयाब रहे:

मैं वास्तव में उपयोगकर्ता (मुझे) Gerrit जीयूआई में के लिए /var/lib/hudson/.ssh/id_rsa.pub से SSH कुंजी जोड़ने की जरूरत होगी।
तब वहां से यह एक आकर्षण की तरह काम करता था।
उपयोगकर्ता नाम Gerrit (व्यवस्थापक खाता) में उपयोगकर्ता नाम होना चाहिए।

मेरी मूल सलाह नीचे है:


क्या है उपयोगकर्ता जो वेब आधारित कोड की समीक्षा प्रणाली Gerrit का प्रयोग करेंगे?

this guide में दिखाए गए अनुसार $HOME/.ssh/authorized_keys में उस उपयोगकर्ता को आपकी /var/lib/hudson/.ssh/id_rsa.pub सार्वजनिक एसएसएच कुंजी की आवश्यकता है।

alt text

कुंजी वितरण

आरएसए कुंजी युग्म के सार्वजनिक भाग किसी भी सर्वर है कि ग्राहक द्वारा पहुँचा जा जाएगा में कॉपी किया जाना चाहिए। प्रतिलिपि की जाने वाली सार्वजनिक कुंजी जानकारी को ग्राहक पर ~/.ssh/id_rsa.pub फ़ाइल में स्थित होना चाहिए।
मानते हैं कि सभी सर्वर एक अलग एसएसएच कार्यान्वयन के बजाय OpenSSH का उपयोग करते हैं, सार्वजनिक कुंजी डेटा को सर्वर पर ~/.ssh/authorized_keys फ़ाइल में जोड़ा जाना चाहिए।

# first, upload public key from client to server 
client$ scp ~/.ssh/id_rsa.pub server.example.org: 

# next, setup the public key on server 
server$ mkdir ~/.ssh 
server$ chmod 700 ~/.ssh 
server$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys 
server$ chmod 600 ~/.ssh/authorized_keys 
server$ rm ~/id_rsa.pub 

, authorized_keys फाइल करने के लिए नई सार्वजनिक कुंजी डेटा संलग्न करने के लिए के रूप में कई सार्वजनिक कुंजी उपयोग में हो सकता सुनिश्चित करें। प्रत्येक सार्वजनिक कुंजी प्रविष्टि एक अलग पंक्ति पर होना चाहिए।


+0

@VonC मैं तुम्हें हर सवाल का मैं जवाब देने में सोचने के लिए आ रहा हूँ! मेरे पास एक सीधी रेखा भी हो सकती है ... 'हडसन' वह उपयोगकर्ता है जो समीक्षा प्रणाली का उपयोग करना चाहिए, मैं * सोचता हूं *। नोबनेस क्षमा करें। क्या आपका मतलब है, या वास्तविक * मानव * उपयोगकर्ता, उदाहरण के लिए 'जोशस्मिथ'? –

+0

@ जोश: यदि "हडसन" उपयोगकर्ता स्थानीयहोस्ट गेरिट सिस्टम के एसएसएच कनेक्शन को निष्पादित कर रहा है, तो उसे अपने 'id_rsa.pub' को इसके 'hudson/.ssh/valid_key' में जोड़ा गया है। – VonC

+0

@ वॉनसी 'हडसन' का अपना 'id_rsa.pub' '/ var/lib/hudson/.ssh' में है। क्या तुम्हारे कहने का मतलब यही था? –

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