我正在尝试为单个托管ssh帐户使用多个svn作者。我遵循了http://svn.apache.org/repos/asf/subversion/trunk/notes/ssh-tricks中针对隧道用户的技巧,但仍显示与我的托管ssh帐户用户名相同的作者。我还检查了SVN版本必须是1.0.x的较新版本,才能使其适用于隧道用户。

更新

我遵循的是:

  • 首先,我从托管帐户id_rsa拿了密钥
  • 然后,我使用PuttyGen导入并提取了私钥。
  • 之后,我用完整的内容在Putty中创建了一个session域(.com / .net等)并在SSH-> AUTH中附加了私钥
    我在data中添加了托管帐户用户名以进行自动登录。
  • 为了进行验证,我检查了该 session ,它正常工作而无需询问
    任何密码。
  • 现在,我在id_rsa目录中创建了~/.ssh密钥的副本,如下所示:authorized_keys所需的svnserve
  • 然后我在一行中附加了command="~/bin/svnserve -t -r ~/svn--tunnel-user=makki",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-ptyssh-rsa AAfagd..... makki@domain.com
  • 现在,当一切准备就绪时,我使用svnadmin createmyrepo
  • 在服务器上创建了一个存储库
  • 我用svn+ssh://mydomain.com/home/svn/myrepo checkout 了
    成功 checkout ,但是现在我提交时显示作者为我
    ssh帐户不是makki,正如我在附加行中提到的那样
    authorized_keys文件中。

  • 请指导我在流程中缺少的内容...

    授权_密钥内容

    第1行ssh-rsa AAAAB3 .......
    line#2 command =“〜/ bin / svnserve -t -r〜/ svn --tunnel-user = makki”,无端口转发,无代理转发,无X11转发,无pty ssh- rsa AAAAB3NzaC1yc2E .....

    最佳答案

    如果它不起作用,则必须在命令中缺少--tunnel-user选项,或者您没有为用户使用唯一键。

    SSH configuration section of the SVN Book:



    强调我的。

    根据您对问题的更新,在我看来,您正在重用密钥。相反,您应该为每个用户生成一个唯一的密钥。通常,这是如何工作的,用户将生成自己的密钥,然后为您提供要添加的公共(public)密钥。如果密钥已经存在于〜/ .ssh / authorized_keys文件中,那么我怀疑最宽松的条目将适用。

    关于svn - SVN的多个用户拥有一个ssh帐户,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20176049/

    10-14 16:25
    查看更多