2011年12月1日 星期四

Ubuntu 11.10 Pure-ftpd 設定

先來安裝一下 pure-ftpd:

lancer@lancer-desktop:~$ sudo apt-get install pureadmin

新增一個 FTP 位置
大部份的網站是將 FTP 的位置放在「/FTP」或「/home」底下(以在 /home 下架設為例),
所以多數會在 /home 下新增一個名為「FTP」或「FTPd」的資料夾(資料夾命名不一定是 FTP),
因為我懶得把位置換東換西,
所以是將 FTP 資料夾放在自家目錄下(使用者以 lancer 為例),
直接在家目錄中新增名為 FTP 的資料夾(/home/lancer/FTP)。
可看到在家目錄中新增的 FTP 資料夾



新增虛擬使用者帳戶
畢竟不想讓自己的站台讓人隨意進出,
所以設些虛擬帳戶來限制一下以便看管,
下面以設置使用者「owl」資料夾作為該使用者家目錄為例。
建立名為「owl」的資料夾給此使用者使用

基本上這就有一個空間給使用者用了。


建立「ftpuser」群組
可以自己定義群組名稱,我是用「ftpuser」來作為管理。

lancer@lancer-desktop:~$ sudo addgroup ftpuser

為系統增加一個使用帳戶,但此帳號不作為登入系統之用:

lancer@lancer-desktop:~$ sudo adduser --system --home /home/lancer/FTP/owl --shell /dev/null --disabled-password --disabled-login owl

為 Pure-ftp 中新增一個虛擬用戶:

lancer@lancer-desktop:~$ sudo pure-pw useradd owl -u owl -g ftpuser -d /home/lancer/FTP/owl

*如果不先新增系統用戶而直接執行「pure-pw useradd」這段指令的話會出現錯誤訊息,
所以我們要的是 uid 而已,不然怎麼做都失敗,
以下是我得到的錯誤訊息:
You must give (non-root) uid and gid

預設會新增在 /etc/pure-ftpd/pureftpd.passwd 中,
或使用 pure-pw -f your.passwd.file 指定

lancer@lancer-desktop:~$ sudo pure-pw mkdb /etc/pure-ftpd/pureftpd.pdb -f /etc/pure-ftpd/pureftpd.passwd

使用 PureDB 驗證方式,
若沒做出以下步驟的話,
虛擬用戶會無法登入,
其指令如下:

lancer@lancer-desktop:~$ sudo ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/45puredb

不做上述的步驟,
小心連線到 FTP 站台後登入會出現以下訊息:

lancer@lancer-desktop:~$ ftp 192.168.0.100
Name (192.168.0.100:owl): owl
331 User owl OK. Password required
Password:

530 Login authentication failedLogin failed.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>

lancer@lancer-desktop:~$ 

執行過後再登入的訊息:

lancer@lancer-desktop:~$ ftp 192.168.0.100
Name (192.168.0.100:owl): owl
331 User owl OK. Password required
Password:

230-User lancer has group access to:  ftpuser   230 OK. Current directory is /
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>


修改虛擬用戶
由於使用者常常忘記個人的帳戶密碼(包括我在內),
這時候就得修改一下虛擬用戶的登入密碼以進行登入。

lancer@lancer-desktop:~$ sudo pure-pw passwd owl


虛擬用戶家目錄

lancer@lancer-desktop:~$ sudo pure-pw usermod owl -D /home/lancer/下載/


凡是修改完帳號的相關資料後,
一定要執行 pure-ftp 的更新指令才會有更動作業。

lancer@lancer-desktop:~$ sudo pure-pw mkdb





沒有留言:

張貼留言