我有一台基于 Ubuntu 的服务器,它除其他功能外,还充当文件存储/托管(由 nginx 提供支持),因此如果将文件放入/var/www/files.ourcompany.com/file.txt
,则它可以在 上公开获取http://files.ourcompany.com/file.txt
。
我想将服务器的使用权限限制给三个特定的用户:
- 用户 A 是启用了 sudo 的总体用户,他拥有对所有内容的 SSH 和 SFTP 访问权限。他通过 中的 SSH 密钥获得授权
/home/userA/.ssh/authorized_keys
。本质上,这是 root 的替代品。 - 用户 B 是使用 FileZilla 的普通用户。他无法使用 SSH,只能使用 SFTP,并且只有
/var/www/files.ourcompany.com
在登录时才能看到。他通过放置在 SSH 密钥中的 SSH 密钥获得授权/etc/ssh/authorized_keys/userB
(如所述这里) - 用户 C 与用户 B 完全相同,只是他有自己的 SSH
/etc/ssh/authorized_keys/userC
密钥
上述方法是否可以使用chroot
或类似方法?用户 A 已经拥有所需的所有权限,但我不确定如何创建两个普通用户,他们都应该被 chroot 到同一个文件夹(具有上传/下载功能)——/var/www/files.ourcompany.com
这样当他们通过 FileZilla 登录时,他们就会立即被放置在该文件夹中。我还担心由于权限问题而意外破坏现有的 nginx 设置……