J'ai un problème avec jenkins , la configuration de "git" montre l'erreur suivante:
Failed to connect to repository : Command "git ls-remote -h https://[email protected]/person/projectmarket.git HEAD" returned status code 128:
stdout:
stderr: fatal: Authentication failed
J'ai testé avec ssh :
[email protected]:person/projectmarket.git
C'est une erreur:
Failed to connect to repository : Command "git ls-remote -h [email protected]:person/projectmarket.git HEAD" returned status code 128:
stdout:
stderr: Host key verification failed.
fatal: The remote end hung up unexpectedly
J'ai également fait ces étapes avec "clé SSH".
Connectez-vous sous Jenkins
sudo su jenkins
Copiez votre clé github dans le dossier Jenkins .ssh
cp ~/.ssh/id_rsa_github* /var/lib/jenkins/.ssh/
Renommez les clés
mv id_rsa_github id_rsa
mv id_rsa_github.pub id_rsa.pub
mais toujours pas de dépôt git dans jenkins .
merci à l'aide !.
Réponses:
Changez pour l'
jenkins
utilisateur et exécutez la commande manuellement:Vous recevrez l'avertissement SSH standard lors de la première connexion à un nouvel hôte via SSH:
Tapez
yes
et appuyez sur Entrée. La clé d'hôte pourbitbucket.org
sera maintenant ajoutée au~/.ssh/known_hosts
fichier et vous n'obtiendrez plus cette erreur dans Jenkins.la source
Jenkins est un compte de service, il n'a pas de shell par conception. Il est généralement admis que les comptes de service. ne devrait pas pouvoir se connecter de manière interactive.
Pour résoudre «Échec de la vérification de la clé de l'hôte Jenkins», procédez comme suit. J'ai utilisé mercurial avec jenkins.
1) Exécutez les commandes suivantes sur le terminal
fournir un mot de passe
2) Générez une clé privée publique à l'aide de la commande suivante:
vous pouvez voir la sortie comme:
3) Appuyez sur Entrée -> Ne donnez aucune phrase de passe -> appuyez sur Entrée
4) allez dans -> cat /var/lib/jenkins/.ssh/id_rsa.pub
5) Copiez la clé de id_rsa.pub
6) Sortie de bash
7)
ssh@yourrepository
8)
vi .ssh/authorized_keys
9) Collez la clé
10) sortie
11) Connectez-vous manuellement au serveur mercurial
Remarque: veuillez vous connecter manuellement, sinon jenkins donnera à nouveau l'erreur "vérification de l'hôte a échoué"
12) une fois fait manuellement, allez maintenant à Jenkins et donnez la construction
Prendre plaisir!!!
Bonne chance
la source
Ou vous pouvez utiliser:
ssh -oStrictHostKeyChecking=no host
Ce ne sera pas sûr (l'homme au milieu attaque) mais la solution la plus simple.
La meilleure façon de le faire est de générer des mappages corrects entre l'hôte et l'adresse IP, donc
ssh
ne vous plaindrez pas:Extrait de l' essentiel .
la source
J'ai eu le même problème, je le corrige comme ça:
réinitialiser l'autorisation sur id_rsa * uniquement pour l'utilisateur actuel aucun groupe aucun autre
Et effacez ~ / .ssh / know_hosts
Maintenant, connectez-vous en tant que jenkins
Essayez les commandes jenkins
Si aucun problème n'apparaît, jenkins pourra maintenant connecter le dépôt (pour moi ^^ au moins)
la source
en utilisant https://bitbucket.org/YYYY/XX.git
vous devez supprimer le nom d'utilisateur @
la source
Assurez-vous que nous ne modifions aucune des propriétés par défaut de sshd_config pour ignorer l'erreur
La vérification de l'hôte a échoué - Il manque certainement une entrée de nom d'hôte dans le
known_hosts
fichierConnectez-vous au serveur sur lequel le processus échoue et procédez comme suit:
Sudo à l'utilisateur exécutant le processus
ssh-copy-id destinationuser@destinationhostname
Il invitera comme ceci pour la première fois, dites oui et il demandera également le mot de passe pour la première fois:
Invite de mot de passe? donner le mot de passe
Maintenant, depuis le serveur sur lequel le processus est en cours d'exécution, faites
ssh destinationuser@destinationhostname
. Il devrait se connecter sans mot de passe.Remarque: ne modifiez pas les autorisations par défaut des fichiers dans le répertoire .ssh de l'utilisateur , vous vous retrouverez avec différents problèmes
la source
En ce qui concerne la solution de contournement (par exemple esclave Windows), définissez la variable d'environnement suivante dans les propriétés globales:
Remarque: si vous ne voyez pas l'option, vous avez probablement besoin du plugin EnvInject pour cela.
la source
Copiez les clés d'hôte de bitbucket et de github:
la source
La meilleure façon vous pouvez simplement utiliser votre "git url" au format d'URL 'https "dans le fichier Jenkins ou où vous voulez.
git url: 'https://github.com/jglick/simple-maven-project-with-tests.git'
la source
SSH
Si vous essayez avec SSH, l' erreur de vérification de la clé d'hôte peut provenir de plusieurs raisons.Suivez ces étapes pour surmonter toutes les raisons.
la source
c'est tout!
vous pouvez maintenant réexécuter le travail jenkins.
J'espère que cela résoudra votre problème.
la source
J'ai rencontré ce problème et il s'est avéré que le problème était que le service jenkins n'était pas exécuté en tant qu'utilisateur jenkins. Donc, exécuter les commandes en tant qu'utilisateur jenkins fonctionnait très bien.
la source
Essayer
ssh-keygen -R nom d'hôte
-R hostname Supprime toutes les clés appartenant à hostname d'un fichier known_hosts. Cette option est utile pour supprimer les hôtes hachés
la source