How to Set Up an FTP Server on Ubuntu Linux
Install the FTP framework
You need to make sure that the Ubuntu version is the latest. Ubuntu versions 17.10 and above have many different file paths than previous versions, so you need to update to the latest Ubuntu version:
Open Terminal
Enter the command sudo apt-get upgradethen press ↵ Enter.
Enter the password and press ↵ Enter.
Enter ywhen prompted, then press ↵ Enter.
Wait for the upgrade to complete the installation, then restart your computer if prompted.
Open Terminal. Click the Applications ⋮⋮⋮ menu , scroll down and click the Terminal icon to proceed.
You can also press Alt+ Ctrl+ Tto open Terminal.
Enter the VSFTPD installation command. Enter the command sudo apt-get install vsftpdinto Terminal, then press ↵ Enter.
Enter password. Enter the password you use to log in to your computer, then tap ↵ Enter.
Wait for VSFTPD to install. This process will take about 5-20 minutes depending on your FTP settings and Internet connection, so please be patient.
Install FileZilla. This is the program that you will use to access and upload data to the server. To install:
Enter commandsudo apt-get install filezilla
Re-enter your password if requested.
Wait for the installation to complete.
Configure the FTP server
Open the VSFTPD configuration file. Enter the command sudo nano /etc/vsftpd.confand press ↵ Enter. You will need to edit this file to enable (or disable) specific VSFTPD features.
Allows local users to log in to the FTP server. Use the arrow keys and scroll down to the heading # Uncomment this to allow local users to log in.
, then remove the "#" sign from the line local_enable=YES
below.
You can remove the "#" sign by using the arrow keys and selecting the letter before the pound sign (in this case "l") and pressing the key ← Backspace.
Skip this step if the line local_enable=YES
does not have a pound sign.
Allow FTP to write commands. Scroll down to the title # Uncomment this to enable any form of FTP write command.
, then remove the "#" sign from the line write_enable=YES
below.
Skip this step if the line write_enable=YES
does not have a pound sign.
Disable ASCII mangling. Scroll down to the title # ASCII mangling is a horrible feature of the protocol.
, then remove the "#" sign from the following two lines:
ascii_upload_enable=YES
ascii_download_enable=YES
Change the "chroot" setting. Scroll down to title # chroot)
, then add the following lines:
user_sub_token=$USER
chroot_local_user=YES
chroot_list_enable=YES
If any of the lines above already exist, simply remove the "#" sign in front of those lines.
Change the default "chroot" setting. Scroll down to title (default follows)
, then add the following lines:
chroot_list_file=/etc/vsftpd.chroot_list
local_root=/home/$USER/Public_html
allow_writeable_chroot=YES
If any of the lines above already exist, simply remove the "#" sign in front of those lines.
Enable the "ls recursive function" option. Scroll down to the title # You may activate the "-R" option.
, then remove the "#" sign from the line ls_recurse_enable=YES
below.
Save and exit the text editor program. To proceed, you:
Press Ctrl+X
Importy
Press↵ Enter
Add the username to the chroot list
Open the "chroot" text file. Enter the command sudo nano /etc/vsftpd.chroot_listand press ↵ Enter.
You can skip and go to the last step in this section if you do not need to specify objects to access the FTP server.
Enter password. Enter the password you use to log into Ubuntu then press ↵ Enter. The "chroot" text file will open.
Skip this step if the system does not ask you to enter a password.
Add username to the list. Enter your username and press ↵ Enter, then repeat with the usernames whose Home folder you want to access immediately on your server.
Save the list. Press Ctrl+ X, enter ythen press ↵ Enter. Your list will be saved.
Restart VSFTPD. Enter the command sudo systemctl restart vsftpdthen press ↵ Enter. VSFTPD will restart to ensure that your changes are saved. You can now access the FTP server.
Access the server
Determine the server's address. If you purchased an FTP server through a third-party service (for example, Bluehost), you will need to know the service's IP address or physical address to make the connection.
If you are keeping a private server on your computer, you will need your computer's IP address, enter the command ifconfiginto Terminal and see the "inet addr" number in the results.
If "ifconfig" is not installed, you can enter the command sudo apt-get install net-toolsinto Terminal to install it.
Port forwarding on router . Once you know the server IP address, you need to forward your router's slot 21 port to that address; Make sure this port uses TCP protocol (not UDP or hybrid).
The port forwarding process will vary depending on the router, you should refer to the relevant article or your router's documentation for instructions.
Open Filezilla. Enter filezillaTerminal then press ↵ Enter. After a moment, FileZilla will open.
If you want to connect through Terminal, you can try entering the command ftp [address]. As long as the FTP server is active and you have Internet access, the system will try to connect to the server; however, you may not be able to upload the file.
Click File in the upper left corner of the FileZilla window. A drop-down menu will appear.
Click Site Manager… (Site Manager). This option is in the drop-down menu. The Site Manager window opens.
Click New Site . This white button is located at the bottom left of the window. The New Site section will open in Site Manager.
Enter the server address. Enter the address (or IP address) of the FTP server you want to connect to in the "Host:" field.
Add the port number to be forwarded. Enter 21the "Port:" data field.
Click Connect . This red button is at the bottom of the page. FileZilla will connect your computer to the FTP server.
Transfer files to the server. You can drag the folder in the left window and drop it into the right window to upload data to the FTP server site.
You should read it
- How to configure DNS Server on Ubuntu Server 11.04
- The 5 best Linux server distributions
- 7 Enterprise Linux Server Distributions
- How to Install Ubuntu Server
- How to install FTP Server on Ubuntu
- 12 best Linux server operating systems
- How to Set up an FTP Server in Ubuntu Linux
- What is the difference between Ubuntu Desktop and Ubuntu Server?
- How to troubleshoot Ubuntu problems does not start
- How to set DNS nameserver in Ubuntu Server 18.04
- Is CentOS or Ubuntu the best web hosting server operating system?
- Ubuntu Server Upgrade Steps
Maybe you are interested
Why is there no professional mode on Facebook?
6 ways to fix the error 'PowerPoint found a problem with the content'
The Dark Web is not illegal, but be wary of these 7 things!
YouTube is about to support a feature that allows creators to reply to viewers' comments with their voice
9 ways to fix the error of not being able to save files as JPEG or PNG in Photoshop
Apple's 'shot on iPhone' ads don't reflect the truth