<?if (($username!="") and ($userpasswd!=""))//判断是否有表单提交了信息 { $rootpasswd="adminpassword"; //定义管理员密码 $creatuser ="su --login root -c 'echo ".$userpasswd." | pw useradd ".$username."
-s /bin/ftponly -g ftpuser –s /bin/ftponly -h 0' "; //这是利用su和pw命令创建用户的用到的字符串 $fp=popen($creatuser,"w"); //调用popen()函数执行字符串中的命令,返回文句柄给$fp fputs($fp,$rootpasswd); //写入管理员密码到文件$fp,相当于输入密码给系统 pclose($fp);//关闭文件 $creatdir="su --login root -c 'mkdir /home/".$username."'";//创建用户目录的命令字符串 $fp=popen($creatdir,"w");//执行命令创建用户目录 fputs($fp,$rootpasswd); //输入管理员密码 pclose($fp); $creatdir="su --login root -c 'mkdir /home/".$username."/public_html'"; $fp=popen($creatdir,"w"); //执行命令创建用户网站根目录 fputs($fp,$rootpasswd); //输入管理员密码 pclose($fp); $creatdir="su --login root -c 'chown ".$username." /home/".$username."'";
//改变用户目录的所有者为用户自己,初始为运行Apache的用户www。 $fp=popen($creatdir,"w"); //执行命令 fputs($fp,$rootpasswd); //输入管理员密码 pclose($fp); $creatdir="su --login root -c 'chown ".$username." /home/".$username."/public_html'";
//改变网站根目录的归属 $fp=popen($creatdir,"w"); fputs($fp,$rootpasswd); pclose($fp); echo "恭喜".$username.",您的的FTP账号已经申请成功!请到FTP上登陆,请注意,您没有Telnet权限";} else{?> <html> <head> <title>申请FTP账号</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> </head> <body bgcolor="#FFFFFF"> <div align="center"> <p>申请FTP账号</p> <form method=POST action="<? echo $PHP_SELF; ?>"> <table width="36%" border="0"> <tr> <td width="40%"> <div align="right">账号名称:</div> </td> <td width="60%"> <input type="text" name="username"> </td> </tr> <tr> <td width="40%"> <div align="right">密码:</div> </td> <td width="60%"> <input type="password" name="userpasswd"> </td> </tr> <tr> <td colspan="2"><input type="submit" name="Submit" value="申请"></td> </tr> </table> </form> </div><?}?> </body> </html>
用PHP实现Ftp用户的在线管理
下面可以创建PHP源文件checkin.php了,代码如下:
0
相关文章