亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > PHP > 正文

用PHP實現Ftp用戶的在線管理

2024-05-04 21:47:16
字體:
來源:轉載
供稿:網友

  領導要我策劃一個網頁設計大賽和Flash創作大賽,要求必須實現在線報名和上傳作品。通過FreeBSD+Apache+PHP+Mysql+FTP我實現了該要求。

  實現在線報名和上傳作品的思路是利用網頁表單收集用戶填寫的資料存儲到Mysql數據庫內,同時以該用戶的注冊名創建一個FTP上傳賬號并創建該用戶的相應目錄。

  Ftp服務器是系統默認帶的,采用系統用戶的用戶名和密碼,創建系統用戶就等于創建FTP用戶,FreeBSD是屬于UNIX陣營的操作系統,它沒有象Linux一樣的useradd和groupadd等創建用戶和組的命令,其取而代之的是pw命令加上相應參數來實現,在Freebsd上以管理員的身份創建一個用戶的命令是

以下是引用片段

  echo | pw useradd [-g][groupname] [-s][shelldir][-h 0]

  參數g指定用戶組,參數s指定用戶的shell。

  如果是普通用戶登陸的話還必須用到su命令,調用的方法是

以下是引用片段:

  su root –c ‘echo | pw useradd [-g][groupname] [-s][shelldir][-h 0] ’

  執行之后系統會要求輸入管理員密碼,輸入密碼就可以以管理員的身份執行這個命令了。

  實現這步操作的主要難點在于如何通過PHP來調用上面這些系統命令去創建一個用戶,本例是使用PHP中的popen()函數來實現的,該函數執行指令打開文件,語法是int popen(string command, string mode),其打開的文件只能是單向的,只能讀或只能寫,對應的“string mode”為’r’或’w’,“string command” 就是命令字符串,在對文件的操作上可使用 fgets()、fgetss()與fputs()函數,本例用fputs()函數往文件里面輸入管理員密碼。若是開檔發生錯誤將返回 false 值,最后函數要記得調用pclose()關閉。

  下面我們來規劃一下FTP用戶的組,事先我們先用pw groupadd ftpuser創建ftpuse組,讓在線申請的用戶為這個組的成員。為了安全起見,我們不應該給FTP用戶Telnet權限,所以我們還要專門給他們創建一個shell,使得他們不能通過Telnet正常登陸系統,方法如下:先創建一個文件/bin/ftponly

以下是引用片段:

  #!/bin/csh

  /bin/cat << XX

  You can ony use this username to login ftp server!

  And you can not use it to telnet to this system! XX

  sleep 10

  該文件中XX之間就是顯示給用telnet登陸的用戶看的信息。信息顯示10秒鐘就自動退出了。最后不要忘記用chmod +x /bin/ftponly給這個文件可執行屬性。

  然后在/bin/shell文件中添加“/bin/ftponly”,在以后的命令里面我們就可以利用pw中-s參數把這個shell指定給FTP用戶了。

  最后還要注意一個問題,su命令僅僅是wheel管理組的用戶成員才可以使用,當PHP調用su命令的時候也必須以wheel組成員的身份運行,否則系統拒絕運行,而PHP運行系統命令的身份就是Apache Web服務器運行的身份,初始的用戶名和用戶組都是nobody,所以先得建立一個wheel組的用戶www供apache使用,接著更改Apache的配置文件httpd.conf中的user為www,group為wheel,重新啟動Apache,就可以以新用戶身份運行了。

下面可以創建PHP源文件checkin.php了,代碼如下:

以下是引用片段:

 

