Picture this: You've just started your journey into the world of server hosting, you spent time learning an application and want to host it. Problem is, you have no idea how to upload your files to your server. This guide will solve that issue, so fasten your seat-belts and let's hit the road!
First off, if you're brand new to Linux servers check out the following link to learn how to access your server with SSH.
Start by ensuring that your system is up to date and has the latest software packages installed. This can be achieved by running the following command. ( Note that you will need to be using a sudo capable user. For information on how to set up a sudo user, check out https://help.skysilk.com/support/solutions/articles/9000126208-how-to-create-new-users-and-grant-sudo-privileges-to-users-on-linux to get you going. )
sudo apt-get update && apt-get upgrade
Once that is finished, we will install vsftpd:
sudo apt install vsftpd
When it finishes, it should start automatically. You can verify the status of the vsftpd service by running:
sudo systemctl status vsftpd
Now we want to configure vsftpd for our needs. It's always a good idea to make a backup of the original config file in-case something goes wrong.
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak
Choose a text editor that you are comfortable with (we chose nano in this instance), because we're going to make some changes now.
sudo nano /etc/vsftpd.conf
Take some time to look through this file and become familiar with it. There's useful comments to help you understand what each section does. For more information, refer to the official documentation at http://vsftpd.beasts.org/vsftpd_conf.html
Once you've finished making your changes, restart the vsftpd service:
sudo systemctl restart vsftpd
Since we're using UFW on our instance, we'll also do the following:
sudo ufw allow from any to any port 20,21,10000:10100 proto tcp
sudo ufw disable sudo ufw enable sudo ufw status
The results of ufw status should look something like:
Status: active To Action From -- ------ ---- 20,21,10000:10100/tcp ALLOW Anywhere 22/tcp ALLOW Anywhere 20,21,10000:10100/tcp (v6) ALLOW Anywhere (v6) 22/tcp (v6) ALLOW Anywhere (v6)
You should now have VSFTPD installed and running with firewall rules set to allow connections to it. This guide was not meant to be an extensive tutorial, but rather a starting point to get you up and running. If you're planning to add multiple users accounts, restrict their access, and more: we heavily advise that you refer to the official documentation linked above.