Ryan Haggerty 5211b0
# This is the ProFTPD configuration file
Ryan Haggerty 5211b0
# $Id: proftpd.conf,v 1.1 2004/02/26 17:54:30 thias Exp $
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
ServerName			"ProFTPD server"
Ryan Haggerty 5211b0
ServerIdent			on "FTP Server ready."
Ryan Haggerty 5211b0
ServerAdmin			root@localhost
Ryan Haggerty 5211b0
#ServerType			standalone
Ryan Haggerty 5211b0
ServerType			inetd
Ryan Haggerty 5211b0
DefaultServer			on
Ryan Haggerty 5211b0
AccessGrantMsg			"User %u logged in."
Ryan Haggerty 5211b0
#DisplayConnect			/etc/ftpissue
Ryan Haggerty 5211b0
#DisplayLogin			/etc/ftpmotd
Ryan Haggerty 5211b0
#DisplayGoAway			/etc/ftpgoaway
Ryan Haggerty 5211b0
DeferWelcome			off
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
# Use this to excude users from the chroot
Ryan Haggerty 5211b0
DefaultRoot			~ !adm
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
# Use pam to authenticate (default) and be authoritative
Ryan Haggerty 5211b0
AuthPAMConfig			proftpd
Ryan Haggerty 5211b0
AuthOrder			mod_auth_pam.c* mod_auth_unix.c
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
# Do not perform ident nor DNS lookups (hangs when the port is filtered)
Ryan Haggerty 5211b0
IdentLookups			off
Ryan Haggerty 5211b0
UseReverseDNS			off
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
# Port 21 is the standard FTP port.
Ryan Haggerty 5211b0
Port				21
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
# Umask 022 is a good standard umask to prevent new dirs and files
Ryan Haggerty 5211b0
# from being group and world writable.
Ryan Haggerty 5211b0
Umask				022
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
# Default to show dot files in directory listings
Ryan Haggerty 5211b0
ListOptions			"-a"
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
# See Configuration.html for these (here are the default values)
Ryan Haggerty 5211b0
#MultilineRFC2228		off
Ryan Haggerty 5211b0
#RootLogin			off
Ryan Haggerty 5211b0
#LoginPasswordPrompt		on
Ryan Haggerty 5211b0
#MaxLoginAttempts		3
Ryan Haggerty 5211b0
#MaxClientsPerHost		none
Ryan Haggerty 5211b0
#AllowForeignAddress		off	# For FXP
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
# Allow to resume not only the downloads but the uploads too
Ryan Haggerty 5211b0
AllowRetrieveRestart		on
Ryan Haggerty 5211b0
AllowStoreRestart		on
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
# To prevent DoS attacks, set the maximum number of child processes
Ryan Haggerty 5211b0
# to 30.  If you need to allow more than 30 concurrent connections
Ryan Haggerty 5211b0
# at once, simply increase this value.  Note that this ONLY works
Ryan Haggerty 5211b0
# in standalone mode, in inetd mode you should use an inetd server
Ryan Haggerty 5211b0
# that allows you to limit maximum number of processes per service
Ryan Haggerty 5211b0
# (such as xinetd)
Ryan Haggerty 5211b0
MaxInstances			20
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
# Set the user and group that the server normally runs at.
Ryan Haggerty 5211b0
User				nobody
Ryan Haggerty 5211b0
Group				nobody
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
# This is where we want to put the pid file
Ryan Haggerty 5211b0
ScoreboardFile			/var/run/proftpd.score
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
# Normally, we want users to do a few things.
Ryan Haggerty 5211b0
<Global>
Ryan Haggerty 5211b0
  AllowOverwrite		yes
Ryan Haggerty 5211b0
  <Limit ALL SITE_CHMOD>
Ryan Haggerty 5211b0
    AllowAll
Ryan Haggerty 5211b0
  </Limit>
