Подтвердить что ты не робот

Гитоз: одни и те же пользовательские множественные машины

В git/gitosis один ключ ssh сохраняется с именем файла так же, как имя пользователя.

то есть. myusername.pub

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

4b9b3361

Ответ 1

Собственно, гитоз поддерживает это. Вам просто нужно добавить ключ ssh в новую строку в файле ключа.

Ответ 2

Вы больше не можете добавлять ключ в строку в файлах .pub, как было предложено igorw. Я попробовал и получил следующее сообщение.

WARNING: a pubkey file can only have one line (key); ignoring kent.pub
         Perhaps you're using a key in a different format (like putty/plink)?
         If so, please convert it to openssh format using 'ssh-keygen -i'.
         If you want to add multiple public keys for a single user, use
         "[email protected]" file names.  See the "one user, many keys"
         section in doc/3-faq-tips-etc.mkd for details.

Я попробовал предлагаемое решение, которое должно было создать новый файл pub с именем <user>@<host>.pub, и он работал нормально.

Ответ 3

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

(В качестве альтернативы вы копируете свой ключ на всех своих машинах, а не как хорошо/безопасно, но отлично справляетесь)

Ответ 4

Gitosis говорит через SSH и использует SSH-ключи для уникальной идентификации пользователей. Если вы хотите действовать как один и тот же пользователь на нескольких компьютерах, вам просто нужно скопировать закрытый ключ (~/.ssh/id_rsa) в каталог ~/.ssh на втором компьютере. Если вторая машина уже имеет ключ, вы можете скопировать ключ в другое имя файла (например, ~/.ssh/mygitkey) и настроить SSH для его использования для соответствующего сервера. Измените/создайте файл ~/.ssh/config и добавьте этот контент:

host mygitserver
    identityfile ~/.ssh/mygitkey