##包含子配置文件
include /usr/local/etc/conf.d/mod_ban.conf
include /usr/local/etc/conf.d/mod_quota.conf
include /usr/local/etc/conf.d/mod_tls.conf
配置mod_ban子配置文件
————————–mod_ban.conf內(nèi)容———————————
##最大登錄嘗試次數(shù)
MaxLoginAttempts3
##如果編譯ban模塊
<IfModule mod_ban.c>
##設(shè)置阻止日志路徑
BanLog/usr/local/var/proftpd/log/ban.log
##設(shè)置ban阻止表路徑
BanTable/usr/local/etc/conf.d/ban.tab
##阻止事件:1分鐘內(nèi)請(qǐng)求連接 超過(guò)5次,拒絕連接,4小時(shí)后解鎖
BanOnEventClientConnectRate5/00:01:0004:00:00"Stopconnecting frequently"
##阻止事件:10分鐘內(nèi)嘗試登錄 超過(guò)5次,拒絕連接,1小時(shí)后解鎖
#允許管理員手動(dòng)添加和解除黑名單
BanControlsACLs all allowuser root
#設(shè)置白名單
<Class whitelist>
##這里就不說(shuō)了,呵呵~
From10.1.50.50
</Class>
#
##如果包含在白名單,這里用到的是mod_ifsession模塊
<IfClass whitelist>
##關(guān)閉ban引擎
BanEngine off
</IfClass>
##不果不在白名單
<IfClass!whitelist>
##開(kāi)啟ban引擎
BanEngine on
</IfClass>
</IfModule>
配置mod_quota子配置文件
———————-mod_quota.conf內(nèi)容——————————-
##如果編譯qutatab模塊執(zhí)行模塊里的配置
<IfModulemod_quotatab.c>
##開(kāi)啟quota引擎
QuotaEngine on
##顯示大小單位MB
QuotaDisplayUnitsMb quota
##登錄時(shí)掃描
QuotaOptionsScanOnLogin
##顯示quota命令可用性信息
QuotaShowQuotas on
##指定quota表路徑,前者是限制的大小,后者是已經(jīng)使用的大小
QuotaLimitTable file:/usr/local/etc/conf.d/ftpquota.limittab
QuotaTallyTable file:/usr/local/etc/conf.d/ftpquota.limittab
##指定quota日志路徑
QuotaLog/usr/local/var/proftpd/log/ftpquota.log quota
</IfModule>
配置mod_tls子配置文件
————————mod_tls.conf內(nèi)容———————————
##如何編譯了tls模塊
<IfModule mod_tls.c>
##開(kāi)啟TLS引擎
TLSEngine on
##設(shè)置TLS日志路徑
TLSLog/usr/local/var/proftpd/log/tls.log
##設(shè)置同時(shí)支持SSL版本3和TLS版本1
TLSProtocolSSLv3TLSv1
##連接到服務(wù)器時(shí),是否強(qiáng)制用戶(hù)使用FTPS? 否。
TLSRequired off
##設(shè)置認(rèn)證簽名文件,包含RSA算法公鑰
TLSRSACertificateFile/usr/local/etc/conf.d/proftpd-cert.pem
##設(shè)置RSA密鑰
TLSRSACertificateKeyFile/usr/local/etc/conf.d/proftpd-key.pem
##指定CA簽名
TLSCACertificateFile/usr/local/etc/conf.d/cacert.pem
#檢測(cè)用戶(hù)是否優(yōu)先使用FTPS
TLSVerifyClient off
#強(qiáng)制TLS協(xié)商與否
TLSRenegotiate none
</IfModule>
使用Proftpd
虛擬域
proftpd支持基于IP地址的虛擬域,基于同一IP不同端口的虛擬域。但是,很遺憾不向apache那樣支持同地址同端口不同域名的基于互聯(lián)網(wǎng)域名的虛擬域。
詳細(xì)配置方法參見(jiàn):
http://www.proftpd.org/docs/howto/Vhost.html
http://www.proftpd.org/docs/configs/virtual_authuserfile.conf
http://www.proftpd.org/docs/configs/virtual.conf
官方文檔描述的很清楚,除了是不是方塊字。
添加虛擬用戶(hù)
編譯Proftpd時(shí),會(huì)生成ftppasswd程序,用來(lái)添加虛擬用戶(hù)和組。
ftpasswd –passwd –name=admin
–uid=nobody –gid=nobody
–home=/ftp_pool/pub/
–shell=/bin/false
–file=/usr/local/etc/conf.d/ftpd.passwd
//添加虛擬組
ftpasswd –group–name=xiyang –gid=1001
–file=/usr/local/etc/conf.d/ftpd.group
第一次是啟動(dòng)Proftpd之前需要初始化quota表,方法如下:
cd /usr/local/etc/conf.d/
ftpquota –create-table -type limit
ftpquota –create-table -type tally
用戶(hù)和組策略
虛擬用戶(hù)的ID可以相同。虛擬組的作用,為邏輯控制,而非權(quán)限控制。根據(jù)虛擬域的不同來(lái)分配uid和gid,域中用戶(hù)使用域的uid和gid,虛擬用戶(hù)被DefaultRoot ~ 鎖定在其home目錄下。