資源描述:
《CentOS通過(guò)vsftpd及pam-mysql,php實(shí)現(xiàn)FTP虛擬用戶管理》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、CentOS系統(tǒng)通過(guò)vsftpd及pam-mysql、php等實(shí)現(xiàn)FTP虛擬用戶管理辣漢堡QQ:15070380windphone@163.com最近因?yàn)楣ぷ餍枰髦鴮?shí)現(xiàn)了在linux環(huán)境下使用vsftpd及pam_mysql實(shí)現(xiàn)FTP服務(wù)器的虛擬用戶管理,并通過(guò)簡(jiǎn)單的php頁(yè)面為用戶提供自助修改密碼的功能。實(shí)現(xiàn)過(guò)程中遇到了不計(jì)其數(shù)的小問(wèn)題,還好現(xiàn)在有互聯(lián)網(wǎng),一路邊查邊改,最終實(shí)現(xiàn)了當(dāng)初對(duì)linux下FTP服務(wù)器的設(shè)想。網(wǎng)上的信息雖多,但復(fù)制粘貼的更多。許多資料都是雷同而且?guī)в绣e(cuò)誤的,我把解決問(wèn)題過(guò)程中用到的
2、一些經(jīng)驗(yàn)證正確無(wú)誤的資料集中起來(lái),希望能給有相似需求的網(wǎng)友造福。其中引用到大量互聯(lián)網(wǎng)上的資料沒(méi)有辦法查到源頭,如有冒犯之處敬請(qǐng)諒解。一、CentOS操作系統(tǒng)在虛擬機(jī)上的安裝打開(kāi)VMwarevSphereClient,用本地的CentOS6.3光盤(pán)映像文件安裝即可,選擇了最小安裝。CentOS是redhatLinux的再編譯免費(fèi)版本。二、CentOS系統(tǒng)安裝完成后的網(wǎng)絡(luò)配置編輯文件/etc/sysconfig/network-scripts/ifcfg-eth0,內(nèi)容大致如下:DEVICE="eth0"BOOTPR
3、OTO="static"HWADDR="00:10:51:9D:54:4C"NM_CONTROLLED="yes"ONBOOT="yes"IPADDR=xxx.xxx.0.16NETMASK=255.255.255.0GATEWAY=xxx.xxx.0.254TYPE="Ethernet"UUID="da0b8894-8adf-4a54-a3d0-b0586e08209e"重啟系統(tǒng)后網(wǎng)絡(luò)配置就可以生效。雖然也可以使用命令行設(shè)置且立即生效,但重啟系統(tǒng)后需要重新設(shè)置。三、無(wú)互聯(lián)網(wǎng)環(huán)境下yum安裝命令的使用yum是li
4、nux下一個(gè)非常好用的軟件安裝/卸載軟件,但若linux不能聯(lián)網(wǎng),若想使用yum安裝軟件,可以依照下面的方法。1、掛載CentOS安裝光盤(pán)mount-tiso9660/dev/cdrom/media/cdrom2、修改yum配置文件cd/etc/yum.repos.d/會(huì)看到三個(gè)文件,第一個(gè)CentOS-Base.repo是yum網(wǎng)絡(luò)源的配置文件,第三個(gè)CentOS-Media.repo是本地源的配置。修改CentOS-Media.repo在baseurl中,修改第2個(gè)路徑為/mnt/cdrom(即為光盤(pán)掛載點(diǎn))
5、將enabled=0改為13、將yum網(wǎng)絡(luò)源配置文件改名為CentOS-Base.repo.bak,否則會(huì)先在網(wǎng)絡(luò)源中尋找適合的包,改名之后直接從本地源讀取。好了,現(xiàn)在可以在不聯(lián)網(wǎng)的環(huán)境下安裝包了,比如要安裝gcc,輸入命令yuminstallgcc即可!四、vsftpd的安裝使用CentOS光盤(pán)自帶的yum安裝vsftpd是可以滿足一般需要的,但在使用pam-mysql方式驗(yàn)證用戶時(shí)遇到了許多不好解決的問(wèn)題,后來(lái)還是下載了vsftpd-3.0.2.tar.gz編譯安裝的。1、需要先安裝編譯用的gccyum-yi
6、nstallgccgcc-c++db4-utilspam-devel然后展開(kāi)下載的vsftpd安裝包,修改部分參數(shù)后編譯:tar-zxfvsftpd-3.0.2.tar.gzcdvsftpd-3.0.2#vibuilddefs.h#defineVSF_BUILD_TCPWRAPPERS//允許使用TCPWrappers(默認(rèn)是undef)#defineVSF_BUILD_PAM//允許使用PAM認(rèn)證#defineVSF_BUILD_SSL//允許使用SSL(默認(rèn)是undef)make&&makeinstallmk
7、dir/etc/vsftpd/cpvsftpd.conf/etc/vsftpd/vsftpd.bakgrep-v'^#'/etc/vsftpd/vsftpd.bak>/etc/vsftpd/vsftpd.conf#為了讓vsftpd支持本地用戶登錄,將身份認(rèn)證模塊拷貝至系統(tǒng)目錄中cpRedHat/vsftpd.pam/etc/pam.d/vsftpd2、配置vsftpd獨(dú)立啟動(dòng)#vi/etc/xinetd.d/vsftpd將disable中no改成yes3、服務(wù)啟動(dòng)腳本的制作在standalone模式中,經(jīng)常用上
8、面的命令啟動(dòng)服務(wù)比較麻煩,我們做一個(gè)腳本來(lái)啟動(dòng)和停止服務(wù)。建立一個(gè)新文件/etc/rc.d/init.d/vsftpd,把以下內(nèi)容復(fù)制到文件中:#!/bin/bash##vsftpdThisshellscripttakescareofstartingandstopping#standalonevsftpd.##chkconfig:-6050#description:Vsf