2016-05-19 50 views
10

Jenkins, ssh yayınını ve ssh komutlarını kullanmak için bir sertifika gerektirir. "Jenkins yönet" -> "Sistemi Yapılandır" -> "ssh üzerinden yayınla" altında yapılandırılabilir.jshg için ssh tuşlarının ssh ile nasıl yayınlanacağı ssh

Soru şu ki, sertifika nasıl oluşturulur?

İki ubuntu sunucum var, biri jenkins kullanıyor ve uygulamayı çalıştırmak için bir tane var.

Bir jenkins cert kurup dağıtım kutusuna bir parçası mı koyarım, ya da dağıtım kutusuna bir sertifika ayarlayabilir miyim? Sertifika jenkins adında bir kullanıcı adına mı olmalı yoksa herhangi bir kullanıcı için olabilir mi? Geliştirme kutusunda bir jenkins kullanıcısı yok.

Jenkins'in gerektirdiği bir dizi uyumsuz ssh türü olduğunu biliyorum.

Bunların nasıl ayarlanacağı konusunda bir rehber (herhangi bir anahtarın nasıl üretileceği, nereye yerleştirileceği vb.) Hakkında bir kılavuz bulunmuş.

cevap

14

Jenkins sunucunuzda Jenkins kullanıcısı olarak bir ortak/özel anahtar oluşturmanız, ardından da genel anahtarı hedef sunucunuzda dağıtımı yapmak istediğiniz kullanıcıya kopyalamanız gerekir.

Adım 1, kullanıcıya jenkins

build1:~ jenkins$ whoami 
jenkins 
build1:~ jenkins$ ssh-keygen 
Generating public/private rsa key pair. 
Enter file in which to save the key (/var/lib/jenkins/.ssh/id_rsa): 
Created directory '/var/lib/jenkins/.ssh'. 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /var/lib/jenkins/.ssh/id_rsa. 
Your public key has been saved in /var/lib/jenkins/.ssh/id_rsa.pub. 
The key fingerprint is: 
[...] 
The key's randomart image is: 
[...] 
build1:~ jenkins$ ls -l .ssh 
total 2 
-rw------- 1 jenkins jenkins 1679 Feb 28 11:55 id_rsa 
-rw-r--r-- 1 jenkins jenkins 411 Feb 28 11:55 id_rsa.pub 
build1:~ jenkins$ cat .ssh/id_rsa.pub 
ssh-rsa AAAlskdjfalskdfjaslkdjf... [email protected] 

Adım 2 olarak inşa sunucuda kamu ve özel anahtarı oluşturmak hedef sunucunun üzerine pub dosya içeriğini yapıştırın.

target:~ bob$ cd .ssh 
target:~ bob$ vi authorized_keys (paste in the stuff which was output above.) 

sizin .ssh dir permissoins 700 sahiptir ve authorized_keys dosya izinlerini 644

Adım 3 olduğundan emin olun, Jenkins Jenkins web kontrol panelinde

  1. yapılandırmak bağlanarak seferden "Yönetilir Jenkins "->" Sistemi Yapılandır "->" SSH üzerinden yayınla "
  2. Dosya yolunu girin örn. "var/lib/jenkins/.ssh/id_rsa" veya hedef sunucudakiyle aynı içeriğe yapıştırın.
  3. Parolanızı, sunucunuzu ve kullanıcı bilgilerinizi girip, devam etmekte fayda var!
+5

Benim jenkins – BigDong

+2

@BigDong içinde "SSH üzerinden yayınla" mevcut değil, bir eklenti, yükledikten sonra görünecektir –