{ $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{?>

 

 

 

 

 

 

 

 

 

申請FTP賬號

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

賬號名稱:

 

 

 

 

 

 

密碼:

 

 

 

 

 

 

 

 

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
92看片淫黄大片欧美看国产片| 中文字幕亚洲在线| 中文字幕欧美精品在线| 欧美极品少妇全裸体| 亚洲美女久久久| 日韩视频免费中文字幕| 中文字幕亚洲无线码在线一区| 欧美精品电影免费在线观看| 97视频在线观看视频免费视频| 国产欧美va欧美va香蕉在| 国产精品草莓在线免费观看| 亚洲片在线资源| 亚洲国产女人aaa毛片在线| 日韩av网址在线观看| 亚洲精品自产拍| 亚洲国产精品悠悠久久琪琪| 91亚洲永久免费精品| 亚洲日韩第一页| 亚洲国产欧美一区二区三区同亚洲| 亚洲精品国产suv| 96sao精品视频在线观看| 欧美一级高清免费播放| 久久精品视频免费播放| 精品中文字幕久久久久久| 亚洲石原莉奈一区二区在线观看| 亚洲人成77777在线观看网| 8090成年在线看片午夜| 日韩中文字幕av| 欧美高清视频在线| 国自产精品手机在线观看视频| 欧美一级在线亚洲天堂| 亚洲成成品网站| 久久久久成人网| 日本在线精品视频| 亚洲欧美中文另类| 国产精品r级在线| 成人国产在线激情| 成人免费在线网址| 亚洲精品视频久久| 国产精品美女在线观看| 国产91精品久久久久| 国产啪精品视频网站| 一区二区三区国产视频| 欧美日韩亚洲视频一区| 91中文字幕一区| 成人国产精品色哟哟| 亚洲国产古装精品网站| 久久av资源网站| 韩国视频理论视频久久| 国产中文欧美精品| 色爱精品视频一区| 中文在线资源观看视频网站免费不卡| 久久九九亚洲综合| 久久这里有精品视频| 日韩中文字幕视频| 亚洲国产精品成人av| 久久人人看视频| 日韩精品在线影院| 久久精品中文字幕免费mv| 欧美激情中文网| 亚洲欧美激情另类校园| 亚洲欧美日韩中文视频| 欧美精品电影免费在线观看| 色播久久人人爽人人爽人人片视av| 97精品一区二区视频在线观看| 国产精品欧美日韩| 美女久久久久久久| 亚洲精品视频久久| 国产成人亚洲精品| 亚洲精品资源美女情侣酒店| 日韩欧美中文字幕在线观看| 久久中文字幕在线| 久久69精品久久久久久国产越南| 欧美丝袜一区二区| 亚洲第一福利网站| 在线播放亚洲激情| 久久99久国产精品黄毛片入口| 久久国产视频网站| 欧美午夜无遮挡| 欧美日韩久久久久| 欧美美女15p| 在线精品91av| 米奇精品一区二区三区在线观看| 黄色成人在线播放| 国产亚洲xxx| 成人激情在线播放| 26uuu亚洲国产精品| 国产精品xxxxx| 永久555www成人免费| 久久久精品电影| 国产精品a久久久久久| 亚洲中国色老太| 日韩免费看的电影电视剧大全| 成人一区二区电影| 欧美噜噜久久久xxx| 日韩av在线看| 成人国产精品一区二区| 日本欧美在线视频| 国产欧美精品一区二区| 欧美又大粗又爽又黄大片视频| 蜜臀久久99精品久久久久久宅男| 一本色道久久88精品综合| 国产精品大陆在线观看| 久久久国产精彩视频美女艺术照福利| 欧美国产日产韩国视频| 欧美性开放视频| 欧美另类第一页| 欧美做受高潮1| 最新国产精品拍自在线播放| 一区二区在线视频播放| 国产精品老女人视频| 久久精品中文字幕一区| 国产精品久久久久久中文字| 亚洲男人天天操| 日本一区二区在线播放| 91国产美女在线观看| 精品国产电影一区| 国产精自产拍久久久久久蜜| 欧美大片网站在线观看| 久久免费成人精品视频| 91久久精品久久国产性色也91| 日本欧美一二三区| 欧美日韩加勒比精品一区| 亚洲裸体xxxx| 色香阁99久久精品久久久| 国产成人avxxxxx在线看| 欧美激情视频给我| 成人午夜两性视频| 91精品国产综合久久香蕉最新版| 九九九久久久久久| 91免费福利视频| 亚洲国产成人久久| 亚洲成人黄色网址| 2020国产精品视频| 人人做人人澡人人爽欧美| 亚洲一区av在线播放| 亚洲精品永久免费精品| 亚洲精品综合精品自拍| 欧美极品欧美精品欧美视频| 午夜精品一区二区三区在线视| 亚洲精品欧美极品| 日韩高清不卡av| 91亚洲午夜在线| 中文字幕亚洲欧美日韩在线不卡| 欧美成人精品一区二区三区| 日韩精品中文字幕在线观看| 午夜精品久久久久久久99热| 黑人精品xxx一区一二区| 久久久午夜视频| 亚洲成人性视频| 久久91亚洲精品中文字幕| 自拍偷拍亚洲精品| 91亚洲精品久久久| 国产精品香蕉国产| 欧美极品美女电影一区| 亚洲国产日韩欧美在线图片| 亚洲欧美福利视频| 久久综合九色九九| 亚洲自拍偷拍一区| 成人xvideos免费视频| 4438全国成人免费| 久久亚洲私人国产精品va| 欧美日韩中文在线观看| 欧美精品在线视频观看|