Vsftpd is secure, lightweight and very stable FTP server with advanced of feature. It is licensed under the GNU General Public License. It supports IPV6 and SSL.

FTP server allows you to transfer files between Raspberry Pi with your devices on the local network or even across the Internet

Install Vsftpd

In order for Raspberry Pi to act as FTP server, you need to install packages on the Raspberry Pi. You’re going to need the following packages

  • Vsftpd
    lightweight, efficient FTP server written for security

To install the Vsftpd packages run following command:

If there is no error in the installation you can continue to the next step

Configure Vsftpd

To configure the vsftpd edit the vstpd.conf configuration file, you can use an editor such as nano. To open the file, run following command:

Vsftpd Configuration

Vsftpd configuration version 2.3.5-1

Default Vsftpd Configuration

Summarized configuration, some configuration is not shown

Run Vsftpd as standalone mode

Listen on IPv6 instead of IPv4

Disable the anonymous ftp login

Enable local users to login

Enable FTP users to write changes to files

Customize FTP login banner’s message

To change default home directory

After you finished make sure you’re save the files

Restart Vsftpd

To complete the steps you need to restart the Vsftpd’s service

Testing

To test if Vsftpd working properly on the client

– In Windows

  1. Download FTP Client (e.g. FileZilla, FireFTP, or WinSCP)
  2. At server, name, and password section fill with FTP Server’s credentials
  3. Click connect

 – In Linux

  1. Download FTP Client (e.g. FileZilla, FireFTP, or Konqueror)
  2. At server, name, and password section fill with FTP Server’s credentials
  3. Click connect

– In Android

  1. Download FTP Client (e.g. AndFTP, FTPCafe, or Turbo FTP)
  2. Tap add (+) then fill the hostname, username, and password with FTP Server’s credentials
  3. Tap save and connect

Troubleshooting

– If the client can’t connect to your FTP Server

  • Make sure the Raspberry Pi host is reachable from the client
  • Read the log from Vsftpd for troubleshooting’s purpose
  • Re-try to restart the vsftpd service and login with local user’s credentials

References

  1. vsftpd – Secure, fast FTP server
  2. vsftpd package – Debian’s Wiki
  3. Image – Source: Pearltrees