Pure-FTPd 黑白亂玩 oN CentOS/紅帽/Fedora

作者: | 2009-11-16
Logo

Pure-FTPd的FXP設定除了AllowUserFXP選YES之外,Bind、ForcePassiveIP、PassivePortRange都給他指定一下再重啟動就可以了~ :P

Pure-FTPd有一個網頁管理模組User manager for PureFTPd可以很方便的做使用者管理,所以用MySQL認證的方式就不用老是進SSH增加囉~ (H) ProFTPd的網頁管理模組我都裝不起來~ 唉 :-(

Step.1 下載最新的Pure-FTPd( Pure-FTPd最近改版改很大~三天兩頭改1次 (6) 不過我還是覺得比ProFTPD來得簡單,因為ProFTPD的網頁管理模組我都裝不起來,不適合我這個懶人 :-( ),這邊我有自訂的安裝位置和指定MySQL路徑,--with-puredb是Pure-FTPd 基本的帳號管哩,--with-rfc2640是讓Pure-FTPd支援UTF8,語系可改成--with-language=english使用英文訊息或是--with-language=simplified-chinese使用簡體中文訊息。

wget http://download.pureftpd.org/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=/usr/local/mysql --with-puredb --with-rfc2640 --with-everything --with-language=traditional-chinese
make
make install
cd ../
cp pure-ftpd-1.0.29/configuration-file/pure-config.pl /usr/local/pureftpd/sbin/
cp pure-ftpd-1.0.29/contrib/redhat.init /etc/init.d/pureftpd
chmod +x /etc/init.d/pureftpd
chmod 755 /usr/local/pureftpd/
chmod 755 /usr/local/pureftpd/sbin/pure-config.pl
chmod 777 /usr/local/pureftpd/sbin/pure-ftpwho

Step.2 編輯Pure-FTPd設定檔,除了要修改Bind 、ForcePassiveIP、PassivePortRange,不太重要的設定已經註釋起來了 。

vi /usr/local/pureftpd/pure-ftpd.conf

Step.3 下載User manager,這邊要複製User manager到網站資料夾,並設定config.php可寫

wget http://acelnmp.googlecode.com/files/ftp_v2.1.tar.gz
tar zxvf ftp_v2.1.tar.gz
cp -rf ftp /web/www/
chmod 777 /web/www/ftp/config.php

A. 增加繁體中文語系檔案

wget http://machiel.generaal.net/files/pureftpd/languages/2.x/traditional-chinese.php.txt
cp traditional-chinese.php.txt /web/www/ftp/language/traditional-chinese.php

B. 新增一個pureftpd資料庫導入User manager的SQL檔案 (原本檔案附的太老了)

C. 然後打開http://你的域名/ftp/install.php開始設定User manager並新增使用者,這邊要填MySQL帳密,介意安全問題可以另外開一個MySQL帳號,然後設定只開放pureftpd資料庫的權限,記得要修改Administrator的密碼,安裝完之後才能登入User manager。

D. 安裝時第六步User manager輸出的pureftpd-mysql.conf給他存起來

vi /usr/local/pureftpd/pureftpd-mysql.conf

E. 都OK了之後將install.php改名或刪除都可以,然後就可以用http://你的域名/ftp/index.php登入囉~ 想要多重保護的也可以弄個htaccess保護這個資料夾 (H)

mv /web/www/ftp/install.php /web/www/ftp/install.php.bak

Step.4 編輯啟動Script把程式路徑改成自訂的安裝位置

vi /etc/init.d/pureftpd

fullpath=/usr/local/pureftpd/sbin/$prog
pureftpwho=/usr/local/pureftpd/sbin/pure-ftpwho

加到服務~ 收工啦 XD

chkconfig --level 345 pureftpd on
service pureftpd restart

附註 1:登入有問題就要檢查這三個檔案

vi /usr/local/pureftpd/pure-ftpd.conf

Bind的參數有沒有設到真實IP

vi /usr/local/pureftpd/pureftpd-mysql.conf

MYSQLDatabase
MYSQLUser
MYSQLPassword

有沒有開好資料庫,以及新增一個用戶

vi /web/www/ftp/config.php

FTP Address的參數有沒有設到真實IP

DBLogin
DBPassword
DBDatabase

有沒有開好資料庫,以及新增一個用戶

附註 2:User manager安裝步驟圖解

第一步檢查檔案是否可讀寫,相關模組有沒有支援

點我放大

第二步開始安裝囉

點我放大

第三步先用ROOT登入,他一定會建立一個資料庫,安裝完在刪掉就好了

點我放大

第四步記得語系選中文,FTP Address要填真實IP,其他選項填好了先按Save再按Step 5

點我放大

第五步記得修改Administrator的密碼

點我放大

第六步User manager輸出的pureftpd-mysql.conf給他存到 /usr/local/pureftpd/ureftpd-mysql.conf

點我放大

第七步就是安裝完畢,記得將install.php改名或刪除

點我放大

登入管理畫面後先把ftpuser_1砍掉吧~

點我放大

臉書回應

篇回應

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *

(A)  :@  (brb)  (U)  (:cc)  :S  (H)  :-(  :cute  (6)  :-#  :$  :er  8-)  FUCK 
(})  ({)  GY  (L)  :kao  (K)  :cc  :pu  (F)  :(  ^o)  :-*  :O  +o(  |-) 
:)  (*)  :D  *-)  (N)  (Y)  :P  :|  (W)  ;)  XD