Skip to content

Instantly share code, notes, and snippets.

@thiagomgo
Last active October 30, 2017 20:37
Show Gist options
  • Save thiagomgo/c32fedfbf63948b671704a573dfe9c1f to your computer and use it in GitHub Desktop.
Save thiagomgo/c32fedfbf63948b671704a573dfe9c1f to your computer and use it in GitHub Desktop.
Configuration for Proftpd on an EC2 Instance (CentOS 6)
# This is the ProFTPD configuration file
# $Id: proftpd.conf,v 1.1 2004/02/26 17:54:30 thias Exp $
ServerName "ProFTPD server"
ServerIdent off
ServerAdmin root@localhost
ServerType standalone
DefaultServer on
AccessGrantMsg "User %u logged in."
DeferWelcome off
ShowSymlinks on
# Use this to excude users from the chroot
DefaultRoot ~ !adm
# Use pam to authenticate (default) and be authoritative
AuthPAMConfig proftpd
AuthOrder mod_auth_file.c mod_auth_unix.c
# Do not perform ident nor DNS lookups (hangs when the port is filtered)
IdentLookups off
UseReverseDNS off
# Port 21 is the standard FTP port.
Port 21
PassivePorts 49152 49352
MasqueradeAddress <ELASTIC IP>
CommandBufferSize 512
# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask 022
# Default to show dot files in directory listings
ListOptions "-a"
# See Configuration.html for these (here are the default values)
MultilineRFC2228 off
RootLogin off
LoginPasswordPrompt on
MaxLoginAttempts 5
MaxClientsPerHost 30
DefaultTransferMode binary
#AllowForeignAddress off # For FXP
# Limit login times and timeouts to drop dead clients.
TimeoutLogin 300
TimeoutIdle 300
TimeoutNoTransfer 300
TimeoutStalled 300
# Allow to resume not only the downloads but the uploads too
AllowRetrieveRestart off
AllowStoreRestart off
# To prevent DoS attacks, set the maximum number of child processes
# to 30. If you need to allow more than 30concurrent connections
# at once, simply increase this value. Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd)
MaxInstances 30
# Max connections
MaxClientsPerUser 30
# Set the user and group that the server normally runs at.
RequireValidShell off
# User nobody
# Group nobody
# Disable sendfile by default since it breaks displaying the download speeds in
# ftptop and ftpwho
UseSendfile on
# This is where we want to put the pid file
ScoreboardFile /var/run/proftpd.score
# Normally, we want users to do a few things.
<Global>
AllowOverwrite yes
<Limit ALL SITE_CHMOD>
AllowAll
</Limit>
</Global>
# Define the log formats
LogFormat default "%h %l %u %t \"%r\" %s %b"
LogFormat auth "%v [%P] %h %t \"%r\" %s"
SystemLog /var/log/proftpd.log
TransferLog /var/log/xferlog
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment