In this tutorial, we will show you how to install and configuration of vsftpd on your Ubuntu 16.04 server. 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 the step-by-step installation of Vsftpd on a Ubuntu 16.04 (Xenial Xerus) server.
Prerequisites
- A server running one of the following operating systems: Ubuntu 16.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 theroot user
. We recommend acting as anon-root sudo user
, however, as you can harm your system if you’re not careful when acting as the root.
Install Vsftpd on Ubuntu 16.04
Step 1. First, make sure that all your system packages are up-to-date by running the following apt-get
commands in the terminal.
sudo apt-get update sudo apt-get upgrade
Step 2. Installing VSFTPD.
To install VSFTPD, run the following command from your Terminal:
apt-get 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 2016-08-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 Aug 16 17:28:31 ubuntuserver systemd[1]: Starting vsftpd FTP server. Aug 16 17:28:31 ubuntuserver systemd[1]: Started vsftpd FTP server.
Congratulations! You have successfully installed vsftpd. Thanks for using this tutorial for installing vsftpd in Ubuntu 16.04 (Xenial Xerus) system. For additional help or useful information, we recommend you check the official vsftpd web site.