我正在尝试将某些 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
这似乎没问题 - 但有一个例外:我可以创建文件,但无法在其中放入任何内容。有点像touch
可以工作?!
任何想法都值得赞赏!任何更好的方法都可以 :) 谢谢!
答案1
哦,我刚刚找到了 - 显然 - 最好的解决方案:参数-R将整个会话设置为只读模式。
Match User my-read-user
ChrootDirectory /sftp/%u
ForceCommand internal-sftp -R