我寻找一些FTP服务器软件的Debain 6.0挤压,可以支持以下内容:
有没有人有一些软件,可以做大部分(如果不是全部)这样的build议?
大部分这是非常简单的。 pure-ftpd-mysql或vsftpd + libpam-mysql可以使用(具有足够的configuration)“虚拟”用户的MySQL表,将它们chroot到自己的小目录,并configuration传入文件的umask位。 两者都可以使用SSL(FTPS),并可以强制客户端使用SSL或允许不安全和安全的login。
权限将需要一些手肘的油脂。 显而易见的解决scheme是使用unix文件系统权限:
根据您的要求,有两个潜在的问题。
较小的问题是“写作”和“覆盖”之间的区别。 有文件的写入权限的人可以清除文件中的所有数据(截断它)并用完全不同的数据填充文件。 我不知道FTP协议是否允许这个(从0的偏移量恢复?也许?)。 有人没有写入权限的文件,但有写权限的目录可以删除该文件,并创build一个新的文件具有相同的文件名。
更大的问题是创build和删除文件是一个单一的标志。 如果你需要用户不能在同一个目录中删除文件,那么最简单的解决办法是创build两个用户:你所有的虚拟用户都要映射到的ftpuser用户,以及拥有所有用户的ftpnodel用户您不希望他们删除的文件,但没有人login。 然后,在所有目录上设置粘滞位,将不可删除的文件ftpnodel到ftpnodel 。
有了这个解决scheme,您可以使用“user”rwx位来控制对文件和目录的正常访问,以及“world”(aka“other”)rwx位来控制对ftpnodel文件的访问。