1

私のセットアップはubuntu--gitolite--msysgitです。このチュートリアルに従った後:

https://sites.google.com/site/senawario/home/gitolite-tutorial

すべてが正常に動作します。

だから私は変更してコミットしました-設定ファイルをプッシュしました:

repo    gitolite-admin
        RW+     =   id_rsa

repo    testing
        RW+     =   @all

repo    project-euler
        RW+     =   tester

すべてが更新されました。

「テスター」ユーザーでこれをテストしたいのですが、できません。git clone tester @ myServer:project-eulerは機能しないのですか?

上記を試してみると、次のようになります。

$ git clone tester@192.168.1.3:project-euler
Cloning into project-euler...
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

gitの管理に使用したのと同じマシンからこれを試しました。

これを使おうとすると:

git git@192.168.1.3:project-euler

I get:R access for project-euler DENIED to id_rsa

gitユーザーにはアクセス権がないので、これは正常だと思います。

何か案は?

@VonCリンクをたどった後、前述のように構成ファイルを作成しました。私はまだ同じ問題を抱えているので、問題のあるユーザーとssh-vを楽しんでいます。出力は次のとおりです。

OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007
debug1: Reading configuration data /c/Users/Stefanos/.ssh/config
debug1: Applying options for 192.168.1.3
debug1: Connecting to 192.168.1.3 [192.168.1.3] port 22.
debug1: Connection established.
debug1: identity file /c/Users/Stefanos/.ssh/tester type 1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.8p1 Debian-1ubuntu3
debug1: match: OpenSSH_5.8p1 Debian-1ubuntu3 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_4.6
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-md5 none
debug1: kex: client->server aes128-cbc hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Host '192.168.1.3' is known and matches the RSA host key.
debug1: Found key in /c/Users/Stefanos/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering public key: /c/Users/Stefanos/.ssh/tester
debug1: Authentications that can continue: publickey
debug1: No more authentication methods to try.
Permission denied (publickey).

アップデート

tester @ server:repoではなくgit clong git @ server:repoを使用してリポジトリのクローンを作成することができました。

また、設定ファイルがある場合、管理者としてログインできません。テスターとしてのみログに記録されます。おそらくこれを構成する方法があるはずです。ご協力ありがとうございます。

4

2 に答える 2

1

最初に行うことは、その新しいユーザーの公開鍵が gitolite サーバーに公開されているかどうかを確認することです。

  • ~git/.ssh/authorizedkeys の内容を確認し、tester を含む行を探します。
  • gitolite-admin repo/keydir の内容を確認し、公開鍵が含まれている ' ' ファイルを探します (これらの公開鍵はユーザーにちなんで命名されているtester.pubことを忘れないでください:こちら)tester.pub
  • テスターが と を持っていることを確認し.sshid_rsaくださいid_rsa.pub
于 2011-08-11T04:02:35.910 に答える
0

gitolite ユーザーと Linux ユーザーを混同しています。それらはいくつかの特徴を共有していますが、他の点では異なります。あなたはいつもgitolite に接続するときに、git URL で「git」という名前のユーザーを使用します。それに関係なく、接続しようとしているユーザーにはキーペア (~/.ssh/id_rsa[.pub]) が必要です。では、あなたが「ボブ」だとしましょう。公開鍵は /home/bob/.ssh/id_rsa.pub にあります。その公開鍵を gitolite 構成に追加する必要があります。追加するときに「foo.pub」という名前を付けたとしましょう。これで、「foo」は構成で参照できる有効な gitolite ユーザーです。ローカル ユーザー (bob)、gitolite への接続に使用するユーザー (git)、および gitolite ユーザー (foo) の間には、暗黙的または明示的な接続がないことを覚えておいてください。唯一の接続は公開鍵で、ローカル マシンの「bob」を「foo」として gitolite に識別します。

于 2011-08-11T17:16:36.210 に答える