Working on more powerful machines and then send the files to our Raspberry is sometimes useful. FTP is a required service on our platform. I may suggest Filezilla as it is my software of choice for FTP connections, but even before that we need to set up our Pi.

sudo apt-get install -y proftpd-basic

Once installed there are a few things to take care of.

sudo nano /etc/proftpd/proftpd.conf

Inside this file we need to locate UseIPv6 and change the value from ‘on’ to ‘off’. ServerName can be changed to Botler1. Save the file after those changes.

sudo nano /etc/proftpd/conf.d/proftpd-custom.conf

This is a blank file, and we have to populate it like this:

# Valid shell not required for user
    RequireValidShell off

# Directory is ftpuser root
DefaultRoot ~ ftpuser

# Limit login to ftpuser
<Limit LOGIN>
    DenyGroup !ftpuser

Almost there. We have the service but no-one has the right to log in. Let’s take care of that.

sudo adduser ftpuser --shell /bin/false --home /var/www

You will be asked some user informations, I usually fill in only the name and password, but feel free to add other informations.

sudo service proftpd restart

Our FTP door is open and accepts ftpuser. To try, use an FTP client (like Filezilla) and fill the required informations (Pi IP adress, username and password). The result should be like this:

Torna in alto