2011-09-13 5 views
2

UbuntuのTomcat6サーバーでWARデプロイメントとして実行しているJenkinsの新しい設定があります。私は同じサーバ上に、すべてのリポジトリのGitosisをインストールしています。TomcatユーザーがJenkinsとGitosisでSSH鍵を正しく中継していない

私はリポジトリを構築するためにJenkinsを取得することに取り組んでいましたが、私のレポサーバーでTomcat用のSSH公開鍵を取得するのに失敗しました。私はsudo su - tomcat6というコマンドでTomcatとしてログインし、ssh-keygen -t rsaを実行しました。その後、id_rsa.pubキーをgitosisリポジトリのkeydirディレクトリにコピーしました。だからここ

は私のコマンドの基本的な荒廃です:

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管理者のレポでgitosis.confファイルを開き、レポの管理者として私の新しいユーザーを追加しました:

vim ~/gitosis-admin/gitosis.conf 

gitosis.conf:

[group buildserver] 
writable = repo-name 
members = [email protected] 

私はまた、他のメンバーとレポ-NAMを持っていますeは私の実際のレポの名前です。私はgitosis-adminリポジトリをリモートにプッシュし、別のrepoユーザーからデータをコミットしました。

他のユーザーから私のレポを読み書きできますが、Tomcatを使用しようとするとログインできないというエラーが表示されます。私は再びTomcatとしてログインしようとし、gitサーバのfingerprintがknown_hostsに追加されるように手動でgitクローンを実行しました。クローンを実行すると、gitユーザのパスワードを求められました。

私はGitosisにJenkins SSH鍵を取得するには何か間違っていますか?

答えて

1

問題は、公開鍵をコピーしたにもかかわらずgitosisがファイル名を[email protected]にする必要があるのに対して、私の公開鍵tomcat6 @ serverをkeydirに指定したことでした。

0

手順が欠落しているように見えます:

あなたはサーバーへのSSHパブキーをコピーした後、あなたはファイルにその内容を追加する必要は〜/で

authorized_keys 

と呼ばれます。 sshフォルダ。ターゲットサーバにシンプルにcat id_rsa.pub >> ~/.ssh/authorized_keysを実行すれば、パスワードなしでログインできるはずです。

これは機能しますか?

+0

私はそれをする必要はありません。私がgitosis-adminリポジトリにアクセスすると、Gitosisがそれをすべて処理します。なんらかの理由でそれはやっていませんが、手動でauthorized_keysに追加しても、私はまだ入りません。 –

+0

Aah ok。私はGitosisについてよく知らない。私はsshの観点から見ていた。あなたは 'ssh-copy-id'を試しましたか?たとえGitosisがそれをしないとしても、少なくともsshのログインは機能するはずです。 – Sagar

+0

あなたは私の答えの下で私の問題がどのようになったかを見ることができます。私がキーを間違って指定したということが分かりました。 –

関連する問題