Estou com um problema com o jenkins , definindo "git", mostra o seguinte erro:
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
Eu testei com ssh :
[email protected]:person/projectmarket.git
Este é um erro:
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
Eu também fiz estas etapas com a "chave SSH".
Entrar em Jenkins
sudo su jenkins
Copie sua chave do github para a pasta .ssh do Jenkins
cp ~/.ssh/id_rsa_github* /var/lib/jenkins/.ssh/
Renomeie as chaves
mv id_rsa_github id_rsa
mv id_rsa_github.pub id_rsa.pub
mas ainda não está funcionando no repositório git em jenkins .
obrigado pela ajuda !.
Respostas:
Mude para o
jenkins
usuário e execute o comando manualmente:Você receberá o aviso SSH padrão ao se conectar pela primeira vez a um novo host via SSH:
Digite
yes
e pressione Enter. A chave do hostbitbucket.org
agora será adicionada ao~/.ssh/known_hosts
arquivo e você não receberá mais esse erro no Jenkins.fonte
Jenkins é uma conta de serviço, não possui um shell por design. É geralmente aceito que contas de serviço. não deve conseguir fazer logon interativamente.
Para resolver "A verificação da chave do Jenkins Host falhou", execute as seguintes etapas. Eu tenho usado mercurial com Jenkins.
1) Execute os seguintes comandos no terminal
fornecer senha
2) Gere chave privada pública usando o seguinte comando:
você pode ver a saída como:
3) Pressione Enter -> Não digite a senha -> pressione enter
4) vá para -> cat /var/lib/jenkins/.ssh/id_rsa.pub
5) Copie a chave do id_rsa.pub
6) Sair do bash
7)
ssh@yourrepository
8)
vi .ssh/authorized_keys
9) Cole a chave
10) sair
11) Faça o login manualmente no servidor mercurial
Nota: Os pls fazem login manualmente, caso contrário, o jenkins retornará o erro "falha na verificação do host"
12) uma vez feito manualmente, agora vá para Jenkins e dê build
Aproveitar!!!
Boa sorte
fonte
Ou você pode usar:
ssh -oStrictHostKeyChecking=no host
Isso será inseguro (ataques do tipo intermediário), mas a solução mais fácil.
A melhor maneira de fazer isso é gerar mapeamentos corretos entre o host e o endereço IP, para
ssh
não reclamar:Trecho da essência .
fonte
Teve o mesmo problema, eu corrijo assim:
redefinir a permissão em id_rsa * apenas para o usuário atual nenhum grupo nenhum outro
E limpe ~ / .ssh / know_hosts
Agora Conecte-se como Jenkins
Experimente os comandos jenkins
Se nenhum problema aparecer, agora o jenkins poderá conectar o repositório (pelo menos para mim ^^)
fonte
usando https://bitbucket.org/YYYY/XX.git
você deve excluir o nome de usuário @
fonte
Verifique se não estamos editando nenhuma das propriedades padrão do sshd_config para ignorar o erro
Falha na verificação do host - Definitivamente uma entrada ausente do nome do host no
known_hosts
arquivoEfetue login no servidor em que o processo está falhando e faça o seguinte:
Sudo para o usuário executando o processo
ssh-copy-id destinationuser@destinationhostname
Ele solicitará assim pela primeira vez, diga sim e também solicitará a senha pela primeira vez:
Solicitar senha? dar senha
Agora, no servidor em que o processo está sendo executado, faça
ssh destinationuser@destinationhostname
. Ele deve fazer login sem uma senha.Nota: Não altere as permissões padrão dos arquivos no diretório .ssh do usuário , você terá problemas diferentes
fonte
Quanto à solução alternativa (por exemplo, escravo do Windows), defina a seguinte variável de ambiente nas propriedades globais:
Nota: Se você não encontrar a opção, provavelmente precisará do plug- in EnvInject .
fonte
Copie as chaves do host do bitbucket e do github:
fonte
Da melhor maneira, você pode simplesmente usar o seu "git url" no formato de URL 'https' no arquivo Jenkins ou onde quiser.
git url: 'https://github.com/jglick/simple-maven-project-with-tests.git'
fonte
SSH
Se você estiver tentando com o SSH, o erro de verificação da chave do host pode ocorrer devido a vários motivos. Siga estas etapas para superar todos os motivos.
fonte
é isso aí!
agora você pode executar novamente o trabalho de jenkins.
Espero que isso resolva seu problema.
fonte
Eu corri para esse problema e o problema era que o serviço jenkins não estava sendo executado como usuário do jenkins. Portanto, executar os comandos como o usuário jenkins funcionou bem.
fonte
Experimentar
ssh-keygen -R nome do host
-R hostname Remove todas as chaves pertencentes ao hostname de um arquivo known_hosts. Esta opção é útil para excluir hosts com hash
fonte