現(xiàn)在有很多人購買VPS都是自用,上面只有自己的網(wǎng)站,大部分人可能都沒有安裝FTP服務(wù)器程序,都是用SFTP傳輸文件,甚至直接使用root帳戶傳輸,這樣就帶來了一些麻煩和安全問題,雖然在之后可以用chown、chgrp命令來改變文件屬性,但是總歸是要登錄服務(wù)器進行這些操作,浪費時間和精力,而且個人感覺SFTP的速度沒有FTP快,所以,架設(shè)一個FTP服務(wù)器還是很有必要的。推薦使用pure-ftpd,它可以使用mysql數(shù)據(jù)庫來管理帳戶,有web管理界面,簡單方便。?
廢話少說,接下來就介紹如何安裝pure-ftpd。
一、安裝環(huán)境
本文主要是介紹在CentOS下的安裝,其他系統(tǒng)也可以參考。除了httpd、php、mysql-server、php-mysql、mysql-devel等基本上必裝的組件,還需要用到的組件有:gcc和pam-devel。
如果缺少這些組件,可以用yum命令安裝。
二、安裝pure-ftpd
切換到用戶目錄,下載所需文件:
cd ~
下載pure-ftpd源文件:
wget http://download./pub/pure-ftpd/releases/pure-ftpd-1.0.29.tar.gz
解壓縮:
tar zxvf pure-ftpd-1.0.29.tar.gz
運行下列命令安裝:
cd pure-ftpd-1.0.29
./configure --prefix=/usr/local/pureftpd --with-mysql --with-puredb --with-shadow --with-pam --with-paranoidmsg --with-welcomemsg --with-uploadscript --with-cookie --with-virtualchroot --with-virtualhosts --with-diraliases --with-quotas --with-sysquotas --with-ratios --with-ftpwho --with-throttling
make
make install
安裝完畢,處理相關(guān)配置文件:
cp pureftpd-mysql.conf /etc/
cp configuration-file/pure-ftpd.conf /etc/
cp configuration-file/pure-config.pl /usr/local/pureftpd/sbin/
chmod u+x /usr/local/pureftpd/sbin/pure-config.pl
編輯redhat.init文件:
vim contrib/redhat.init
修改下面兩行的內(nèi)容:
fullpath=/usr/local/pureftpd/sbin/$prog
pureftpwho=/usr/local/pureftpd/sbin/pure-ftpwho
將pure-ftpd加到系統(tǒng)服務(wù):
cp contrib/redhat.init /etc/init.d/pure-ftpd
chmod +x /etc/init.d/pure-ftpd
chkconfig --add pure-ftpd
修改pure-ftpd配置文件:
vim /etc/pure-ftpd.conf
修改下面一行的內(nèi)容:
MySQLConfigFile /etc/pureftpd-mysql.conf
如果啟用了iptables,還必須修改下面這一行:
PassivePortRange 30000 50000
保存退出。
如果啟用了iptables,還需要開啟相關(guān)端口,否則將無法連接FTP服務(wù)器,運行下面的命令:
iptables -I INPUT -p tcp --dport 21 -j ACCEPT
iptables -I INPUT -p tcp --dport 30000:50000 -j ACCEPT
/etc/rc.d/init.d/iptables save
至此,pure-ftpd安裝完畢。
三、安裝FTP管理程序
安裝之前,我們先建立專門用于登錄FTP的用戶組和用戶:
groupadd ftpgroup
useradd ftpuser -g ftpgroup -s /sbin/nologin
再將網(wǎng)站文件目錄所屬的用戶和用戶組改為剛創(chuàng)建的用戶和用戶組:
chown -R ftpuser /var/www/html/
chgrp -R ftpgroup /var/www/html/
如果你的網(wǎng)站文件不是放在/var/www/html/中,請修改對應(yīng)的值。
回到用戶目錄,下載ftp管理程序:
cd ~
wget http://machiel./files/pureftpd/ftp_v2.1.tar.gz
解壓縮:
tar zxvf ftp_v2.1.tar.gz
將解壓縮出來的文件目錄轉(zhuǎn)移到web目錄下,這里是直接轉(zhuǎn)移到服務(wù)器根目錄下:
cp -a ftp /var/www/html/
接下來,就可以在瀏覽器中安裝了。打開http://之前轉(zhuǎn)移所在目錄使用的域名或IP/ftp/install.php,會出現(xiàn)下圖(以下圖片均可點擊放大):
如果全部為”O(jiān)K”,則點擊“Step2”按鈕繼續(xù):
點擊“New installation”,進入下一步:
輸入mysql數(shù)據(jù)庫的主機名、root帳戶的密碼后,點擊“Connect”,如果可以連接服務(wù)器,則如下圖所示:
點擊“Continue”進入下一步:
如圖所示,安裝程序會自動建立一個名為ftpusers的數(shù)據(jù)庫,同時還創(chuàng)建了一個用戶名為ftp,密碼為tmppasswd的mysql帳戶,如果需要修改mysql中ftp帳戶的密碼,在修改后,將新密碼填入“Password”字段,再點擊“Refresh”按鈕,如果全部是“OK”字樣,則點擊“Step4”進入下一步:
在這里修改FTP管理程序的配置文件,可以將“FTP Addrss”中的myipaddress.com換成服務(wù)器的域名或者IP地址;將“Default user ID”改成之前創(chuàng)建的ftpuser的數(shù)字ID;將“Default group ID”改成之前創(chuàng)建的ftpgroup的數(shù)字ID。修改完畢后,記得點擊“save”按鈕更新配置文件。點擊“Step5”進入下一步:
在這里設(shè)置FTP管理員賬號密碼,這里的賬號密碼是用于管理FTP賬號,不是用來登錄FTP,輸入密碼后點擊“Change”按鈕,然后點擊“Step6”進入下一步:
按照上圖的說明修改pure-ftpd的相關(guān)配置文件,如果按照之前的pure-ftp安裝說明安裝,pureftpd-mysql.conf是保存在/etc/pureftpd-mysql.conf中,而不是上圖說明中的usr/local/etc/pureftpd-mysql.conf,而且這里的值在之前已經(jīng)修改過了,因此,步驟A可以跳過。然后,編輯/etc/pureftpd-mysql.conf,修改上圖紅色文字部分的值,修改完畢后,保存退出,再點擊“Step7”按鈕:
當出現(xiàn)這個畫面的時候,說明FTP管理程序成功安裝,記得把install.php改名或者刪除。
最后,重啟ftp服務(wù)使相應(yīng)配置生效:
/etc/init.d/pure-ftpd restart
四、管理FTP賬號
輸入之前FTP管理程序網(wǎng)址:http://之前轉(zhuǎn)移所在目錄使用的域名或IP/ftp/,出現(xiàn)登錄界面:
輸入對應(yīng)的密碼點擊“Login”登錄:
這就是FTP用戶管理頁面了,在上方會列出已經(jīng)創(chuàng)建的FTP用戶,其中, “Configuration”一欄中的四個圖標從左到右的功能依次是:修改用戶/刪除用戶/鎖定用戶(鎖定后改用戶無法登錄FTP)/使用該用戶連接FTP。
點擊“New user”創(chuàng)建新用戶,點擊“Homedir”右側(cè)的按鈕會出現(xiàn)目錄選擇下拉列表,點擊相應(yīng)目錄名可以進入相應(yīng)目錄并設(shè)置該用戶的主目錄為該目錄,如圖所示:
創(chuàng)建FTP用戶的操作很簡單,就不多說了。這里還有一個小問題,每次創(chuàng)建用戶的時候,可能都需要修改Homedir(主目錄)、UL Bandwidth(上傳帶寬限制)和DL Bandwidth(下載帶寬限制),比較麻煩,可以用下面的辦法可以修改它們的默認值:
編輯ftp目錄下的index.php文件,修改這幾個地方:
$dir = "/var/www/html/";
$ulbandwidth = "";
$dlbandwidth = "";
這樣,每次創(chuàng)建新用戶的時候,默認就在/var/www/html/下,可以節(jié)省很多點擊次數(shù),另外,默認取消了上傳和下載帶寬的限制。(完)