svn+ssh 多用户无需root权限

svn+ssh 多用户无需root权限

我在服务器上有一个 svn 存储库,可以通过 svn+ssh 访问。我只有用户访问权限(不是 root),并且无法安装 mod_dav。

有没有办法配置多个用户访问 svn 存储库(即使用多个 ssh 密钥),而无需向其他 svn 用户提供完全 ssh 访问权限?

答案1

当然,只需使用强制命令/usr/bin/svnserve -t(或适当的备用路径)将额外的密钥放入authorized_keys中。

答案2

womble 的意思是,你只能在 authorized_keys 中为一个 ssh 公钥分配一个命令。

command="/usr/bin/svnserve -t" ssh-rsa ...

在这个例子中,通过 ssh 密钥访问的用户只能运行命令/usr/bin/svnserve -t

答案3

有三种方法可以访问 subversion:

  1. 通过 Apache
  2. svnserve
  3. 通过 SSH 访问 svnserve

http://svnbook.red-bean.com/en/1.5/svn.serverconfig.html

如果您已排除所有这些,那么您需要将您的 Subversion 存储库移到其他地方或不允许人们访问。

答案4

您可以为每个想要访问的人提供一个公钥,他们可以使用该公钥通过同一个 SSH 用户进行连接。强制每个密钥只能运行,svnserve -t --tunnel-user=<username>为每个密钥提供单独的 SVN 身份。这在詹姆斯·加德纳 (James Gardner) 的博客文章

相关内容