How to Install VSFTPD FTP Server on Ubuntu 20.04 LTS

Figuring out how to install VSFTPD FTP server on Ubuntu?

FTP stands for File Transfer Protocol. It was once widely used as a network protocol to transfer files through a client-server mechanism over the internet. The security and speed of transfer it provided back then were one of the best around, thus, it was quite popular. 

Its usage has since become sporadic; however, it is still used by legacy applications or systems with very specific needs. FTP has replaced newer and better file transfer protocols such as HTTPs or SFTP.

Very Secure File Transfer Protocol Daemon is the FTP server provided in Unix-based systems and operating systems, including Linux and its numerous distributions. As the name suggests, it provided users with a much more secure method of file transfer when compared to regular FTP servers. It was also faster and more stable. 

If you are an Ubuntu user interested in knowing how to install vsftpd FTP server on Ubuntu, then you are at the right place, as we will be guiding you through all the integral steps you require to follow to achieve your target. 

So, what’s the hold up? Let’s go!

Installing VSFTPD Server.

The process of installing the server has the following steps.

  1. Open the Command Terminal.
  2. The first step is to update the Ubuntu system repositories. Use the following command. 
$ sudo apt update
  1. After you have updated the repositories, install the VSFTPD package using the following command. 
$ sudo apt install vsftpd
  1. The package should start installing once you press enter and execute the command. You can track the progress of the package being installed.

Configuring the Firewall. 

You need to make a few changes to your firewall configuration so that your system can allow connections and transfer through FTP servers. Follow these steps for this purpose. 

  1. For configuring the firewall, you need to have the “ufw” package pre-installed in your system. If you don’t have the required package, use the following command to install it. 
$ sudo apt install ufw
  1. Once the package is installed, you need to open up traffic for FTP protocols, as only SSH protocols are permitted by default. Use the following command to open up ports 20, 21, and 990 to enable tcp connections. 
$ sudo ufw allow 20,21,990/tcp
Install VSFTPD FTP Server on Ubuntu
  1. In the next step, open up ports from 4000-5000, as this is the range you will be setting in the VSFTPD configuration file. 
$ sudo ufw allow 40000:50000/tcp
Install VSFTPD FTP Server on Ubuntu
  1. After opening up the mentioned ports, check the status of your firewall.
$ sudo ufw status
Install VSFTPD FTP Server on Ubuntu

Making a FTP User.

The next step is to create an admin user of the FTP server so everything related to the protocol can be controlled and secured. Follow these steps to create an FTP user. 

  1. Open the Command Terminal.
  2. Enter the following command to create another FTP server-specific user. 
$sudo useradd -m <username>
Install VSFTPD FTP Server on Ubuntu
  1. You will be prompted to enter a password for the new user. Select a strong password. 

Configuring FTP Access.

The next step is configuring the FTP server settings to establish a remote connection and be on your way to accessing and transferring over the internet. Follow these steps.

  1. Open the Command Terminal. 
  2. Open the VSFTPD configuration file using the following command. 
$ sudo nano /etc/vsftpd.conf
  1. You can choose a text editor other than “nano”. 
  2. The first thing you need to do is check the “anonumous_enable” and the “local_enable” variables are set to “no” and “yes” respectively. As the name suggests, these settings prevent other anonymous logins maintaining the security of the whole system. 
  3. Next, uncomment the “write_enabel” variable by removing the “#” next to it. These settings allow FTP commands to change, add or remove files and directories. 
  4. Add two variables named “user_sub_token” and “local_root”. Give the first variable the value of “$USER” and the second variable the path “/home/$USER/ftp”. By doing this, whenever a new login is attempted by any user, the user will be directed to the system’s home directory, eliminating the confusion of which directory the user is in. 
  5. Next, set the variable “userlist_deny” to “no”. This will configure the server to be accessed by users who are added to an access list selected by you.  

After making all the above-mentioned changes to the configuration file of the VSFTPD server, save the changes and then exit the editor. 

There is an action logging provision with the VSFTPD server. The server’s log is stored in a default location, and you can see it by entering the following command. 

$  sudo more /var/log/vsftpd.log

These were the steps on how to install VSFTPD FTP server on Ubuntu. 

Let’s move away from FTP servers and file transferring and talk about a video conference app called BigBlueButton. The market for these apps has grown larger in the past 2 years, with Covid restricting every person to their home worldwide. As people started working from home, the need for apps like these became paramount. 

A similar situation was seen for schooling as well. Teachers and students had to shift to online classes using a preferred video conference app. BigBlueButton is one of those apps that can be used for creating a virtual classroom. It has multiple features, such as, voice-chat, shared whiteboards, and screen sharing. 

If you want to install BigBlueButton for your system, click on this link. It will lead you to a guide that shows you how to install BigBlueButton and discusses other relevant information.

This was an article on how to install VSFTPD FTP server on Ubuntu. We looked at the steps for installing the server application and then some of the necessary configuration changes you need to make for a secure FTP connection. 

We hope that we were able to help you out and in case of other queries, please let us know in the comments. 

If this guide helped you, please share it😊


Leave a Reply

Your email address will not be published. Required fields are marked *