2011-02-03 19 views
6

私はhereの指示に従ってgitosisサーバーをセットアップしました。最初のユーザーはうまく動作しますが、最近新しいユーザーが追加されました。ここに私が取った手順があります。gitosisパスワードを尋ねる

  • ファイル名がjohndoeのssh-keygenを使用してrsa鍵ペアを作成しました。
  • その後、gitosis admin repoのkeydirにコピーしました。
  • git commit -a -m "what i did"
  • を使用しての変更は、私は新しいとチェックアウトしようとした。その後

サーバーに変更をプッシュしてgitosisの設定ファイルを編集し、メンバー

  • コミットのリストにユーザーJOHNDOEを追加しましたキーファイル。それはパスフレーズを要求し、正しく入力すると、ユーザはgitのパスワードを尋ねます! ユーザーgitのパスワードがありません。

    今、私はsshd_configでPasswordAuthenticationを無効にしましたが、今度は「Permission denied(publickey)」と表示されます。私はgitユーザーのauthorized_keysファイルをチェックしており、内部には1つのキー、すなわちgitosis管理の初期キーが許可されています。

    私はまた、二重./gitosis-admin.git/hooks/post-updateフックのパーミッションをチェックして、それが755

  • +0

    私はこれを解決するために何をしたのか、私がそれを解決したとしても覚えていません。私は現在、gitoliteを使用し、それがはるかに良いと感じます。このような質問に対して何をすべきか? – andho

    答えて

    6

    Gitosisには、一種の愚かされている - あなたは文字通りキーファイルのために使用されるファイル名です"ジョン・ドウ"?その場合は、次のように変更してください。

    git mv keydir/johndoe keydir/johndoe.pub 
    git commit -m "changed key name" 
    git push 
    

    もう一度お試しください。

    また、Arlen Cussが指摘しているように、実際にであることを確認してください。秘密鍵ではありません。

    +0

    OP、問題が公開キーか非公開キーの場合は、Arlen Cussの回答に同意してください。私は公開鍵から ".pub"を外した人々のためにここに残しています。 – ebneter

    +0

    正直言って秘密鍵が代わりに入れられたときにgitosis *が何をするのか分かりませんが、機能しないと思っています。これは問題であるかもしれません。誰が知っていますか: - – Ashe

    +0

    @Arlen Cussそれは認証されたキーファイルに秘密鍵をインストールし、sshは動作しません。 (私は人々がそれをやったことがあります:-)) – ebneter

    1

    公開鍵をあなたの秘密のレポに入れてください。プライベートのものではありません!

    キーファイルを生成すると.pubファイルが生成されますが、そのファイルはgitosis.confには.pubが含まれていません。

    +0

    うーん、良い点。 :-) – ebneter

    1

    .pub-filesも追加(git add)して、コミットしてリポジトリに正しくプッシュしてください。

    5

    こんにちは、私は同じ問題を抱えていました。

    私は多くのウェブサイトの指示に従っていたが、

    git clone [email protected][serveur_name]:gitosis-admin.git 
    

    後の各時間は、それはGITのパスワードを求めていました。

    解像度:私は管理者の公開鍵(私のクライアントのユーザーに作成したもの、次にサーバーのtmpディレクトリにインポート)を挿入した 私authorized_keysファイル内(サーバーの/home/git/.ssh/ディレクトリにあります)、それが機能するようになりました。

    cp authorized_keys authorized_keys.bak 
    cat /tmp/id_dsa_git.pub >> authorized_keys 
    

    私は最近、仕事のためのプライベートリポジトリと、この問題に遭遇したhttp://fclose.com/b/linux/366/set-up-git-server-through-ssh-connection/

    0

    @これを見つけました。私はこの答えに遭遇し、答えを読んだ。 thisthisがこのトリックを行った。

    後で説明すると、.pubというキーがgitosis-admin/keydirディレクトリに追加されていることを確認してください。 .pubファイルである必要があります。

    コミット&変更をgitosis-adminにプッシュします。

    あなたの~/.ssh/authorized_keysは自動的に更新されるので、公開鍵ファイルの出力をcat-redirectする必要はありません。

    ホープこれは、

    msysgit(彼らはあなたがLinuxクライアントにしていると仮定しているため)、多くの場合、そこのチュートリアルのほとんどがWindowsユーザーのためにうまくいかないとcatchedされていない

    0

    一つのことに役立ちます窓のgitのコンソール、窓にする(Windows 7)Cである/home/YOURUSERNAME/.ssh/id_rsa でご秘密鍵を探している:ほとんどはそれを取得しながら、\ Users \ユーザーYOURUSERNAME.ssh \

    id_rsaとフォルダと一緒に、自動的に作成されてから、ファイル名前は "id_rsa"であるか、msysgitでは使用されません。 他のキーを使用するようにmsysgitに指示する方法が見つかりませんでした

    0

    おそらく、更新後のフックが正しく実行されなかった可能性があります。

    〜git/.ssh/authorized_keysにあなたの公開鍵があることを確認してください。

    そうでない場合、更新後のフックは実行されませんでした。後で変更された権限?その他の設定エラー。他の場所からコピーされましたか?

    1. サーバーで、gitosis admin:git clone /path/to/gitosis-admin.gitをチェックアウトします。 gitosis.confに重要な変更を加えないでください。あなたの公開鍵がkeydirにあることを確認してください。私はこれをgitユーザーとして実行しなければなりませんでした。

    2. gitosis.confをコミットします。 git add gitosis.conf & & gitコミット-m "リフレッシュキー"。

    3. 次に、authorized_keysファイルを確認します。

    4. gitosis.confを元に戻して再度コミットしてください。

    テストアクセス。このプロセスの後でauthorized_keysが更新されない場合は、ログ内でエラーメッセージを調べます。

    関連する問題