Install FTP Server on Linux Mint 20 - Step by step guide ?

FTP stands for "file transfer protocol", and it allows you to transfer files to a remote computer. The most common FTP server software for Ubuntu is the vsftpd package, which stands for "very secure FTP daemon". It's the default FTP package for Ubuntu, and most other Linux distributions as well.

Here at LinuxAPT, as part of our Server Management Services, we regularly help our Customers to perform related FTP queries.

In this context, we shall look into how to install FTP Server on Linux Mint 20.

Steps to Install FTP Server on Linux Mint 20 Ulyana

1. Perform System Update

Before we start with the installation of FTP Server, it's important to make sure your system is up to date by running the following apt commands in the terminal:

$ sudo apt update

2. Install the FTP server on the system

Run the following commands to install the VSFTP server on the Linux Mint 20:

$ sudo apt install vsftpd

How to configure the FTP server ?

1. Configure the VSFTPD configuration file

Once installed successfully, we go ahead to configure VSFTPD. The configuration file is located at /etc/vsftpd.conf:

$ sudo nano /etc/vsftpd.conf

Add or uncomment the following lines if already added:


Save and close the file when done then restart vsftpd service:

$ sudo systemctl restart vsftpd.service

2. Secure FTP Server with SSL

Run the following command to generate a self-signed SSL certificate:

$ sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem

Then, open the FTP config file and add SSL path:

$ sudo nano /etc/vsftpd.conf

Add the lines:


3. Configure Firewall

To open port 21 (FTP command port), port 20 (FTP data port) and 30000-31000 (Passive ports range), run the following commands:

$ sudo ufw allow 20:21/tcp
$ sudo ufw allow 30000:31000/tcp

Reload the UFW rules by disabling and re-enabling UFW:

$ sudo ufw disable
$ sudo ufw enable

4. Enable and run VSFTPD

Use the following commands to enable and start VSFTPD:

$ sudo systemctl enable vsftpd.service
$ sudo  systemctl start vsftpd.service

Confirm vsftpd.service status:

$ sudo systemctl status vsftpd.service

5. Create FTP User

We will now create a new user that we will use to log into FTP. Here, we will create a new user called linuxapt:

$ sudo useradd -m linuxapt
$ sudo passwd linuxapt1
New password: 
Retype new password: 
passwd: password updated successfully

In order to verify that everything’s working properly, you should store at least one file in linuxapt's home directory.

This file should be visible when we log in to FTP in the next steps:

$ sudo bash -c "echo FTP TESTING > /home/ftpuser/FTP-TEST"

How to test the FTP server on Linux Mint 20 ?

To test the FTP connection, you will need to install an FTP client in the same or a separate system from where you want to access the FTP server. 

Here, we are using FileZilla as an FTP client.

[Need help in configuring FTP Server on your Linux system ? We can help you. ]

This article covers the complete procedure to install and configure the latest version of the FTP Server on the Linux Mint system. In fact, VSFTP (very secure FTP) is a secure FTP protocol which encrypts information transfer between systems.

To Install VSFTPD on Linux Mint 20, Simply Run the following commands to install VSFTP server on Linux Mint 20:

$ sudo apt-get update
$ sudo apt install -y vsftpd

Related Posts