jenkins에 문제가 있는데 “git”을 설정하면 다음 오류가 표시됩니다.
Failed to connect to repository : Command "git ls-remote -h https://person@bitbucket.org/person/projectmarket.git HEAD" returned status code 128:
stdout:
stderr: fatal: Authentication failed
ssh로 테스트했습니다 .
git@bitbucket.org:person/projectmarket.git
이것은 오류입니다 :
Failed to connect to repository : Command "git ls-remote -h git@bitbucket.org:person/projectmarket.git HEAD" returned status code 128:
stdout:
stderr: Host key verification failed.
fatal: The remote end hung up unexpectedly
또한 “SSH 키”를 사용하여이 단계를 수행했습니다.
Jenkins에서 로그인
sudo su jenkins
github 키를 Jenkins .ssh 폴더로 복사하십시오.
cp ~/.ssh/id_rsa_github* /var/lib/jenkins/.ssh/
키 이름 바꾸기
mv id_rsa_github id_rsa
mv id_rsa_github.pub id_rsa.pub
그러나 jenkins 에서는 여전히 git 저장소가 작동하지 않습니다 .
도와 주셔서 감사합니다!.
답변
jenkins
사용자로 변경 하고 명령을 수동으로 실행하십시오.
git ls-remote -h git@bitbucket.org:person/projectmarket.git HEAD
SSH를 통해 새 호스트에 처음 연결할 때 표준 SSH 경고가 표시됩니다.
The authenticity of host 'bitbucket.org (207.223.240.181)' can't be established.
RSA key fingerprint is 97:8c:1b:f2:6f:14:6b:5c:3b:ec:aa:46:46:74:7c:40.
Are you sure you want to continue connecting (yes/no)?
입력 yes
하고 Enter를 누르십시오. 의 호스트 키 bitbucket.org
가 이제 ~/.ssh/known_hosts
파일에 추가되며 더 이상 Jenkins에서이 오류가 발생하지 않습니다.
답변
Jenkins는 서비스 계정으로 설계 상 쉘이 없습니다. 일반적으로 해당 서비스 계정이 허용됩니다. 대화식으로 로그인 할 수 없습니다.
“Jenkins 호스트 키 확인 실패”를 해결하려면 다음 단계를 수행하십시오. 젠킨스와 함께 수은을 사용했습니다.
1) 터미널에서 다음 명령을 실행하십시오.
$ sudo su -s /bin/bash jenkins
비밀번호를 제공하십시오
2) 다음 명령을 사용하여 공개 개인 키를 생성하십시오.
ssh-keygen
당신은 출력을 볼 수 있습니다 ::
Generating public/private rsa key pair.
Enter file in which to save the key (/var/lib/jenkins/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
3) Enter를 누르십시오-> 암호를 입력하지 마십시오-> Enter를 누르십시오
Key has been generated
4)-> cat /var/lib/jenkins/.ssh/id_rsa.pub로 이동하십시오.
5) id_rsa.pub에서 키를 복사
6) bash에서 나가십시오
7) ssh@yourrepository
8) vi .ssh/authorized_keys
9) 키 붙여 넣기
10) 출구
11) 수은 서버에 수동으로 로그인
참고 : Pls는 수동으로 로그인하지 않습니다. 그렇지 않으면 jenkins는 “호스트 확인 실패”오류를 다시 표시합니다.
12) 한 번 수동으로 완료하면 Jenkins로 이동하여 빌드하십시오.
즐겨!!!
행운을 빕니다
답변
또는 다음을 사용할 수 있습니다.
ssh -oStrictHostKeyChecking=no host
이것은 안전하지 않지만 (중간 공격의 사람) 가장 쉬운 솔루션입니다.
더 좋은 방법은 호스트와 IP 주소 사이에 올바른 매핑을 생성하는 것이므로 ssh
불평하지 않습니다.
#!/bin/bash
for domain in "github.com" "bitbucket.org"; do
sed -i "/$domain/d" ~/.ssh/known_hosts
line=$(ssh-keyscan $domain,`nslookup $domain | awk '/^Address: / { print $2 ; exit }'`)
echo $line >> ~/.ssh/known_hosts
done
요지 에서 발췌 .
답변
같은 문제가 있었지만 다음과 같이 수정했습니다.
현재 사용자에 대해서만 id_rsa *에 대한 권한 재설정
chmod o-rwx ~/.ssh/id*
chmod G-rwx ~/.ssh/id*
ls -lart ~/.ssh/
-rw------- 1 jenkins nogroup 398 avril 3 09:34 id_rsa.pub
-rw------- 1 jenkins nogroup 1675 avril 3 09:34 id_rsa
~ / .ssh / know_hosts를 지우십시오.
이제 젠킨스로 연결
sudo su jenkins
jenkins 명령을 사용해보십시오
git ls-remote -h git@bitbucket.org:user/project.git HEAD
문제가 나타나지 않으면 이제 jenkins는 repo를 연결할 수 있습니다 (최소한 ^^).
답변
https://bitbucket.org/YYYY/XX.git 사용
당신은 사용자 이름을 삭제해야합니다 @
답변
-
오류를 건너 뛰기 위해 기본 sshd_config 속성을 편집하지 않아야합니다.
-
호스트 확인 실패-
known_hosts
파일 에서 호스트 이름 항목이 누락되었습니다. -
프로세스가 실패한 서버에 로그인하고 다음을 수행하십시오.
-
프로세스를 실행하는 사용자에게 Sudo
-
ssh-copy-id destinationuser@destinationhostname
-
처음으로 다음과 같이 프롬프트하고 예라고 말하고 처음으로 비밀번호를 묻습니다.
The authenticity of host 'sample.org (205.214.640.91)' can't be established. RSA key fingerprint is 97:8c:1b:f2:6f:14:6b:5c:3b:ec:aa:46:46:74:7c:40. Are you sure you want to continue connecting (yes/no)? *yes*
비밀번호 프롬프트? 암호를 줘
-
이제 프로세스가 실행중인 서버에서
ssh destinationuser@destinationhostname
. 비밀번호없이 로그인해야합니다.참고 : 사용자의 .ssh 디렉토리 에서 파일의 기본 권한을 변경하지 마십시오 . 다른 문제가 발생할 수 있습니다
-
답변
해결 방법 (예 : Windows 슬레이브)에 대해서는 전역 속성에서 다음 환경 변수를 정의하십시오.
GIT_SSH_COMMAND="ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
참고 : 옵션이 보이지 않으면 EnvInject 플러그인이 필요할 수 있습니다.