首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >允许汞访问但不允许SSH

允许汞访问但不允许SSH
EN

Server Fault用户
提问于 2011-01-09 21:20:54
回答 3查看 684关注 0票数 4

我已经在Linux机器上设置了一台Mercurial服务器,它运行得很好。例如,用户可以使用如下方式推拉到它:

代码语言:javascript
运行
复制
hg push ssh://...

用户也可以通过ssh进入服务器。

对于一些用户,我想限制他们只能访问Mercurial。

我该怎么做?

EN

回答 3

Server Fault用户

发布于 2011-01-09 22:47:57

你想问的是。这正是git为git所做的--它通过ssh键文件中的command=条目运行,并确保只能使用ssh键执行git操作。这个链接的问题询问的是类似于Gitorious的Mercurial软件。作为一个变化莫测的用户,我不能评论答案的质量。

票数 3
EN

Server Fault用户

发布于 2011-12-24 16:38:07

Mercurial为这一点提供了一个脚本!使用我们提供的contrib/hg-ssh脚本来限制命令。该文件包含此标题以解释如何使用它:

若要在~/.ssh/authorized_keys中使用command选项,请参见sshd(8):command=“hg/ To /repo1 /path/to/repo2 ~/repo3 ~user/repo4”ssh-dss .(可能还有其他一些有用的选项:no-port-forwardingno-X11-forwardingno-agent-forwarding),这允许将SSH从/推到作为参数提供的存储库。如果您的所有存储库都是公共目录的子目录,则可以允许具有以下较短路径的路径: command="cd path/to/my/ repo1 &hg repo1 subdir/repo2“,您可以使用普通shell的模式匹配,例如: command="cd repos &hg user/thomas/* project/{mercurial,foo}”。

票数 2
EN

Server Fault用户

发布于 2011-01-10 20:14:12

您可以修改/etc/security/others.conf指令,以便只允许特定用户登录,而不允许其他用户登录。

这一行看起来应该是这样的,但是对于本地化的组/用户:

代码语言:javascript
运行
复制
-:ALL EXCEPT your_group your_user1 your_user2 :ALL

或者,如果您有一个特定的组,则要将特定用户/组列入黑名单:

代码语言:javascript
运行
复制
-: blacklist_group1 blacklist_user :ALL

或者您可以允许通过sshd.conf中的组进行ssh访问,但是access.conf方法更具有全局性。这应该允许您的用户仍然访问主机,但不能登录。

埃里克

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/220433

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档