
我需要设置文件夹/usr/share/nginx/site/文件夹作为主文件夹并限制该用户不查看/下载 其他文件夹...我的想法是,仅允许通过安全FTP。
站点文件夹中有一个正在运行的网站。
我尝试:
1-创建一个用户并将 /usr/share/nginx/site/folder 设置为通过 sftp 登录时的第一个文件夹..但用户会看到其他文件夹...
任何想法?
答案1
创建一个新用户,并将其主目录设置为您需要他访问的目录(此命令必须在 sudo 或 root shell 下运行):
adduser --home /restricted/directory restricted_user
这将创建一个用户 restricted_user,/restricted/directory
然后设置目录,以便用户可以写入目录。默认情况下,它不具备写入任何其他目录的能力。
如果您已经有目录,您可以运行 adduser 命令并--no-create-home
附加选项并手动设置权限(也可以使用 root 权限),例如:
chown restricted_user:restricted_user /restricted/directory
chmod 755 /restricted/directory
如果您需要使该用户甚至无法访问全世界可写的目录,则有两种方法可以实现。
如果您想为用户提供交互式 shell 会话,请考虑按照本手册了解如何创建 chroot jail(在您的 中/restricted/directory
)。
之后,将以下内容添加到您的sshd_config
:
Match user restricted_user
ChrootDirectory /restricted/directory