Current File : //etc/proftpd.conf
ServerName		"Sentora FTP Server"
#ServerType         	inetd
ServerType          	standalone
DeferWelcome		off
ServerAdmin		root@localhost
DisplayLogin            /etc/welcome.msg
#DisplayFirstChdir	readme
DefaultServer		on
Port                  	21
Umask 002 002
TimeoutLogin         	120
TimeoutIdle          	600
TimeoutNoTransfer    	900
TimeoutStalled      	3600
User			nobody
Group			nobody
DefaultRoot		~
MaxLoginAttempts	3
RequireValidShell	no
MaxClients		50
UseReverseDNS        	off
MaxInstances		30
AllowOverwrite		yes
IdentLookups         	off
TransferLog		/var/sentora/logs/proftpd/xferlog.www
ExtendedLog		/var/sentora/logs/proftpd/access.log WRITE,READ write
ExtendedLog		/var/sentora/logs/proftpd/auth.log AUTH auth
#ExtendedLog   		/var/sentora/logs/proftpd/paranoid.log ALL default
TransferLog		/var/sentora/logs/proftpd/xferlog.legacy
LogFormat         	default "%h %l %u %t \"%r\" %s %b"
LogFormat		auth    "%v [%P] %h %t \"%r\" %s"
LogFormat		write   "%h %l %u %t \"%r\" %s %b"

######################################################
# SQL INFORMATION
######################################################
LoadModule mod_sql.c
LoadModule mod_sql_mysql.c
LoadModule mod_quotatab.c
LoadModule mod_quotatab_sql.c
# The passwords in MySQL are encrypted using CRYPT
SQLAuthTypes            Plaintext Crypt
SQLAuthenticate         users groups

# used to connect to the database
# databasename@host database_user user_password
SQLConnectInfo  sentora_proftpd@localhost proftpd HfDywZlEHqEa9xun

# Here we tell ProFTPd the names of the database columns in the "usertable"
# we want it to interact with. Match the names with those in the db
SQLUserInfo     ftpuser userid passwd uid gid homedir shell

# Here we tell ProFTPd the names of the database columns in the "grouptable"
# we want it to interact with. Again the names match with those in the db
SQLGroupInfo    ftpgroup groupname gid members

# Here we tell ProFTPd the names of the database columns in the "grouptable"
# we want it to interact with. Again the names match with those in the db
SQLGroupInfo    ftpgroup groupname gid members

# set min UID and GID - otherwise these are 999 each
SQLMinID        48

# create a user's home directory on demand if it doesn't exist
#SQLHomedirOnDemand on
# CreateHome off

# Update count every time user logs in
SQLLog PASS updatecount
SQLNamedQuery updatecount UPDATE "count=count+1, accessed=now() WHERE userid='%u'" ftpuser

# Update modified everytime user uploads or deletes a file
SQLLog  STOR,DELE modified
SQLNamedQuery modified UPDATE "modified=now() WHERE userid='%u'" ftpuser

# User quotas
# ===========
QuotaEngine on
QuotaDirectoryTally on
QuotaDisplayUnits Mb
QuotaShowQuotas on

SQLNamedQuery get-quota-limit SELECT "name, quota_type, per_session, limit_type, bytes_in_avail, bytes_out_avail, bytes_xfer_avail, files_in_avail, files_out_avail, files_xfer_avail FROM ftpquotalimits WHERE name = '%{0}' AND quota_type = '%{1}'"

SQLNamedQuery get-quota-tally SELECT "name, quota_type, bytes_in_used, bytes_out_used, bytes_xfer_used, files_in_used, files_out_used, files_xfer_used FROM ftpquotatallies WHERE name = '%{0}' AND quota_type = '%{1}'"

SQLNamedQuery update-quota-tally UPDATE "bytes_in_used = bytes_in_used + %{0}, bytes_out_used = bytes_out_used + %{1}, bytes_xfer_used = bytes_xfer_used + %{2}, files_in_used = files_in_used + %{3}, files_out_used = files_out_used + %{4}, files_xfer_used = files_xfer_used + %{5} WHERE name = '%{6}' AND quota_type = '%{7}'" ftpquotatallies

SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, %{3}, %{4}, %{5}, %{6}, %{7}" ftpquotatallies

QuotaLimitTable sql:/get-quota-limit
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally

RootLogin off
RequireValidShell off
<Global>
PassivePorts 30000 65000
</Global>
<IfModule mod_tls.c>
TLSEngine                               on
TLSLog                                  /var/log/proftpd/tls.log
TLSProtocol                             SSLv23
TLSRSACertificateFile                   /etc/pki/tls/certs/proftpd.pem
TLSRSACertificateKeyFile                /etc/pki/tls/certs/proftpd.pem
TLSOptions                              NoCertRequest EnableDiags NoSessionReuseRequired
TLSVerifyClient                         off
TLSRequired                             off
TLSRenegotiate                          required on
TLSCipherSuite                          ALL:!ADH:!DES
</IfModule>
AllowStoreRestart On
AllowRetrieveRestart On
MasqueradeAddress 103.145.51.236