Introduction to vsFTPD

The vsFTPD package contains a very secure and very small FTP daemon. This is useful for serving files over a network.

Package information

vsFTPD dependencies

Installation of vsFTPD

For security reasons, running vsFTPD as an unprivileged user and group is encouraged. Also, a user to map anonymous users to should be created.

install -d -m 0755 /var/ftp/empty &&
install -d -m 0755 /home/ftp &&
groupadd vsftpd &&
useradd -d /dev/null -c "vsFTPD User" -g vsftpd -s /bin/false vsftpd &&
groupadd ftp &&
useradd -c anonymous_user -d /home/ftp -g ftp -s /bin/false ftp

Install vsFTPD by running the following commands:

make &&
install -m 755 vsftpd /usr/sbin/vsftpd &&
install -m 644 vsftpd.8 /usr/share/man/man8 &&
install -m 644 vsftpd.conf.5 /usr/share/man/man5 &&
install -m 644 vsftpd.conf /etc

Command explanations

install -d [...]: This creates the directory that anonymous users will use (/home/ftp) and the directory the daemon will chroot into (/var/ftp/empty).



/home/ftp should not be owned by the user vsftpd, or the user ftp.

echo "#define VSF_BUILD_TCPWRAPPERS" >>builddefs.h: Use this prior to make to add support for tcpwrappers.

echo "#define VSF_BUILD_SSL" >>builddefs.h: Use this prior to make to add support for SSL.

install -m [...]: The Makefile hardwires /usr/local (if it exists). These commands install the files in /usr.

Configuring vsFTPD

vsftpd init.d script

Install the /etc/rc.d/init.d/vsftpd init script included in the blfs-bootscripts-6.0 package.

make install-vsftpd

Config files


Configuration information

vsFTPD comes with a basic anonymous-only configuration file that was copied to /etc above. This file should be modified because it is now recommended to run vsftpd in standalone mode as opposed to inetd/xinetd mode. Also, you should specify the privilege separation user created above. Finally, you should specify the chroot directory. man vsftpd.conf will give you all the details.

cat >> /etc/vsftpd.conf << "EOF"


The vsFTPD package contains vsftpd.



vsftpd is the FTP daemon.

Last updated on 2005-02-12 09:53:54 -0700