希望这个用户只能上传,但是不能读取。
和寄信一样,塞进邮筒之后就不能拿出来了。
不知道你用的哪个ftp server,vsftpd的话可以参考这两篇,它们基本上是借助了一部分Linux目录权限来实现的
http://blog.serverbuddies.com...
https://serverfault.com/quest...
其他ftp server也可以借助这种思路解决。
如果你需要更细粒度的权限控制,你可能需要辅助Linux的ACL功能,Linux原生的用户权限太粗放了,ACL功能弥补了对于ugo权限中对于o权限过于粗放的问题。
7 回答5.3k 阅读
4 回答4k 阅读
2 回答5.9k 阅读✓ 已解决
2 回答2.5k 阅读✓ 已解决
1 回答2.3k 阅读✓ 已解决
2 回答799 阅读✓ 已解决
2 回答3.2k 阅读
就是只写、不可读呗?
这个主流的 FTP 服务好像都不支持这么做,你只能配置一个可读可写、或者只读的账号。
但有一些 FTP 服务可以配置过滤的 FTP 命令,你可以先建一个可读可写的账号、再把读取的命令都禁用的,就近乎实现了你的目的了。
以 vsftp 为例,你可以在配置文件里设置
cmds_denied
或cmds_allowed
这两项来决定禁用或启用哪些命令。常见的 FTP 命令有:
P.S.1. 但其实有个问题,如果不可读的话你连目录信息都拿不到,咋上传呢?起码得保留获取目录和文件信息的能力,可以只禁掉下载。
P.S.2. 我不确定能不能针对特定用户禁用特定命令,如果是全局的禁用的话,你所有账号都无法执行相应操作了,这点你可以自己试验一下。
还有一种办法,那就是你自己编程实现一个 FTP Server。这样的话你想要啥特殊功能都可以。