How to Install FTP on Ubuntu 18.04?

FTP stands for File Transfer Protocol used to share files/folders from one server to another server. It uses the Client/Server model. Once FTP Client sends the request on FTP Server, the FTP daemon of the server will set a connection between the two systems. You can access the files hosted on your server with the help of FTP. It is always recommended to set Authentication for FTP instead of Anonymous. Here, are the steps to install FTP on Ubuntu 18.04

  1. Install the FTP using the below command.

    # sudo apt-get install vsftpd
  2. We will set local_enable=YES to allow local users to log in to the FTP server. By Default, it should be up.

    # sudo nano /etc/vsftpd.conf


  3. To provide write permission, we will uncomment the below line.

    # write_enable=YES
  4. Make the below changes for the chroot settings.

    user_sub_token=$USER
    chroot_local_user=YES
    chroot_list_enable=YES



  5. Inside # (default follows), Set the default “chroot” settings. If any of these lines don't exist, you can add it as per below. 

    chroot_list_file=/etc/vsftpd.chroot_list
    local_root=/home/$USER/Public_html
    allow_writeable_chroot=YES



  6. Activate the “-R” option by uncommenting the below line.

    # ls_recurse_enable=YES


  7. Save and Exit the vsftpd.conf file.

  8. Now, we will add the users to the file vsftpd.chroot_list to access their Home directories within the server. Here, we have created a test user and added it in vsftpd.chroot_list file. Please note that only users added in the vsftpd.chroot_list will be able to connect this server.

    # sudo nano /etc/vsftpd.chroot_list
  9. Restart the vsftpd

    # sudo systemctl restart vsftpd
  10. Get the IP Address of your server with ifconfig command and access FTP with the port 21.

  11. Access the FTP using Username and Password of the same user from local FTP client like FileZila.

  • 0 Users Found This Useful

Was this answer helpful?

Related Articles

How do I enable apache file and directory indexing in Linux or UNIX?

There are 2 ways to enable apache file and directory indexing. Using Apache config file : You...

How to enable sFTP in a Linux VPS?

The SSH File Transfer Protocol (SFTP), also known as the Secure File Transfer Protocol, enables...

How to Hide Your NGINX Server Version.

Sometimes hackers target your server with a technic called banner grabbing. Usually, banner...

How to Install Jenkins on CentOS 7?

Jenkins is an opensource and free tool for developers to develop, test and deploy the code...

How to change the MySQL timeout limit in Linux?

Please refer to the following article to change the MySQL timeout error.  Log in to your...