Vsftpd (Very Secure File Transfer Protocol Daemon) is an FTP server software for Linux, Unix. It is basically a default FTP server of Ubuntu, Fedora, NimbleX, and so on. The FTP server software makes transferring files from client to server and vice versa easy.
Here at Ibmi Media, as part of our Server Management Services, we regularly help our Customers to perform related FTP files transfer queries on Linux systems.
In this context, we shall look into how to install Vsftpd with SSL / TLS on Ubuntu 20.04.
To perform this installation procedure, follow the step outlined below.
1. Run the apt command to update available packages:
$ sudo apt update
2. Install Vsftpd by running the below command:
$ sudo apt install vsftpd
3. After Installation, You can check the installed version:
$ vsftpd -v
4. Finally, in order to verify the status of the Vsftpd service, run the command:
$ sudo systemctl status vsftpd
You can follow the below steps to configure Vsftpd after Installation.
1. For FTP access, simply modify the vsftpd.conf file as shown below:
$ sudo nano /etc/vsftpd.conf
The content of the file should look like this:
# Allow anonymous FTP? (Disabled by default).
anonymous_enable=NO
#
# Uncomment this to allow local users to log in.
local_enable=YES
2. Add user login you allowed. You can do this by Opening the vsftpd configuration file and add:
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO
After saving this file, Exit and save it.
Then, you add the users you allow by typing the usernames to the /etc/vsftpd.userlist file:
$ sudo nano /etc/vsftpd.userlist
Again, Exit and save it.
For this to take effect, let's restart vsftpd:
$ sudo systemctl restart vsftpd
3. Enable Upload by examining the vsftpd.conf file as seen below:
$ sudo nano /etc/vsftpd.conf
It should now look like this:
# Uncomment this to enable any form of FTP write command.
write_enable=YES
The idea is to delete the "#" syntax before the command and save it.
4. Login to the Vsftpd Server. For example, We will create a user named "linuxapt":
$ sudo useradd -m linuxapt
Then, you need to create a password:
$ sudo passwd linuxapt
5. Enable SSL/TLS for secure file transfer
To enable secure file transfer via TLS, proceed as follows.
Firstly, open the vsftpd configuration file with the command below.
$ sudo nano /etc/vsftpd.conf
Next, look for the rsa_cert_file and rsa_private_key_file options and update the values as shown below.
rsa_cert_file=/etc/ssl/certs/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.key
Also, look for ssl_enable and change the value to YES:
ssl_enable=YES
Finally, Save and close the vsftpd configuration file.
You can check the ftp connection by running the below command:
$ ftp localhost
To complete this process, you must provide the username and password which you have previously created.
This article covers a complete guide on how to install Vsftpd with SSL/TLS on Ubuntu 20.04. In fact, sftpd (i.e. very secure FTP daemon) is an FTP server software for Linux and other Unix-like systems. An FTP server software facilitates the transfer of files from a client computer to the server and vice versa.