LinuxTutorialsUbuntu

How To Install Vsftpd on Ubuntu 18.04 LTS

Install Vsftpd on Ubuntu 18.04 LTS

In this tutorial, we will show you how to install vsftpd on your Ubuntu 18.04 LTS. For those of you who didn’t know, 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.

This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you through the step by step installation FTP server on a Ubuntu 18.04 (Bionic Beaver) server.

Prerequisites

  • A server running one of the following operating systems: Ubuntu 18.04, and any other Debian-based distribution like Linux Mint or elementary OS.
  • It’s recommended that you use a fresh OS install to prevent any potential issues.
  • SSH access to the server (or just open Terminal if you’re on a desktop).
  • A non-root sudo user or access to the root user. We recommend acting as a non-root sudo user, however, as you can harm your system if you’re not careful when acting as the root.

Install Vsftpd on Ubuntu 18.04 LTS Bionic Beaver

Step 1. First, make sure that all your system packages are up-to-date by running these following apt-get commands in the terminal.

sudo apt-get update
sudo apt-get upgrade

Step 2. Installing VSFTPD on Ubuntu 18.04 LTS.

To install VSFTPD, run the following command from your Terminal:

sudo apt install vsftpd

Step 3. Configure VSFTPD.

After it is successfully installed, Let us go ahead and configure it:

### nano /etc/vsftpd.conf

Controls whether anonymous logins are permitted or not.
anonymous_enable=NO

# Allow local users to login
local_enable=YES

# Set 'write_enable' to YES in order to allow changes to the filesystem
write_enable=YES

# to enable ASCII uploads (to prevent uploaded scripts etc. from breaking),
# without the DoS risk of SIZE and ASCII downloads. ASCII mangling should be
# on the client anyway..
ascii_upload_enable=YES
ascii_download_enable=YES

# You can set the root directory of the FTP users. if not specified, users' home directory equals FTP home directory
local_root=public_html

Save and close the file. Restart vsftpd service to take effect the changes:

sudo systemctl restart vsftpd
sudo systemctl enable vsftpd

Check if vsftpd service is running or not using the command:

sudo systemctl status vsftpd

Sample output:

 vsftpd.service - vsftpd FTP server
 Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vend
 Active: active (running) since Thu 2018-07-16 17:28:31 IST; 31s a
 Process: 2040 ExecStartPre=/bin/mkdir -p /var/run/vsftpd/empty (co
 Main PID: 2043 (vsftpd)
 Tasks: 1
 Memory: 492.0K
 CPU: 46ms
 CGroup: /system.slice/vsftpd.service
 └─2043 /usr/sbin/vsftpd /etc/vsftpd.conf

Jul 16 17:36:31 ubuntuserver systemd[1]: Starting vsftpd FTP server.
Jul 16 17:36:31 ubuntuserver systemd[1]: Started vsftpd FTP server.

Step 4. Configure Firewall.

In case you have UFW firewall enabled, execute the below command to allow incoming traffic to FTP ports:

sudo ufw allow from any to any port 20,21,10000:10100 proto tcp

Step 5. Create FTP User.

We will now create a new user that we will use to log into FTP. In this example, we will create a new user called chedelics:

sudo adduser chedelics

Congratulations! You have successfully installed vsftpd. Thanks for using this tutorial for installing vsftpd in Ubuntu 18.04 LTS (Bionic Beaver) system. For additional help or useful information, we recommend you to check the official vsftpd website.

VPS Manage Service Offer
If you don’t have time to do all of this stuff, or if this is not your area of expertise, we offer a service to do “VPS Manage Service Offer”, starting from $10 (Paypal payment). Please contact us to get the best deal!

Save

Save

r00t

r00t is an experienced Linux enthusiast and technical writer with a passion for open-source software. With years of hands-on experience in various Linux distributions, r00t has developed a deep understanding of the Linux ecosystem and its powerful tools. He holds certifications in SCE and has contributed to several open-source projects. r00t is dedicated to sharing her knowledge and expertise through well-researched and informative articles, helping others navigate the world of Linux with confidence.
Back to top button