Ryan Haggerty 5211b0
</Global>
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
# Define the log formats
Ryan Haggerty 5211b0
LogFormat			default	"%h %l %u %t \"%r\" %s %b"
Ryan Haggerty 5211b0
LogFormat			auth	"%v [%P] %h %t \"%r\" %s"
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
# TLS
Ryan Haggerty 5211b0
# Explained at http://www.castaglia.org/proftpd/modules/mod_tls.html
Ryan Haggerty 5211b0
#TLSEngine			on
Ryan Haggerty 5211b0
#TLSRequired			on
Ryan Haggerty 5211b0
#TLSRSACertificateFile		/usr/share/ssl/certs/proftpd.pem
Ryan Haggerty 5211b0
#TLSRSACertificateKeyFile	/usr/share/ssl/certs/proftpd.pem
Ryan Haggerty 5211b0
#TLSCipherSuite			ALL:!ADH:!DES
Ryan Haggerty 5211b0
#TLSOptions			NoCertRequest
Ryan Haggerty 5211b0
#TLSVerifyClient		off
Ryan Haggerty 5211b0
##TLSRenegotiate		ctrl 3600 data 512000 required off timeout 300
Ryan Haggerty 5211b0
#TLSLog				/var/log/proftpd/tls.log
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
# A basic anonymous configuration, with an upload directory.
Ryan Haggerty 5211b0
<Anonymous ~ftp>
Ryan Haggerty 5211b0
  User				ftp
Ryan Haggerty 5211b0
  Group				ftp
Ryan Haggerty 5211b0
  AccessGrantMsg		"Anonymous login ok, restrictions apply."
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
  # We want clients to be able to login with "anonymous" as well as "ftp"
Ryan Haggerty 5211b0
  UserAlias			anonymous ftp
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
  # Limit the maximum number of anonymous logins
Ryan Haggerty 5211b0
  MaxClients			10 "Sorry, max %m users -- try again later"
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
  # Put the user into /pub right after login
Ryan Haggerty 5211b0
  DefaultChdir			/pub
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
  # We want 'welcome.msg' displayed at login, '.message' displayed in
Ryan Haggerty 5211b0
  # each newly chdired directory and tell users to read README* files. 
Ryan Haggerty 5211b0
  DisplayLogin			/welcome.msg
Ryan Haggerty 5211b0
  DisplayFirstChdir		.message
Ryan Haggerty 5211b0
  DisplayReadme			README*
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
  # Some more cosmetic and not vital stuff
Ryan Haggerty 5211b0
  DirFakeUser			on ftp
Ryan Haggerty 5211b0
  DirFakeGroup			on ftp
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
  # Limit WRITE everywhere in the anonymous chroot
Ryan Haggerty 5211b0
  <Limit WRITE SITE_CHMOD>
Ryan Haggerty 5211b0
    DenyAll
Ryan Haggerty 5211b0
  </Limit>
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
  # An upload directory that allows storing files but not retrieving
Ryan Haggerty 5211b0
  # or creating directories.
Ryan Haggerty 5211b0
  <Directory uploads/*>
Ryan Haggerty 5211b0
    AllowOverwrite		no
Ryan Haggerty 5211b0
    <Limit READ>
Ryan Haggerty 5211b0
      DenyAll
Ryan Haggerty 5211b0
    </Limit>
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
    <Limit STOR>
Ryan Haggerty 5211b0
      AllowAll
Ryan Haggerty 5211b0
    </Limit>
Ryan Haggerty 5211b0
  </Directory>
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
  # Don't write anonymous accesses to the system wtmp file (good idea!)
Ryan Haggerty 5211b0
  WtmpLog			off
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
  # Logging for the anonymous transfers
Ryan Haggerty 5211b0
  ExtendedLog		/var/log/proftpd/access.log WRITE,READ default
Ryan Haggerty 5211b0
  ExtendedLog		/var/log/proftpd/auth.log AUTH auth
Ryan Haggerty 5211b0
Ryan Haggerty 5211b0
</Anonymous>
Ryan Haggerty 5211b0