우분투의 Tomcat6 서버에서 WAR 배치로 실행중인 Jenkins의 새 설정이 있습니다. 저도 같은 서버에 Gitosis를 설치했습니다.Tomcat 사용자가 Jenkins 및 Gitosis와 SSH 키를 올바르게 중계하지 않음
저는 젠킨스가 저장소를 빌드하는 작업을 해왔지만, 내 repo 서버에서 Tomcat에 대한 SSH 공개 키 설정을 얻는 데 실패했습니다. 나는 sudo su - tomcat6
명령으로 Tomcat으로 로그인하여 시작했고 ssh-keygen -t rsa
을 실행했습니다. 그 후 나는 gitosis repo의 keydir 디렉토리에 id_rsa.pub 키를 복사했습니다. 그래서 여기
내 명령의 기본 개요입니다 :
sudo su - tomcat6
ssh-keygen -t rsa -C "[email protected]"
exit # Get back to my user
sudo cp /usr/share/tomcat6/.ssh/id_rsa.pub ~/gitosis-admin/keydir/[email protected]
내 다음 단계는 gitosos-관리자의 repo에서 gitosis.conf 파일을 열고 REPOS의 관리자로 나의 새로운 사용자를 추가했다 :
vim ~/gitosis-admin/gitosis.conf
gitosis.conf :
[group buildserver]
writable = repo-name
members = [email protected]
나는 또한 다른 회원들과 REPO - 남이 e는 내 실제 repo의 이름입니다. 그런 다음 gitosis-admin repo를 리모컨으로 밀어 넣고 다른 repo 사용자로부터 일부 데이터를 전달했습니다.
다른 사용자로부터 내 repo를 읽고 쓸 수 있지만 Tomcat을 사용하려고하면 로그인 할 수 없다는 오류가 발생합니다. 다시 Tomcat으로 로그인을 시도하고 git clone을 수동으로 수행하여 git 서버의 지문을 known_hosts에 추가하고 복제본을 만들 때 git users password를 요청했습니다.
나는 Gitosis로 젠킨스 SSH 키를 얻으려면 뭔가 잘못하고 있습니까? 당신이 단계 누락 된 것 같습니다
그렇게하지 않아도됩니다. gitosis는 gitosis-admin 저장소로 이동할 때 저를 위해 모든 것을 처리합니다. 어떤 이유로 그것은 그것을하지 않지만, 나는 수동으로 authorized_keys에 추가하면 여전히 들어갈 수 없습니다. –
Aah ok. 나는 Gitosis에 대해 많이 모른다. 나는 ssh 관점에서 그것을보고 있었다. 'ssh-copy-id'를 해봤습니까? 비록 Gitosis가 그것을하지 않는다고해도, 적어도 ssh 로그인은 작동해야합니다. – Sagar
아래에서 내 대답에 어떤 문제가 있는지 확인할 수 있습니다. 간단히 말해서 내가 키를 잘못 명명 한 것입니다. –