2009-07-22 1 views
22

Недавно я установил внутренний сервер хранилища git и включил его и установил в качестве инструмента управления gitosis. Доступ только для чтения доступен через протокол git: //, а доступ к записи доступен через gitosis с использованием открытых ключей ssh.Можно ли использовать ту же пару частных/открытых ключей ssh ​​на двух машинах для доступа к репозиторию git?

У меня есть разработчик, которому был предоставлен доступ к его проектам с открытым ключом, который был сгенерирован на его рабочей станции.

Теперь он хочет получить доступ к этому репозиторию со своего ноутбука, используя ту же пару ключей ssh. Он скопировал папку .ssh в полном объеме на свой ноутбук и попытался клонировать из репозитория без успеха.

Действительно ли это нужно попробовать?

Должна ли быть создана пара ключей ssh ​​на машину? Это кажется странным, так как это фактически потребовало бы, чтобы каждое имя пользователя машины добавлялось в конфигурацию gitosis.

Любая помощь будет оценена по достоинству.

+1

Мы доказали, что копирование ключей ssh ​​на другие машины работает, как было предложено. Теперь мы думаем, что это может быть проблема с сетью/vpn. Спасибо за ответы. – Lou

+0

Является ли имя пользователя разработчика одинаковым на обеих клиентских машинах? – Nate

+0

Нет, они не так, но я не думаю, что это имеет значение в этом случае. Используемая команда git clone указывает git @ в командной строке. Таким образом, доступ осуществляется через общий пользователь git в конце хранилища. – Lou

ответ

22

Да, я думаю, вы можете.

У меня есть нечто похожее. Две машины, одна Intel (настольная), другая Sparc. Я могу войти в обе машины и получить доступ к тому же CVS-серверу (другому компьютеру), используя SSH-доступ с той же парой ключей, которая была сгенерирована на машине Intel.

Убедитесь, что при копировании с помощью секретного ключа, который правильно задает права доступа .ssh (0700), и ваш домашний каталог не может быть доступен для записи в группе или в мире. ID_rsa должен иметь доступ только для чтения (0400)

+2

Кроме того, в моем noobish опыте: мне пришлось скопировать открытый ключ плюс '' одно пространство плюс мое имя пользователя/адрес электронной почты в файл id_rsa.pub на другом компьютере. Примечание. Я также запускал ssh-keygen сначала в каталоге .ssh на Snow Leopard Mac OS 10.6.4. Пример: [... некоторые данные криптографии ...] == [[email protected]] * скобки выше среднего ** заменить текст внутри них ** – mkelley33

+0

Интересно, мне никогда не приходилось изменять id_rsa.pub. Это должна быть аномалия OSX. – Matt

10

Да, это совершенно законно. ssh ключи не заботятся о том, где они были созданы, и это прекрасно, чтобы иметь их на нескольких машинах сразу.

Попробуйте дать клиенту ssh параметр «-v» или «-vv» (для подробного вывода) и проверьте журнал ssh сервера, чтобы отладить проблему.

Смежные вопросы