多公钥下指定公钥进行ssh验证git权限

  公司采用的是Atlassian的git平台,与github,gitlab类似,都可以在用户空间创建repo代码库。但是多人在同一台服务器上使用同一个work账号进行工作时,同一个public key(git的加公钥的ssh验证方式),只能被一个用户使用进行验证,也就是说: 机器的public key--用户绑定了.

  解决方法:

    1 重新生成一个新的公私钥对:

         ssh-keygen -t rsa -C "cuiyang04@xxxx" -f ~/.ssh/cuiyang04pub

    2 指定在访问不同的host时,使用不同的公私钥对:

vim ~/.ssh/config:

                Host git.xxxxxx.com
                IdentityFile ~/.ssh/cuiyang04pub

    3 将cuiyang04pub.pub中的内容,粘贴到web的access keys的信任列表中;

    4 使用ssh -T [email protected]测试;

    5 如果测试遇到没有权限的错误, 执行如下命令:

         cd ~/.ssh

         chome 600 *

    6 之后再访问git.xxxxxxx.com的ssh的repo地址,就会直接读取cuiyang04pub的公钥做验证;

  这个还解决不了一个问题,就是另一个用户也使用git.xxxxxx.com的repo库时,无法读取他自己的公钥内容,所以只能解决在不覆盖别人的公私钥文件的情况下,生成并使用自己的公私钥文件。

           

你可能感兴趣的:(git)