Mercurial-сервер: пароль запрашивается для SSH - PullRequest
2 голосов
/ 29 января 2011

Я пытаюсь управлять своими ртутными репозиториями на моем сервере (Debian Lenny) с помощью mercurial-сервера от LShift.Я использовал это руководство: http://kurtgrandis.com/blog/2010/03/20/gitosis-for-mercurial/

Но когда я пытаюсь клонировать репозиторий hgadmin, ssh запрашивает у меня пароль.

hg clone ssh://hg@MyMercurialServer/hgadmin

Но я никогда не устанавливал пароль дляHG пользователь.Он был создан с использованием установки apt-get.Обычно аутентификация должна выполняться с моим открытым ключом ssh (который был скопирован в каталог keys / root с сервера mercurial).Но, похоже, что Mercurial-сервер не использует мой открытый ключ.Я также сбросил привилегии с помощью

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

После копирования открытого ключа в ключи / корневой каталог mercurial-сервера.Кроме того, я не могу найти файлы журналов для mercurial-сервера.Кто-нибудь знает, как это исправить?

Спасибо.

1 Ответ

5 голосов
/ 29 января 2011

zerkms, правильно - сначала отладить ssh.Попробуйте что-то вроде:

ssh -v -v hg@MyMercurialServer

Это сообщит вам, если ваш ключ отправляется и отклоняется или не отправляется.Также попробуйте добавить -i path/to/private/key на клиенте для принудительной отправки ключа.

Обычная проблема конфигурации в настройках ключа ssh - это разрешения на файл author_keys на стороне сервера ssh.Он должен быть 0600, а каталог, в котором он находится, должен быть 0700.Вы можете отладить этот материал в /var/log/messages на стороне сервера, где sshd напечатает сообщение, если не хочет доверять файлу Authorized_keys из-за разрешений.

...