2016-05-19 5 views
10

Jenkins benötigt ein Zertifikat, um die ssh-publication- und ssh-Befehle zu verwenden. Es kann unter "jenkins verwalten" -> "System konfigurieren" -> "über ssh veröffentlichen" konfiguriert werden.wie ssh-keys für jenkins eingerichtet werden, um über ssh zu publizieren

Die Frage ist, wie erstellt man die Zertifikate?

Ich habe zwei Ubuntu-Server, einen laufenden jenkins, und einen zum Ausführen der App.

Installiere ich ein jenkins cert und lege einen Teil davon in die Deployment Box, oder installiere ein cert in der deployment box, und setze einen Teil davon auf jenkins? Muss das Zertifikat im Namen eines Benutzers namens jenkins sein oder kann es für jeden Benutzer sein? Wir haben keinen jenkins Benutzer auf der Entwicklungsbox.

Ich weiß, es gibt eine Reihe von inkompatiblen SSH-Typen, die Jenkins benötigen?

Hat jemand eine Anleitung gefunden, wie man das alles einrichten kann (wie man Schlüssel erzeugt, wohin man sie legt usw.).

Antwort

14

Sie müssen einen öffentlichen/privaten Schlüssel als Jenkins-Benutzer auf Ihrem Jenkins-Server erstellen und dann den öffentlichen Schlüssel auf den Benutzer kopieren, mit dem Sie die Bereitstellung auf dem Zielserver durchführen möchten. Die Pub Dateiinhalte auf den Zielserver

Schritt 1, erzeugen öffentliche und private Schlüssel auf Build-Server als Benutzer 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] 

Schritt 2 einfügen.

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

Stellen Sie sicher, .ssh dir permissoins 700 und Ihre authorized_keys Datei über Berechtigungen 644

Schritt 3 Konfigurieren Jenkins

  1. Im jenkins Web Control Panel hat, nagivate auf „Manage Jenkins "->" System konfigurieren "->" Über SSH publizieren "
  2. Entweder den Pfad der Datei eingeben, z "var/lib/jenkins/.ssh/id_rsa" oder fügen Sie denselben Inhalt wie auf dem Zielserver ein.
  3. Geben Sie Ihre Passphrase, Server und Benutzerdetails ein und Sie können loslegen!
+5

"Veröffentlichen über SSH" existiert nicht in meinem jenkins – BigDong

+2

@BigDong es ist ein Plugin, es erscheint, nachdem Sie es installieren –

Verwandte Themen