linux – 如何将SSH / SFTP用户限制为apache网站的子文件夹?

前端之家收集整理的这篇文章主要介绍了linux – 如何将SSH / SFTP用户限制为apache网站的子文件夹?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我目前正在 Linux服务器上设置apache,需要创建一个新用户,该用户可以登录并只编辑特定目录中的文件.

我目前将我的网站设置为

/数据/ htdocs中/ mywebsite /

对此的权限是apache:apache

现在我需要做的是创建一个新用户“joeblogs”并限制该用户只访问/ data / htdocs / mywebsite / store /

用户应该能够SSH和SFTP,但始终直接指向此文件夹,用户也应该能够完全访问/ store /文件夹,但无法查看任何其他文件夹或文件.系统/

任何有关这方面的帮助将不胜感激我已经圈了几个小时.

解决方法

SSH具有chroot内置用户的能力(自4.9p1起),但将其用于交互式会话有点困难.

限制sftp虽然相当容易,但可以基于每个用户或每个组进行配置

Match User joeblogs
    ChrootDirectory /data/htdocs/mywebsite/store/
    ForceCommand internal-sftp
    AllowTcpForwarding no

交互式会话更复杂,因为用户需要shell,并且存在一些设备文件.

来自man 5 sshd_config:

The ChrootDirectory must contain the
necessary files and directories to
support the user’s session. For an
interactive session this requires at
least a shell,typically sh(1),and
basic /dev nodes such as null(4),
zero(4),stdin(4),stdout(4),
stderr(4),arandom(4) and tty(4)
devices

我不建议这样做,因为您需要在他们的chroot中构建和维护他们需要的任何实用程序的副本.如果您仍想尝试使用此路由,可以在sshd_config手册页和here中阅读更多相关信息

原文链接:https://www.f2er.com/linux/398408.html

猜你在找的Linux相关文章