SFTP - 将只读访问请求列入白名单

sil*_*ent 11 ssh redhat sftp

我正在尝试将某些 SFTP 请求列入白名单,以便用户只能打开和读取文件和文件夹。目前我有这个,基于这个线程

Subsystem sftp internal-sftp

Match User my-read-user
    ChrootDirectory /sftp/%u
    ForceCommand internal-sftp -p open,close,read,opendir,stat,readdir,fstat,lstat,statvfs,fstatvfs,readlink,realpath
Run Code Online (Sandbox Code Playgroud)

这似乎工作正常 - 有一个例外:我可以创建文件,但我不能在其中放置任何内容。有点像touch会起作用吗?!

任何想法表示赞赏!任何更好的方法都可以:) 谢谢!

sil*_*ent 14

哦,我刚刚找到了 - 显然 - 最好的解决方案:参数 -R 将整个会话设置为只读模式。

Match User my-read-user
    ChrootDirectory /sftp/%u
    ForceCommand internal-sftp -R
Run Code Online (Sandbox Code Playgroud)