天天看點

Linux PureFTPd配置(完整版)AnonymousRatio 1 10 # 匿名使用者上傳/下載下傳比率AnonymousBandwidth 200 # 匿名使用者帶寬限制(KB)

網上關于pureftp的安裝教程很多,但是試了以後發現很多其實都不完善,很容易出錯,自己安裝摸索以後總結如下:

首先安裝之前最好用netstat -ntl來檢視ftp預設的21端口是不是已經被占用了,同時也可以用ps -ef 指令檢視開啟了哪些服務,看一下有沒有類似sftp或者是vsftp的服務,如果開啟,用killall sftp指令把這個服務kill掉

1.下載下傳pureftp,我下載下傳的是pure-ftpd-1.0.30

指令:wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.30.tar.bz2

2.解壓:tar -xvjf pure-ftpd-1.0.30.tar.bz2

進入到解壓後目錄:cd pure-ftpd-1.0.30

3.編譯方式,推薦使用全部安裝:./configure –prefix=/usr/local/pure-ftpd/ –with-language=simplified-chinese –with-everything

4.安裝:make && make check && make install

5.建立相應的安裝目錄:mkdir /usr/local/pure-ftpd/etc

6.把配置檔案和主要執行檔案拷到對應的檔案夾下面:

cp configuration-file/pure-ftpd.conf /usr/local/pure-ftpd/etc/  
cp configuration-file/pure-config.pl /usr/local/pure-ftpd/sbin/  
chmod 755 /usr/local/pure-ftpd/sbin/pure-config.pl
           

7.定制一下系統的環境變量:

cd /usr/local/bin/  
ln -s /usr/local/pure-ftpd/bin/* .  
ln -s /usr/local/pure-ftpd/sbin/* /usr/local/sbin/  
ln -s /usr/local/pure-ftpd/man/man8/* /usr/local/share/man/man8/
           

8.啟動pureftp伺服器:

pure-config.pl /usr/local/pure-ftpd/etc/pure-ftpd.conf

螢幕上一般顯示如下資訊:

Running: /usr/local/pure-ftpd/sbin/pure-ftpd -A -b -B -C20 -d -e -fnone -H -I15 -L2000:8 -M -m4 - p45000:50000 -q1:10 -s -t200 -U133:022 -u100 -r -Oclf:/var/log/pureftpd.log -k99 -Z

此時可以用在指令行視窗下telnet ip位址 21的方式探測一下這個端口是不是通的

9.pureftp一般需要不用預設的root使用者進行操作,一般會另外建立使用者名群組,用虛拟使用者進行登入

建立組:groupadd ftpgroup

建立使用者:useradd -g ftpgroup -d /dev/null -s /etc ftpuser

建立完成以後可以用cat /etc/passwd和cat /etc/group來檢視組和使用者是否已經建立好了

10.添加ftp虛拟使用者

pure-pw useradd test -u ftpuser -d /home/ftpuser/test

如果添加完成以後想要删除可以使用pure-pw userdel test這條指令

想要修改密碼可以使用pure-pw passwd test這條指令

11.檢視使用者資訊

pure-pw show test

12.生成資料庫檔案

pure-pw mkdb

13.一定要注意修改配置檔案,因為很多配置檔案資料庫的預設安裝位置并不是實際位置,這樣就會造成每次登陸的時候都找不到密碼,ftp一直顯示passwd required,是以安裝好以後一定要修改配置檔案,尤其是粉紅色的部位,注意修改

打開配置檔案:vi /usr/local/pure-ftpd/etc/pure-ftpd.conf

ChrootEveryone yes # 啟用chroot

BrokenClientsCompatibility yes # 相容不同用戶端

Daemonize yes # 背景運作

MaxClientsPerIP 20 # 每個ip最大連接配接數

VerboseLog yes # 記錄日志

DisplayDotFiles no # 顯示隐藏檔案

AnonymousOnly no # 隻允許匿名使用者通路

NoAnonymous yes # 不允許匿名使用者連接配接

SyslogFacility none # 不将日志在syslog日志中顯示

DontResolve yes # 不進行用戶端DNS解析

MaxIdleTime 15 # 最大空閑時間

LimitRecursion 2000 8 # 浏覽限制,檔案2000,目錄8層

AnonymousCanCreateDirs no # 匿名使用者可以建立目錄

MaxLoad 4 # 超出負載後禁止下載下傳

PassivePortRange 45000 50000 # 被動模式端口範圍

AnonymousRatio 1 10 # 匿名使用者上傳/下載下傳比率

UserRatio 1 10 # 所有使用者上傳/下載下傳比率

AntiWarez yes # 禁止下載下傳匿名使用者上傳但未經驗證的檔案

AnonymousBandwidth 200 # 匿名使用者帶寬限制(KB)

UserBandwidth 8 # 所有使用者最大帶寬(KB)

Umask 133:022 # 建立檔案/目錄預設掩碼

MinUID 100 # 最大UID限制

AllowUserFXP no # 僅運作使用者進行FXP傳輸

AllowAnonymousFXP no # 對匿名使用者和非匿名使用者允許進行匿名 FXP 傳輸

ProhibitDotFilesWrite no # 不能删除/寫入隐藏檔案

ProhibitDotFilesRead no # 禁止讀取隐藏檔案

AutoRename yes # 有同名檔案時自動重新命名

AnonymousCantUpload yes # 不允許匿名使用者上傳檔案

AltLog clf:/var/log/pureftpd.log # clf格式日志檔案位置

PureDB /usr/local/pure-ftpd/etc/pureftpd.pdb # 使用者資料庫檔案

MaxDiskUsage 99 # 當磁盤使用量打到99%時禁止上傳

CreateHomeDir yes # 如果虛拟使用者的目錄不存在則自動建立

CustomerProof yes # 防止指令誤操作

PureDB /usr/local/pure-ftpd/etc/pureftpd.pdb這個地方一定要記得修改,不然會一直登不上去,修改完成以後可以再次執行

14.重新生成資料庫檔案pure-pw mkdb

15.先把之前的pureftp服務kill掉 killall pure-ftpd

16.然後重新啟動/usr/local/pure-ftpd/sbin/pure-config.pl /usr/local/pure-ftpd/etc/pure-ftpd.conf

17.此時一般已經可以成功登入,但是有可能還是無法上傳到伺服器上去,此時一般是權限問題,

登入到ftp的家目錄下 cd /home/ftpuser/test

修改test檔案夾下的檔案權限 chown ftpuser:ftpgroup wenjian1

再嘗試重新連接配接以後上傳。