2011-01-29 5 views
2

私のサーバ(Debian Lenny)でmercurial-rehposをLShiftから管理しようとしています。私はこのチュートリアルを使用していました:http://kurtgrandis.com/blog/2010/03/20/gitosis-for-mercurial/mercurial-server:sshのためにパスワードを要求されました

しかし、私はhgadmin repoをクローンしようとすると、sshはパスワードを要求します。

hg clone ssh://[email protected]/hgadmin 

しかし、私はhgユーザーのパスワードを設定していませんでした。これはapt-getインストールを使用して作成されました。 通常、認証は私のpublic sshキー(これはmercurial-serverからkeys/rootディレクトリにコピーされています)で行う必要があります。しかし、それは水銀サーバーが私の公開鍵を使用していないようです。 私はまた、水銀、サーバ鍵/ルートディレクトリに公開鍵をコピーした後

sudo -u hg /usr/share/mercurial-server/refresh-auth 

と権限を流します。さらに、私は水銀サーバーのログファイルを見つけることができません。 誰か知っていますか、それを修正する方法は?

ありがとうございました。

+2

'ssh hg @ MyMercurialServer'で検査を開始してください。あなたがそれを働かせたら、水銀に戻ってください。 – zerkms

答えて

5

zerkms、正しいです - まずはsshを直接デバッグしてください。

ssh -v -v [email protected] 

あなたの鍵が送信され、拒否された、または送信されていないことを知らせます。また、クライアントに-i path/to/private/keyを追加して強制的に鍵を送信してみてください。

sshキー設定の通常の設定上の問題は、sshサーバ側のauthorized_keysファイルのアクセス許可です。それは0600である必要があり、そのディレクトリは0700である必要があります。サーバ側で/var/log/messagesのものをデバッグすることができます。ここでは、permissionsのためにauthorized_keysファイルを信頼できない場合にsshdがメッセージを出力します。

+0

thx zerkmsとRy4an、私はそれを解決しました。問題は、sshd_configにAllowUsersフラグを定義したことです。このフラグでは、hgユーザーはリストアされていませんでした。ちなみに、debian sshでは/var/log/auth.logにログインします – 23tux

+0

おかげで、ありがとう! –

関連する問題