./pure-pw useradd 用戶名 -g 用戶組 -u 所屬系統用戶 -d ftp根目錄 -f 密碼文件
./pure-pw useradd yyadmin2 -g ftpgroup -u ftp -d /usr/local/apache2/htdocs/yyadmin/ -f /usr/local/pureftpd/etc/pureftpd.passwd
//執行這個,不用重啓pureftp服務
./pure-pw mkdb /usr/local/pureftpd/etc/pureftpd.pdb
1 下載
http://sourceforge.net/projects/pureftpd/
測試的時候最新版本:pure-ftpd-1.0.29.tar.gz
2 安裝
解包到任意目錄,如/home/ender
tar -xzvf pure-ftpd-1.0.29.tar.gz
cd pure-ftpd-1.0.29/
./configure --prefix=/usr/local/pureftpd --with-puredb
--prefix是安裝的目標目錄
--with-eyerything是安裝所有功能
--with-language=simplified-chinese是採用中文作爲提示語言
注:記得加上
--with-puredb 虛擬用戶必+
make && make install
3.配置
3.1 建立一個ftp用戶的文件夾,這也就是匿名用戶。
mkdir /usr/local/ftpdir
3.2 建立一個ftp用戶與組:
groupadd ftpgroup
useradd -g ftpgroup -d /usr/local/ftpdir -s /etc ftp
3.3 建立第一個虛擬用戶
創建保存用戶信息文件夾
cd /usr/local/pureftpd
mkdir etc
進入安裝執行目錄
cd /usr/local/pureftpd/bin
--./pure-pw useradd 用戶名 -g 用戶組 -u 所屬系統用戶 -d ftp根目錄 -f 密碼文件
./pure-pw useradd ftpuser -g ftpgroup -u ftp -d /usr/local/ftpdir/ -f /usr/local/pureftpd/etc/pureftpd.passwd
建立用戶數據庫(說明:今後每添加或修改用戶數據庫都執行一次mkdb,執行後不需要重起ftp)
--./pure-pw mkdb /usr/local/pureftpd/etc/pureftpd.pdb
./pure-pw mkdb /usr/local/pureftpd/etc/pureftpd.pdb -f /usr/local/pureftpd/etc/pureftpd.passwd
4.啓動
cd /usr/local/pureftpd/sbin
./pure-ftpd -4 -A -c 10 -C 1 -G -H -i -I 1 -k Array5 -K -r -l puredb:/usr/local/pureftpd/etc/pureftp.pdb \
-L 100:2 -O stats:/home/ftp/log/pureftpd.log -p 40000:50000 -R -T 500 -w -X -y 3:10
./pure-ftpd -l puredb:/usr/local/pureftpd/etc/pureftpd.pdb &
說明:
-4 只使用ipv4
-A 除了root用戶外,所有用戶鎖定於根目錄
-c 總的最多連接數
-C 每個ip最多連接數
-G 不允許重命名
-H 取消DNS反查,加快連接速度
-i 不允許匿名用戶上傳
-I 空閒時間,超時後關閉連接,單位爲分鐘
-k 限制硬盤使用量爲總大小的Array5%
-K 允許非匿名用戶上傳文件和斷點續傳(重寫同名文件),但是不允許刪除和重命名文件,如果文件夾爲空,用戶可以刪除。
-r 不允許重寫同名文件,如果上傳了一個同名文件,如xyz,就會被重命名爲xyz.1等等。
-l 很重要的一個參數,說明用戶認證方式,可以有如下認證方式:
-l unix 用 /etc/passwd認證
-l pam 用pam方式認證
-l puredb:/path/to/puredb_database 用PureDB方式認證,即虛擬用戶方式,可參看README
-l ldap:/path/to/ldap_config_file 用LDAP 文件夾認證方式,可參看README
-l mysql:/path/to/mysql_config_file 用MySQL數據庫方式認證,可參看README
-l pgsql:/path/to/postgres_config_file 用Postgres數據庫方式認證,可參看README
-l extauth:/path/to/authd/socket 用external authentication handlers (with pure-authd),可參看README
可以同時用多個認證方式,例如你可以這麼運行
/usr/local/sbin/pure-ftpd -lldap:/etc/pureftpd-ldap.conf \ -lpuredb:/etc/pureftpd.pdb -lunix
認證方式參看README
-L 避免愚蠢的denial-of-service攻擊,或者是cup hogs,第一個參數是瀏覽時顯示的最大文件數,第二個參數是ls -R時最深的文件夾層數。
-O 記錄傳輸過的所有文件到指定的文件,第一個參數是format,可以爲CLF(Apache-like), Stats, W3C 和 xferlog。其中Stats的格式是。其中date是timestamp格式的,可以用/home/ftp/pureftp/bin/pure-statsdecode轉化爲人能看懂的格式。
-p 設置port模式的端口。
-R 禁止用戶使用chmod
-T 設置所有用戶的上傳下載速度,可以爲一個參數,上傳下載最高都爲此參數,單位是KB/S,兩個參數時第一個是最大上傳速度,第二個是最大下載速度,用冒號分隔開來。
-w 對非匿名用戶支持FXP模式
-X 所有用戶不能讀/寫/重命名以.(dot)開頭的文件。
-y 第一個參數是一個非匿名用戶最多能登錄數,第二個參數是匿名用戶最多能登錄數。
5.自動啓動
vi /etc/rc.d/rc.local
添加
cd /usr/local/pureftpd/sbin
./pure-ftpd -4 -A -c 10 -C 1 -G -H -i -I 1 -k Array5 -K -r -l puredb:/home/ftp/pureftp/pureftp.pdb \
-L 100:2 -O stats:/home/ftp/log/pureftpd.log -p 40000:50000 -R -T 500 -w -X -y 3:10
6.文件夾操作
通過chmod和chown改變文件和文件夾的屬性來起到某些功能限制的作用。
cd /usr/local/
chmod 777 ftpdir
pureftp搭建ftp
//添加虛擬用戶
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.