How to Install and Configure a Personal FTP Server Using VSFTPd on Ubuntu

Have you ever wanted to setup a simple FTP server so that you can upload files to your remote server for yourself, or a few users? VSFTPd is the perfect option for you. It’s a powerful, open source FTP server that is designed to be quickly and easily configured.

In this article, we’ll show you how to setup VSFTPd on Ubuntu so that you can create your own personal FTP server.


In order to setup an FTP server, you’ll need a Hybrid, Cloud, or Dedicated Server from ServerMania. We have a variety of hosting solutions to choose from at

Not sure which server is best for you? Book an expert consultation today, and we’ll find the perfect server for your needs and budget, guaranteed.

This article was created using Ubuntu 16.04. Instructions may vary based on the version of Ubuntu you are running on your server.

Installing VSFTPd

Step 1: Login to the server via SSH

ssh ubuntu@SERVER-IP

Step 2: Change into the root user

sudo su

Step 3: Install VSFTPd

apt-get install vsftpd -y

Step 4: Start VSFTPd and set it to start on boot

systemctl start vsftpdsystemctl enable vsftpd

Step 5: Create a user for FTP access

adduser vsftp

Step 6: Make an FTP directory and set permissions

mkdir /home/vsftp/ftpchown nobody:nogroup /home/vsftp/ftpchmod a-w /home/vsftp/ftp

Step 7: Create an upload directory and set permissions

mkdir /home/vsftp/ftp/testchown vsftp:vsftp /home/vsftp/ftp/test

Configuring VSFTPd

Step 1: Backup the configuration file

cp /etc/vsftpd.conf /etc/vsftpd.conf.bak

Step 2: Open the configuration file in your favourite text editor

vi /etc/vsftpd.conf

Step 3: Add the following lines to the file, then save and close the file:


Step 4: Add the FTP user to VSFTP

vi /etc/vsftpd.userlist

Add the following line, then save and close the file:


Step 5: Create a certificate to connect via SSL

mkdir /etc/certopenssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/cert/vsftpd.pem -out /etc/cert/vsftpd.pem

Step 6: Restart VSFTP

systemctl restart vsftpd

Connecting to the FTP Server

You can now visit ftp://YOUR-SERVER-IP and login using the username and password you created earlier in order to view files uploaded.

In order to upload files, you can use an FTP client such as Filezilla. Remember to require explicit SSL connections when configuring Filezilla, otherwise the connection will fail.


Your Ubuntu server is now setup with a simple FTP server for you to upload and store files. Congratulations!

See Also: (Live Webinar) Meet ServerMania: Transform Your Server Hosting Experience


Bare Metal Dedicated Servers

A single tenant, physical server allowing you full access to its resources.

Browse servers

Professional Hybrid Servers

Virtualized server platform hosted on enterprise-grade physical servers.

Browse servers

Scalable Cloud Servers

High-performance and highly-available infrastructure.

Browse servers

Managed Colocation

Our next-generation data center facilities.

Browse servers

Your email address will not be published.

There are no comments yet, why not be the first?