# This is the ProFTPD configuration file
#
# See: http://www.proftpd.org/docs/directives/linked/by-name.html
# (http://www.proftpd.org/docs/howto/Tracing.html)
#TraceLog /var/log/proftpd/trace.log
#Trace DEFAULT:0
ServerName "ProFTP"
ServerIdent on "FTP Server ready."
ServerAdmin root@localhost
DefaultServer on
##########################################################
MultilineRFC2228 on
ShowSymlinks on
RequireValidShell off
TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200
Port 21
PassivePorts 40001 40002
MaxClientsPerHost 5
MaxLoginAttempts 5
MaxClients 50 "Too many connections"
TransferLog /var/log/xferlog
UseEncoding utf8 cp949
TimesGMT off
SetEnv TZ "Asia/Seoul"
AllowOverwrite on
#########################################################
DefaultRoot ~ !root
AuthPAMConfig proftpd
AuthOrder mod_auth_pam.c* mod_auth_unix.c
#PersistentPasswd off
UseReverseDNS off
User nobody
Group nobody
MaxInstances 50
UseSendfile off
LogFormat default "%h %l %u %t \"%r\" %s %b"
LogFormat auth "%v [%P] %h %t \"%r\" %s"
#LoadModule mod_sql.c
#LoadModule mod_sql_passwd.c
#LoadModule mod_sql_mysql.c
#LoadModule mod_sql_postgres.c
#LoadModule mod_quotatab.c
#LoadModule mod_quotatab_file.c
#LoadModule mod_quotatab_sql.c
#LoadModule mod_ldap.c
#LoadModule mod_quotatab_ldap.c
#LoadModule mod_radius.c
#LoadModule mod_quotatab_radius.c
#LoadModule mod_copy.c
#LoadModule mod_deflate.c
#LoadModule mod_exec.c
#LoadModule mod_facl.c
#LoadModule mod_geoip.c
#LoadModule mod_ifversion.c
#LoadModule mod_load.c
#LoadModule mod_ratio.c
#LoadModule mod_rewrite.c
#LoadModule mod_sftp.c
#LoadModule mod_sftp_pam.c
#LoadModule mod_sftp_sql.c
#LoadModule mod_shaper.c
#LoadModule mod_site_misc.c
#LoadModule mod_tls_shmcache.c
#LoadModule mod_tls_memcache.c
#LoadModule mod_wrap.c
#LoadModule mod_wrap2.c
#LoadModule mod_wrap2_file.c
#LoadModule mod_wrap2_sql.c
LoadModule mod_vroot.c
#LoadModule mod_ifsession.c
LoadModule mod_ctrls_admin.c
ModuleControlsACLs insmod,rmmod allow user root
ModuleControlsACLs lsmod allow user *
# Enable basic controls via ftpdctl
ControlsEngine on
ControlsACLs all allow user root
ControlsSocketACL allow user *
ControlsLog /var/log/proftpd/controls.log
# Enable admin controls via ftpdctl
<IfModule mod_ctrls_admin.c>
AdminControlsEngine on
AdminControlsACLs all allow user root
</IfModule>
# Enable mod_vroot by default for better compatibility with PAM
<IfModule mod_vroot.c>
VRootEngine on
</IfModule>
# TLS (http://www.castaglia.org/proftpd/modules/mod_tls.html)
#<IfDefine TLS>
TLSEngine on
TLSRequired off
TLSRSACertificateFile /etc/ssl/private/proftpd.pem
TLSRSACertificateKeyFile /etc/ssl/private/proftpd.pem
TLSProtocol SSLv23
TLSCipherSuite ALL:!ADH:!DES
TLSOptions NoCertRequest
TLSVerifyClient off
TLSRenegotiate ctrl 3600 data 512000 required off timeout 300
# TLSLog /var/log/proftpd/tls.log
<IfModule mod_tls_shmcache.c>
TLSSessionCache shm:/file=/var/run/proftpd/sesscache
</IfModule>
#</IfDefine>
# Dynamic ban lists (http://www.proftpd.org/docs/contrib/mod_ban.html)
<IfDefine DYNAMIC_BAN_LISTS>
LoadModule mod_ban.c
BanEngine on
BanLog /var/log/proftpd/ban.log
BanTable /var/run/proftpd/ban.tab
BanOnEvent MaxLoginAttempts 2/00:10:00 01:00:00
BanMessage "Host %a has been banned"
BanControlsACLs all allow user ftpadm
</IfDefine>
# Set networking-specific "Quality of Service" (QoS) bits on the packets used
<IfDefine QOS>
LoadModule mod_qos.c
QoSOptions dataqos throughput ctrlqos lowdelay
#QoSOptions dataqos CS2 ctrlqos AF41
</IfDefine>
# Global Config - config common to Server Config and all virtual hosts
<Global>
Umask 022
AllowOverwrite yes
<Limit ALL SITE_CHMOD>
AllowAll
</Limit>
</Global>
# A basic anonymous configuration, with an upload directory
#<IfDefine ANONYMOUS_FTP>
# <Anonymous ~ftp>
# User ftp
# Group ftp
# AccessGrantMsg "Anonymous login ok, restrictions apply."
# UserAlias anonymous ftp
# MaxClients 10 "Sorry, max %m users -- try again later"
# #DefaultChdir /pub
# DisplayLogin /welcome.msg
# DisplayChdir .message
# DisplayReadme README*
# DirFakeUser on ftp
# DirFakeGroup on ftp
# <Limit WRITE SITE_CHMOD>
# DenyAll
# </Limit>
# <IfModule mod_vroot.c>
# <Directory /uploads/*>
# AllowOverwrite no
# <Limit READ>
# DenyAll
# </Limit>
# <Limit STOR>
# AllowAll
# </Limit>
# </Directory>
# </IfModule>
# <IfModule !mod_vroot.c>
# <Directory uploads/*>
# AllowOverwrite no
# <Limit READ>
# DenyAll
# </Limit>
# <Limit STOR>
# AllowAll
# </Limit>
# </Directory>
# </IfModule>
# WtmpLog off
# ExtendedLog /var/log/proftpd/access.log WRITE,READ default
# ExtendedLog /var/log/proftpd/auth.log AUTH auth
# </Anonymous>
#</IfDefine>