Gitolite: не удается войти с новыми ssh ключами?
Недавно я добавил новый ssh-ключ в проект gitolite admin, я не могу аутентифицироваться с ssh-ключами, он запрашивает пароль оболочки.
Я могу аутентифицировать со старыми ключами.
Любая идея, как я уже судил странице gitolite'у и возможность Линт СШ тоже.
Эта проблема характерна только для новых ключей.
Добавление 2 журналов сервера
Old server (admin anil.golla)
==================
2016-01-08.18:24:26 2914 ssh ARGV=anil.golla SOC=git-receive-pack '/gitolite-admin' FROM=172.30.10.240
2016-01-08.18:24:26 2914 trigger,Mirroring,input,INPUT
2016-01-08.18:24:26 2914 access(gitolite-admin, anil.golla, W, 'any'),-> refs/heads/personal/anil.golla/
2016-01-08.18:24:26 2914 trigger,Writable,access_1,ACCESS_1,gitolite-admin,anil.golla,W,any,refs/heads/personal/anil.golla/
2016-01-08.18:24:26 2914 pre_git gitolite-admin anil.golla W any -> refs/heads/personal/anil.golla/
2016-01-08.18:24:26 2914 trigger,Mirroring,pre_git,PRE_GIT,gitolite-admin,anil.golla,W,any,git-receive-pack
2016-01-08.18:24:26 2914 pre_git() on refbaroda
2016-01-08.18:24:26 2914 mirror,pre_git,gitolite-admin,user=anil.golla,sender=,mode=master
2016-01-08.18:24:26 2914 system,git,shell,-c,git-receive-pack '/home/gitadmin/repositories/gitolite-admin.git'
2016-01-08.18:24:26 2914 update,gitolite-admin,anil.golla,W,refs/heads/master,3087ed57cbf373970107857a2aeca2adf3cd446f,4139b07d2ca88925fc460bba64077939a25ba688
2016-01-08.18:24:26 2914 trigger,RefexExpr,access_2,ACCESS_2,gitolite-admin,anil.golla,W,refs/heads/master,refs/heads/master,3087ed57cbf373970107857a2aeca2adf3cd446f,4139b07d2ca88925fc460bba64077939a25ba688
2016-01-08.18:24:26 2914 -> refs/heads/master
2016-01-08.18:24:26 2914 update gitolite-admin anil.golla W refs/heads/master 3087ed57cbf373970107857a2aeca2adf3cd446f 4139b07d2ca88925fc460bba64077939a25ba688
2016-01-08.18:24:27 2914 post-up,refs/heads/master
2016-01-08.18:24:27 2914 system,gitolite compile
2016-01-08.18:24:27 2914 system,gitolite trigger POST_COMPILE
2016-01-08.18:24:27 2914 system,/home/gitadmin/bin/triggers/post-compile/ssh-authkeys,POST_COMPILE
2016-01-08.18:24:29 2914 die fingerprinting failed for 'keydir/pranav.talla.pub'
2016-01-08.18:24:29 2914 system() failed,/home/gitadmin/bin/triggers/post-compile/ssh-authkeys,POST_COMPILE,-> 6400
2016-01-08.18:24:29 2914 system() failed,gitolite trigger POST_COMPILE,-> 6400
2016-01-08.18:24:29 2914 trigger,Mirroring,post_git,POST_GIT,gitolite-admin,anil.golla,W,any,git-receive-pack
2016-01-08.18:24:29 2914 post_git() on refbaroda
2016-01-08.18:24:29 2914 mirror,post_git,gitolite-admin,user=anil.golla,sender=,mode=master
2016-01-08.18:24:29 2914 END
2016-01-08.18:24:29 2914 system,/home/gitadmin/bin/commands/mirror,push,gitslave,gitolite-admin
2016-01-08.18:24:29 2914 system,/home/gitadmin/bin/commands/mirror,push,refpune,gitolite-admin
2016-01-08.18:24:29 2914 system,/home/gitadmin/bin/commands/mirror,push,refchicago,gitolite-admin
===============================================================
New Server (admin id d.deepak)
2016-01-08.18:30:18 1698 ssh ARGV=d.deepak SOC=git-receive-pack '/gitolite-admin.git' FROM=10.81.124.12
2016-01-08.18:30:18 1698 pre_git gitolite-admin d.deepak W any refs/.*
2016-01-08.18:30:18 1698 system,git,shell,-c,git-receive-pack '/home/test1/repositories/gitolite-admin.git'
2016-01-08.18:30:18 1698 update gitolite-admin d.deepak W refs/heads/master 2b1ad8f3a735926bb170f52f0a64321ef9fe5f8e 2431f8d59d9dc5ae0920736d5618365ab350f669 refs/.*
2016-01-08.18:30:18 1698 system,gitolite compile
2016-01-08.18:30:18 1698 system,gitolite trigger POST_COMPILE
2016-01-08.18:30:18 1698 system,/home/test1/gitolite/src/triggers/post-compile/ssh-authkeys,POST_COMPILE
2016-01-08.18:30:19 1698 system,/home/test1/gitolite/src/triggers/post-compile/update-git-configs,POST_COMPILE
2016-01-08.18:30:19 1698 system,/home/test1/gitolite/src/triggers/post-compile/update-gitweb-access-list,POST_COMPILE
2016-01-08.18:30:19 1698 system,/home/test1/gitolite/src/commands/access,%,gitweb,R,any
2016-01-08.18:30:19 1698 system,/home/test1/gitolite/src/commands/git-config,-r,%,gitweb.
2016-01-08.18:30:19 1698 system,/home/test1/gitolite/src/triggers/post-compile/update-git-daemon-access-list,POST_COMPILE
2016-01-08.18:30:19 1698 system,/home/test1/gitolite/src/commands/access,%,daemon,R,any
2016-01-08.18:30:19 1698 END
2 ответа:
Получается (после 50 + комментариев), что нажатие клавиш на производственном сервере выдает ошибку: "
die fingerprinting failed for
".Я видел эту ошибку в:
- "gitolite'у администратора триггер POST_COMPILE не удалось" (не осталось места на диске)
"не удается добавить пользователя с Gitolite (centos) ": неправильная генерация ssh-ключа.
Это должно быть:Ssh-keygen-t rsa-f " ${H}/.СШ/тест" -с "gitolite'у администратора (не интерактивный)" -М -П ""
"становится фатальным: объект поврежден при нажатии на удаленный репозиторий ", который указывает источник этого сообщения об ошибке.
И упоминает об изменении формата отпечатка ключа в OpenSSH версии 6.8, и вам нужен последний gitolite (3.6.3+) чтобы иметь возможность справиться с новым форматом.
Создайте файл конфигурации SSH
Когда у вас есть несколько файлов удостоверений, создайте SSH config file механизмы для создания псевдонимов для ваших различных удостоверений.
Вы можете построить конфигурационный файл SSH, используя множество параметров и различные подходы.
Формат записей псевдонимов, используемых в этом примере:
Host alias HostName bitbucket.org IdentityFile ~/.ssh/identity
Чтобы создать конфигурационный файл для двух идентификаторов (workid и personalid), выполните следующие действия:
Open a terminal window. Edit the ~/.ssh/config file.
Если вы у вас нет конфигурационного файла, создайте его.
Добавьте псевдоним для каждой комбинации идентификаторов, например:Host workid HostName bitbucket.org IdentityFile ~/.ssh/workid Host personalid HostName bitbucket.org IdentityFile ~/.ssh/personalid
PS
Не забудьте загрузить ключи к вашей учетной записи gitolite.