Installing and configuring an FTP server on Ubuntu 9.04 Jaunty Jackalope is pretty straightforward. By default Ubuntu uses a package called vsftpd as an FTP server, which is currently the most popular FTP package for Linux systems. To install the vsftpd package, use the following command at the Terminal:

sudo apt-get install vsftpd

Follow the default prompts, and the vsftpd server will be installed on your computer. Once the installation is finished, you’ll want to configure it for greater security. The configuration data for vsftpd is located in the /etc/vsftpd.conf file. First, you’ll want to make a backup copy of the vsftpd.conf file:

sudo cp /etc/vsftpd.conf ~

This will make a backup copy of the original vsftpd.conf file in your home directory.

Next, open up a text editor to make changes to the vsftpd.conf file:

sudo gedit /etc/vsftpd.conf

(New users will probably find gedit the easiest to use due the graphical interface, but more experienced users can opt for vi or emacs instead.)

Once you are editing the file, you’ll want to make a few changes. Change this:


To this:


This will disallow anonymous access to your FTP server. Unless you have a really, really, really good reason for permitting anonymous access, and you know what you’re doing in terms of network security, I’d recommend leaving the anonymous access off. Especially if your Ubuntu FTP server is sitting on the Internet; having an anonymous FTP server on the public Internet is asking for all kinds of trouble.

Of course, with anonymous access off, you’ll need to permit local users to log in. Do this by changing this directive:


To this:


(Putting a # in front of a line disables it; this is called “commenting it out”.)

Once you’ve made these changes, you’ll need to restart the vsftpd server so it reads its new directives:

sudo /etc/init.d/vsftpd restart

You can then test your Ubuntu machine’s FTP service from the local command line: