我可以限制SSH访问cPanel服务器上的特定文件夹吗?

我有一个cPanel服务器,我想允许一个用户SSH / SFTP / SCP访问只是一个paticular文件夹,这可能吗?

我已经用FTP访问这个文件夹来设置它们,但是SSH访问会更好。

欢迎任何build议。

SSH本质上需要一些系统部分,所以这比你想象的更难。 它不是像ftp那样只是为你处理文件的协议,它实际上是一个远程shell,让你进入可以运行命令的机器。 这种预先假设有一台机器可以进入。 如果你试图限制到特定文件夹的连接,那么你可以拿走这台机器,SSH就不再有用了。

该解决scheme称为chroot ,用于“更改根目录”。 基本上你需要制作一个“泡泡”文件夹,里面有你的文件和系统的基本轮廓,包括一些命令和库。 它被称为“chroot jail”,因为它是一个自我维持的小单元,可以locking人员,使其不能混淆主机系统,但可以做一些事情,就好像它们有壳一样。

然而,chroot监狱是一个痛苦的设置和pipe理,如果你是一个cPanel用户,我有点猜测这是比你想要的更多的工作。

你可以使用的一个捷径是,很多ssh守护进程都有内置的sftp守护进程,它们使用ssh的传输和authentication安全性,而不需要在进入时给你shell部分,只是一个类似ftp的系统。 不幸的是,你将不得不跳过一些箍,以确保scp / ssh位也被禁用。 实际上,不给人贝壳而是给他们chroot'ed sftp访问非常棘手。

我不知道如何做到这一点的cPanel,但至less也许这会给你一个方向开始寻找。

编辑:有点search出来cPanel有一些内置的chrootconfiguration。它称之为jailshell。 你可能想看看!

不要用手做chroot。 这很难,可能会导致安全漏洞。

Jailkit是为了这个确切目的而devise的工具集,用来监禁用户。 非常容易设置。

http://olivier.sessink.nl/jailkit/

我结束了刚刚创build一个新的cPanel帐户,并把我想让他们在那里访问的文件。 感谢您的答案,但更多地了解Chroot!

我想你可以使用一个受限制的shell,它将一切限制在一个自定义的目录中。 它只会拒绝处理外面的事情。