是否可以使用php创建ftp用户并分配他们访问选定文件夹的权限?

是否可以使用php创建ftp用户并分配他们访问选定文件夹的权限?,php,ftp,Php,Ftp,我只需要知道,在php中是否可以创建一个ftp用户,然后在服务器上创建文件夹,并为创建的ftp用户授予对选定文件夹的ftp访问权限 再次感谢 本机PHP无法做到这一点。这项任务远远超出了PHP的范围 但是,根据使用的服务器操作系统和FTP服务器软件,PHP可以调用一些shell脚本(或Windows上的WMI/PowerShell脚本)来完成任务。不过,这并不是很容易设置的,尤其是如果要安全地设置(不给PHP进程根级别的权限) 这个问题可能更适合在Serverfault.com上提出。不,但如果

我只需要知道,在php中是否可以创建一个ftp用户,然后在服务器上创建文件夹,并为创建的ftp用户授予对选定文件夹的ftp访问权限


再次感谢

本机PHP无法做到这一点。这项任务远远超出了PHP的范围

但是,根据使用的服务器操作系统和FTP服务器软件,PHP可以调用一些shell脚本(或Windows上的WMI/PowerShell脚本)来完成任务。不过,这并不是很容易设置的,尤其是如果要安全地设置(不给PHP进程根级别的权限)


这个问题可能更适合在Serverfault.com上提出。

不,但如果我没有错的话,你可以这样做

创建一个shell脚本(
ftp.sh
),该脚本具有SUID(确保它归root所有,并且只能由root读取/写入),用于创建用户、设置权限等

从php调用脚本

system("./ftp.sh ".escapeshellarg($newUsername)." ".escapeshellarg($newPassword))

然而,我非常确定有更安全/正确的方法来实现这一点。我可以肯定地看到,这将成为一场安全噩梦。

有一些用PHP编写的web主机面板,其中包括ftp帐户,因此这绝对是可能的

确切的过程完全取决于您使用的FTP服务器。它可能涉及创建新的Unix用户帐户

这更多的是一个FTP或操作系统问题,而不是PHP问题,因为您需要进行配置。正如Pekka所说,如果您在Serverfault上询问设置的详细信息,您可能会更幸运。

如果脚本运行的web进程允许更改FTP设置,例如通过本机PHP函数或其他“Shell脚本”添加用户、组等,则答案为“是”,而答案为“否”如果web进程没有进行更改的访问权限或特权