Pureftpd操做指南

前言

Pure-ftpd提供了一個輕量級、快速、多語言、具有基本功能特性的FTPServer配置方案。本文展現瞭如何在CentOS7.x上安裝和配置Pure-ftpd,並在此過程當中闡述PUre-Ftpd的設計特性。mysql

安裝

首先須要開啓epel,纔有pure-ftpd的源,一條命令安裝好:sql

yum  -y install epel-release && yum -y install pure-ftpd
複製代碼

配置

不一樣於其餘的多數守護進程(daemon),Pure-FTPd 的配置比較特別:它不讀取任何的配置文件,配置選項都是經過命令行參數來實現的。例如:參數 '-H' 被設計爲經過避免 DNS 查詢來加快服務器的速度。要啓用該特性,咱們只須要將其加到命令行中: pure-ftpd -H 。備選的長參數也被支持的,下面是一個等價的命令 pure-ftpd --dontresolve數據庫

針對喜歡配置文件的用戶,Pure-FTPd 官方給出了一種方案:經過一個封裝(wrapper)工具,將配置文件解析並將其轉換成命令行參數。首先根據本身的須要編輯配置文件 pure-ftpd.conf,然後經過下面的命令啓動 pure-config.pl /etc/pure-ftpd.conf。pure-config.pl 是一個 perl 腳本,它根據配置文件採用合適的命令行選項來調用 pure-ftpd服務器

以上段落是抄的。原文已經掛了………………app

因此咱們須要先配置一下pure-ftpd.conf 來預約義一下命令行參數,我的推薦如下配置:工具

ChrootEveryone              yes           //鎖定全部用戶到家目錄中
# TrustedGID                100         //信任組ID100,能夠不鎖定
MaxClientsNumber            50           //最大的客戶端數量
MaxClientsPerIP             8        //同一個IP容許8個連接
DisplayDotFiles             no //不顯示隱藏文件
AnonymousOnly               no   //只容許匿名用戶
NoAnonymous                 yes//不容許匿名用戶
DontResolve                 yes    //禁止反向解析
MaxIdleTime                 10    //最大空閒10分鐘
# LDAPConfigFile                /etc/pureftpd-ldap.conf    //LDAP配置文件目錄
# MySQLConfigFile               /etc/pureftpd-mysql.conf//MySQL配置文件目錄
# PGSQLConfigFile               /etc/pureftpd-pgsql.conf //PGSQL配置文件目錄
PureDB                        etc/pure-ftpd/pureftpd.pdb //虛擬用戶數據庫,CentOS下默認位置
# UnixAuthentication            yes //主機認證
LimitRecursion              2000 10       //別表最大顯示2000個文件,最深8個目錄
AnonymousCanCreateDirs      no     //是否容許匿名用戶建立目錄
#MaxLoad                     4   //最多可下載的數量
# PassivePortRange          30000 50000      //主動鏈接的端口範圍
ForcePassiveIP                192.168.0.1   //這個地址老是直到匿名目錄
# AnonymousRatio                1 10         //匿名用戶上傳下載速度比率
# UserRatio                 1 10                  //用戶上傳下載速度比率
# Bind                      127.0.0.1,21     //綁定IP和端口
# AnonymousBandwidth            8             //匿名用戶帶寬8KB
# UserBandwidth             8                     //用戶帶寬8KB
Umask                       133:022         //文件和目錄的umask
MinUID                      1000             //用戶ID至少要大於1000才能登錄
AllowUserFXP                no           //是否容許用戶使用FXP協議登錄
AllowAnonymousFXP           no         //是否容許匿名用戶使用FXP協議
ProhibitDotFilesWrite       no                 //是否容許寫入點文件
ProhibitDotFilesRead        no                //是否容許讀取點文件
AnonymousCantUpload         yes         //不容許匿名用戶上傳
#NoChmod                     yes     //不容許用戶改變權限
#KeepAllFiles                yes           //容許用戶斷點續傳
#Quota                       1000:10//磁盤配額
MaxDiskUsage               80   //磁盤的最大利用率
#NoRename                  yes //不容許自動重命名
IPV4Only                 yes    //只容許使用IPV4協議
ClientCharset            utf-8   //客戶端默認編碼
複製代碼

其實在CentOS下,/etc/pure-ftpd/下存在一個默認的pure-ftpd.conf,每一行都有詳盡的註釋,有時間能夠閱讀一下。編碼

權限與用戶

首先咱們須要新建一個用戶,此用戶做爲pure-ftpd虛擬用戶的依託用戶,此用戶的home directory也將做爲FTP root,固然你新建目錄的時候也能夠不指定home directory,並在創建完畢之後將FTP root chown給此用戶。spa

groupadd ftpgroup        //新建系統組
useradd -g ftpgroup -M -s /sbin/nologin ftpadmin //新建一個FTP用戶,不建立用戶目錄,假定已經存在一個FTP root做爲FTP的根目錄。
chown –R ftpuser:ftpgroup ftproot/ //把FTP目錄的所屬用戶和組改成虛擬用戶所依託的系統用戶和組
pure-pw useradd puser –u ftpuser –d /ftproot –m //命令格式很好懂,pure-pw 命令使用useradd 須要添加的用戶名, -u標明虛擬用戶而且與系統用戶權限關聯,-d指定了系統用戶Home目錄中的子目錄,且被限制在這個子目錄裏面(此處是否被限制與上文的conf文件設定相關)若是須要訪問系統用戶的HOME Directory,則直接使用參數 -D,-m則寫入用戶數據庫,用戶設置即時生效,無需重啓進程。
pure-config.pl etc/pure-ftpd/pure-ftpd.conf &//後臺啓動進程。
複製代碼

此處,咱們新建了一個FTPadmin用戶,此用戶對FTP ROOT擁有全部權限,若是須要一個只讀用戶,須要新建一個在ftpgroup內的用戶,而後再使用pure-pw建立一個依託此用戶的虛擬用戶便可。即pure-pw虛擬用戶對FTP目錄的操做權限與其依託的系統用戶對FTP目錄的權限保持一致。命令行

相關文章
相關標籤/搜索