La configuration jenkins sur centos: problèmes avec les clés ssh et git
Est passé à travers beaucoup de questions, mais rien ne semble être la résolution de mon problème. Ou pour être plus précis, je ne sais pas si je fais tout correctement.
Il est donc ici:
Ont installé centos 6.3 OS.
Ensuite, j'ai suivi le guide suivant pour installer jenkins:
https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+sur+RedHat+distributions
Jenkins fonctionne très bien. Maintenant, je suis en train de mettre en place un simple travail, ce qui nécessite pour cloner un dépôt git. (J'ai installé le plugin git)
Dans le dépôt URL que j'ai tapez la commande suivante:
git@gitserver:myrepo.git
Bien sûr, j'obtiens une erreur: stderr: la clé d'Hôte d'échec de la vérification.
ok, j'ai besoin de générer des clés ssh et tout sera bon.
J'ai donc effectuer les opérations suivantes:
su - jenkins
mais malheureusement il n'a pas d'interrupteur à jenkins de l'utilisateur.
cat /etc/passwd
affiche les éléments suivants:
jenkins:x:496:492:Jenkins Continuous Build Server:/var/lib/jenkins:/bin/false
semble qu'il n'ont pas de domicile habituel répertoire.
La question est de savoir comment générer des clés pour jenkins ou si les étapes ci-dessus où on a pas le droit de le faire, comment puis-je résoudre ce problème?
Merci beaucoup!
Mise à jour:
J'ai généré les clés (en tant que super-utilisateur (root) et les a placés dans jenkins à la maison et fait exactement et copié la clé publique au serveur git. Encore ne l'a pas aidé.
Quand je regarde le journal de la construction, il est dit:
Started by user anonymous
Building in workspace /var/lib/jenkins/jobs/myrepo/workspace
cet utilisateur anonyme est-ce un autre utilisateur créé par jenkins, ou est-il encore jenkins qui exécute les commandes?
OriginalL'auteur Tadzys | 2012-09-26
Vous devez vous connecter pour publier un commentaire.
Je suis en supposant que vous avez un accès root si vous avez réussi à installer le Jenkins TR /min. Avez-vous été su-ing à la jenkins utilisateur connecté en tant que root ? Si non, vous devriez le faire ou de l'utilisation
si votre utilisateur connecté a sudo accès.
Puis exécutez
pour générer une paire de clés RSA pour le jenkins utilisateur, et vous pouvez télécharger la clé publique de votre serveur git. La clé sera généré dans /var/lib/jenkins/.ssh.id_ra.pub si vous prenez les valeurs par défaut.
Hmm, je misformatted ma commande sudo au - dessus de la juste corriger cela.
Est-il exact que la clé du fichier propriétaire est root? Probablement le jenkins utilisateur n'a pas de shell de connexion et qui peuvent être la cause. De vérifier la
/etc/passwd
fichier pour une entrée commejenkins:x:999:1001::/var/lib/jenkins:/sbin/nologin
et modifier le/sbin/nologin
avec/bin/bash
temporairement pour passer à l'utilisateur jenkins.Lancez ssh-keygen avec sudo pour jenkins, mais sans su dire
sudo -u jenkins ssh-keygen
lorsque le jenkins utilisateur n'a pas de shell de connexion comme dans la Centos TR / min de l'installation.OriginalL'auteur gareth_bowles
1 changement d'utilisateur jenkins de connexion paramètre
vi /etc/passwd
mise à jour /bin/false /bin/bash
2 su - jenkins
jekins d'accueil de l'utilisateur devrait être /var/lib/jenkins
3 ssh-keygen
chat .ssh/id_rsa.pub
copier cette clé à bitbucket
4 ssh [email protected]
cela va définir le bitbucket clé ssh .ssh/known_hosts
Maintenant, vous devriez être en mesure d'accéder à
OriginalL'auteur jordan
Je pense que l' .ssh répertoire dans /var/lib/jenkins.
Fonctionne pour moi
OriginalL'auteur Daniel S.
J'ai eu des problèmes en changeant le jenkins utilisateur. J'avais besoin pour créer de l'utilisateur correctement dans le système afin que je puisse vous y connecter. J'ai exécuté cette commande pour m'aider à créer le jenkins utilisateur dans le système:
OriginalL'auteur Jonathan Airey
1) d'Abord faire jenkins comme réel de l'utilisateur en éditant le fichier /etc/passwd
Changement
2) connectez-vous à jenkins de l'utilisateur, Maintenant Jenkins maison répertoire /var/lib/jenkins
3)Générer des clés ssh à nouveau ( touches sera créé dans /var/lib/jenkins/.ssh)
4) copie id_rsa.pub de la clé et de le coller dans votre git du fichier authorized_keys
5) mais si ça ne fonctionne pas, vous avez probablement vérifier les permissions de votre .ssh répertoire et le contenu
OriginalL'auteur Sridhar
jenkins est un compte de service, il n'a pas une coquille de par leur conception. Il est généralement admis que les comptes de service ne devrait pas être en mesure de se connecter de manière interactive.
Je n'ai pas à répondre à ça d'abord que c'est un doublon d'une question qui a été déplacé vers le serveur faute. Je devrais avoir répondu plutôt que d'être lié à la réponse dans un commentaire.
si pour une raison quelconque vous souhaitez vous connecter en tant que jenkins, vous pouvez le faire avec: sudo su -s /bin/bash jenkins
OriginalL'auteur Mohamed Dernoun
Afin de vous connecter en tant que "jenkins" utilisateur", peut-être que vous pourriez essayer ceci:
Et essayez d'appeler:
Espère que cela aide.
OriginalL'auteur firmanelhakim
Ce que j'ai fait: sudo -u jenkins ssh-keygen. Cela fonctionne tellement bien
OriginalL'auteur Hieu Pham