遇到配额不适用于 SFTP 用户的问题。常规 ftp/tls 用户工作正常。
mod_quotatab_file.c 可以验证 SFTP 用户吗?还是仅限于普通 ftp 用户?
模块
LoadModule mod_sql.c
LoadModule mod_sql_mysql.c
LoadModule mod_quotatab.c
LoadModule mod_quotatab_file.c
LoadModule mod_ctrls_admin.c
LoadModule mod_exec.c
LoadModule mod_sftp.c
SFTP 配置
</VirtualHost>
## SFTP CONFIG
<VirtualHost 0.0.0.0>
Port 2222
MasqueradeAddress X.X.X.X
<IfModule mod_sftp.c>
Port 2222
##SFTP
SFTPEngine on
SFTPLog /var/log/proftpd/sftp.log
TransferLog /var/log/proftpd/sftp-xferlog
SFTPHostKey /etc/ssh/ssh_host_dsa_key
SFTPHostKey /etc/ssh/ssh_host_rsa_key
SFTPOptions IgnoreSFTPUploadPerms
#DenyUser sftpOnlyUser
</IfModule>
</VirtualHost>
配额配置
## QUOTA CONFIG
<IfModule mod_quotatab_file.c>
QuotaEngine on
QuotaLog /var/log/proftpd/quota.log
QuotaOptions ScanOnLogin
QuotaDirectoryTally off
QuotaDisplayUnits Mb
# Unit is in byte
QuotaDefault user false hard 5242880 5242880 0 0 0 0
<IfModule mod_quotatab_file.c>
QuotaLimitTable file:/efs/ftpquota.limittab
QuotaTallyTable file:/efs/ftpquota.tallytab
</IfModule>
</IfModule>
答案1
在全局设置下添加了 QUOTA CONFIG,并且 sftp 开始获取配额。