The ProFTPD package contains a secure and highly configurable FTP daemon. This is useful for serving large file archives over a network.
Download (HTTP): http://ftp.proftpd.org/distrib/source/proftpd-1.2.9.tar.bz2
Download (FTP): ftp://ftp.proftpd.org/distrib/source/proftpd-1.2.9.tar.bz2
Download size: 761 KB
Estimated Disk space required: 6.4 MB
Estimated build time: 0.27 SBU
For security reasons, running ProFTPD as an unprivileged user and group is encouraged.
groupadd proftpd && useradd -c proftpd -d /home/ftp -g proftpd -s /bin/false proftpd
Install ProFTPD by running the following commands:
install_user=proftpd install_group=proftpd \ ./configure --prefix=/usr --sysconfdir=/etc \ --localstatedir=/var/run && make && make install
install_user=proftpd install_group=proftpd: Specify the user and group identity for ProFTPD.
--sysconfdir=/etc: This prevents the configuration files from going to /usr/etc.
--localstatedir=/var/run: This uses /var/run instead of /usr/var for lock files.
Install the /etc/rc.d/init.d/proftpd init script included in the blfs-bootscripts-5.1 package.
This is a simple, download-only sample configuration. See the ProFTPD documentation in /usr/share/doc/proftpd and consult the website at http://www.proftpd.org/ for example configurations.
cat > /etc/proftpd.conf << "EOF" # This is a basic ProFTPD configuration file # It establishes a single server and a single anonymous login. ServerName "ProFTPD Default Installation" ServerType standalone DefaultServer on # Port 21 is the standard FTP port. Port 21 # Umask 022 is a good standard umask to prevent new dirs and files # from being group and world writable. Umask 022 # To prevent DoS attacks, set the maximum number of child processes # to 30. If you need to allow more than 30 concurrent 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 # Set the user and group that the server normally runs at. User proftpd Group proftpd # Normally, we want files to be overwritable. <Directory /*> AllowOverwrite on </Directory> # A basic anonymous configuration, no upload directories. <Anonymous ~proftpd> User proftpd Group proftpd # We want clients to be able to login with "anonymous" as well as "proftpd" UserAlias anonymous proftpd # Limit the maximum number of anonymous logins MaxClients 10 # We want 'welcome.msg' displayed at login, and '.message' displayed # in each newly chdired directory. DisplayLogin welcome.msg DisplayFirstChdir .message # Limit WRITE everywhere in the anonymous chroot <Limit WRITE> DenyAll </Limit> </Anonymous> EOF
The ProFTPD package contains ftpcount, ftpshut, ftptop, ftpwho and proftpd.