2016-05-19 3 views
10

Jenkins требует сертификата для использования ssh-публикаций и команд ssh. Его можно настроить в разделе «Управление jenkins» -> «Настроить систему» ​​-> «Опубликовать по ssh».Как настроить ключи ssh для jenkins для публикации через ssh

Вопрос в том, как создать сертификаты?

У меня есть два сервера ubuntu, один работает jenkins и один для запуска приложения.

Должен ли я установить сертификат jenkins и поместить его часть в окно развертывания или установить сертификат в окне развертывания и поместить его часть на jenkins? Должен ли сертификат быть на имя пользователя, называемого jenkins, или он может быть для любого пользователя? У нас нет пользователя jenkins в окне разработки.

Я знаю, что существует ряд несовместимых типов ssh, что требует jenkins?

Кто-нибудь нашел руководство о том, как установить все это (как генерировать ключи, куда их класть и т. Д.).

ответ

14

Вам нужно будет создать открытый/закрытый ключ в качестве пользователя Jenkins на вашем сервере Jenkins, а затем скопировать открытый ключ пользователю, которому вы хотите выполнить развертывание на целевом сервере.

Шаг 1, генерировать открытый и закрытый ключи на сервере сборки, как пользователь 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] 

Шаг 2, вставьте содержимое пабе файлов на целевом сервере.

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

Убедитесь, что .ssh реж имеет permissoins 700 и файл authorized_keys имеет разрешение 644

Шаг 3, настроить Дженкинс

  1. На панели управления Дженкинс веб, nagivate в «Управление Дженкинс "->" Настройка системы "->" Публикация по SSH "
  2. Либо введите путь к файлу, например msgstr "var/lib/jenkins/.ssh/id_rsa" или вставить тот же контент, что и на целевом сервере.
  3. Введите вашу кодовую фразу, информацию о сервере и пользователе, и вы в порядке!
+5

«Публикация по SSH» не существует в моих jenkins – BigDong

+2

@BigDong это плагин, он появится после его установки –