How to Install FileZilla FTP Server on Linux Ubuntu 22.04

How to Install FileZilla FTP Server on Linux Ubuntu 22.04. In this post, we introduce FileZilla, its advantages. After that, we navigate to installation phase of how to install FileZilla server on Ubuntu 22.04.

FileZilla is one of the most popular open source File Transfer Protocol (FTP) server for the same reason that denim jeans are the world’s most popular pants: Everyone uses them, and there is very little reason to look for alternatives. If you are looking for an app that lets you transfer files back and forth from your server, FileZilla may be exactly what you are looking for.

What is FileZilla?

Image Source: tutorials24x7

All in all, FileZilla is cross platform which means that it run on Windows, macOS, Linux, Unix, and other operating systems. Highly designed FTP server, that is used to open, edit, and download files.

FTP servers also transfer files via protocols other than FTP, particularly FTPS (File Transfer Protocol Secure), which encrypts FTP transfers using the SSL/TLS protocol, and SFTP (SSH File Transfer Protocol), another protocol that uses secure shells to perform the encryption.

Besides, FTP (File Transfer Protocol) works almost exactly like HTTP, except that instead of rendering websites to the browser. Accordingly, FTP uses an FTP Client and FTP Server to transfer files across the Internet. An FTP client allows you to connect to a web hosting server, where you transfer files between the hosting server and files on your local machine.

The FTP server becomes valuable when you need a way to send files to your server or one of your cloud storage solutions. If you often find yourself moving lots of files back and forth between devices, an FTP client is an awesome time saver that is worth using. The QuickConnect feature within FileZilla should do just fine for anyone who is comfortable using FTP for file transfers.

Since FileZilla is compatible with a lot of different operating systems, it makes it so easy for anyone use the tool to access files on their website. The software allows users to transfer multiple files at once, as well as browse folders, and websites, as well as across the computer. It can be used by businesses to transfer files from one computer system to another, or websites can use FTP to upload or download files from the servers of the website.

Features of Filezilla FTP

Basically, FileZilla is used to transfer files between a local computer and a remote computer or server using the FTP, FTPS, or SFTP file transfer protocols. It has a lot of features such as drag and drop transfers, resume interrupted transfers, remote file searching, synchronize directories, and more.

1. User Friendly Graphical User Interface: One of the FileZilla FTP server utility’s key USPs is its highly intuitive and user friendly GUI, and it makes sense why. Users may easily navigate the FTP address and download the appropriate set of data and files from the Server in minutes. 

2. Supports Multiple Platforms: The FileZilla clients run on practically every platform, including Windows, Linux, Unix, and Mac. As a result, it provides flexibility to the environment where different technologies are present.

3. Security Protocols: The FileZilla server offers a secure means of transferring data from one location to another by supporting a variety of security protocols including TLS, SSL, etc. Although these security features would improve the security level of file transfer operations, FTP is regarded as vulnerable software.

4. Remote File Editing: Using the FileZilla server, users edit or modify files from distant locations without downloading them. Simply choose the files you want to edit, and you may make the necessary adjustments in real time.

5. Bandwidth Management: FileZilla FTP assists in configuring bandwidth management settings to alter the speed of data transfer based on bandwidth and necessity.

Advantages of Filezilla FTP

FileZilla has many advantages over other programs because of its intuitive interface, simplicity, and speed.

1. Simple and Easy to Use: The first advantage of FileZilla is that it’s easy to use. With it’s simple interface, it makes it easy to navigate through folders and files. It also has a built in editor that allows you to edit the text in the files you’re uploading or downloading.

2. Offers Quick Transfers: Another advantage of FileZilla is its speed. Compared to other FTP programs, FileZilla transfers data at an extremely fast rate. This is be attributed to its high performance engine which supports multi threading and asynchronous I/O operations.

3. Open source and Free: Unlike other FTP programs which cost money or are not available for Linux users, FileZilla can be downloaded for free from their website without any restrictions.

4. Multi language Support: FileZilla Server supports a number of the most widely spoken languages in the world in addition to English, including German, French, Spanish, French, Japanese, etc. The fact that it supports multiple languages makes using this free FTP server easier and more convenient.

How to Install FileZilla FTP Server on Linux Ubuntu 22.04

In this section, we will show you how to install the FileZilla server and set up an FTP server on Ubuntu 22.04 server.

Prerequisites

  • An Ubuntu 22.04 server is installed on your system.
  • A root user or a user with sudo privileges.

Step 1 - Update Your System

First, it is necessary to update and upgrade all of your system packages to the updated version. You can update all of those packages using the following command.

				
					apt update -y
apt upgrade -y

				
			

After updating all the system packages, you can proceed to download and install the FileZilla server.

Step 2 - Download and Install FileZilla Server

First, visit the FileZilla download page and download the latest version of the FileZilla server package for Linux on your server.

After downloading FileZilla package, run the following command to install it on your server.

				
					dpkg -i FileZilla_Server_1.6.1_x86_64-linux-gnu.deb
				
			

You will get some dependency error as shown below:

				
					Selecting previously unselected package filezilla-server.
(Reading database ... 73317 files and directories currently installed.)
Preparing to unpack FileZilla_Server_1.6.1_x86_64-linux-gnu.deb ...
Unpacking filezilla-server (1.6.1) ...
dpkg: dependency problems prevent configuration of filezilla-server:
filezilla-server depends on libcairo2 (>= 1.16.0); however:
Package libcairo2 is not installed.
filezilla-server depends on libgdk-pixbuf-2.0-0 (>= 2.42.2+dfsg); however:
Package libgdk-pixbuf-2.0-0 is not installed.
filezilla-server depends on libgtk2.0-0 (>= 2.24.33); however:
Package libgtk2.0-0 is not installed.
filezilla-server depends on libpango-1.0-0 (>= 1.46.2); however:
Package libpango-1.0-0 is not installed.
filezilla-server depends on libpangocairo-1.0-0 (>= 1.46.2); however:
Package libpangocairo-1.0-0 is not installed.
filezilla-server depends on libsm6 (>= 2:1.2.3); however:
Package libsm6 is not installed.

dpkg: error processing package filezilla-server (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
filezilla-server

				
			

To resolve this dependency error, run the following command.

				
					apt install -f
				
			

This command resolves all dependency errors and install the FileZilla server to your system. During the installation process, you will be asked to set an administrator password for FileZilla as shown below.

Set your password and press the Enter key to finish the installation.

Step 3 - Manage FileZilla Service

By default, the FileZilla service is managed by systemd. Easily manage it using the systemctl command line utility.

To start the FileZilla service, run the following command.

				
					systemctl start filezilla-server
				
			

Now, enable the FileZilla service so it starts automatically after the system reboot.

				
					systemctl enable filezilla-server
				
			

You can now verify the status of the FileZilla service using the following command.

				
					systemctl status filezilla-server
				
			

This  shows you the status of the FileZilla server in the following output.

				
					● filezilla-server.service - A free open source FTP and FTPS Server.
Loaded: loaded (/etc/systemd/system/filezilla-server.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2022-12-29 05:06:06 UTC; 33s ago
Main PID: 2038 (filezilla-serve)
Tasks: 9 (limit: 2242)
Memory: 7.8M
CPU: 29ms
CGroup: /system.slice/filezilla-server.service
└─2038 /opt/filezilla-server/bin/filezilla-server --config-dir /opt/filezilla-server/etc

Dec 29 05:06:06 ubuntu systemd[1]: Started A free open source FTP and FTPS Server..
Dec 29 05:06:06 ubuntu filezilla-server[2038]: Setting up TLS for the FTP Server
Dec 29 05:06:06 ubuntu filezilla-server[2038]: SHA1 certificate fingerprint: ab:14:e4:4d:94:f4:c2:3e:b4:15:ad:10:fd:5a:88:d6:54:31:66:3e
Dec 29 05:06:06 ubuntu filezilla-server[2038]: SHA256 certificate fingerprint: 4f:9a:3a:19:01:ac:58:1c:d4:a2:44:07:57:12:aa:ad:f5:2b:bb:b5:3d>
Dec 29 05:06:06 ubuntu filezilla-server[2038]: Setting up TLS for the Administration Server
Dec 29 05:06:06 ubuntu filezilla-server[2038]: SHA256 certificate fingerprint: bb:a0:ac:74:01:0f:28:17:95:c9:25:04:52:12:55:33:47:2c:44:a8:e0>
Dec 29 05:06:06 ubuntu filezilla-server[2038]: [FTP Server] Listening on 0.0.0.0:21 (tls_mode = 0).
Dec 29 05:06:06 ubuntu filezilla-server[2038]: [FTP Server] Listening on [::]:21 (tls_mode = 0).
Dec 29 05:06:06 ubuntu filezilla-server[2038]: [Administration Server] Listening on 127.0.0.1:14148 (tls_mode = 1).
Dec 29 05:06:06 ubuntu filezilla-server[2038]: [Administration Server] Listening on [::1]:14148 (tls_mode = 1).

				
			

If you want to stop the FileZilla service, run the following command.

				
					systemctl stop filezilla-server
				
			

At this point, the FileZilla server is started and listens on port 21. You can verify it with the following command.

				
					ss -antpl | grep 21
				
			

This shows you the FTP listening port in the following output.

				
					LISTEN 0 64 0.0.0.0:21 0.0.0.0:* users:(("filezilla-serve",pid=2038,fd=5))
LISTEN 0 64 [::]:21 [::]:* users:(("filezilla-serve",pid=2038,fd=7))

				
			

Step 4 - Configure FileZilla Server

FileZilla server stores all of their configuration file at /opt/filezilla-server/etc/ directory. See all files with the following command.

				
					ls /opt/filezilla-server/etc/
				
			

You should see the following output.

				
					allowed_ips.xml certificates disallowed_ips.xml groups.xml settings.xml users.xml
				
			

If you want to allow only a specific host to access the FileZilla server, then edit the allowed_ips.xml configuration file.

				
					nano /opt/filezilla-server/etc/allowed_ips.xml
				
			

You can add the allowed host’s IP address in the following directive.

				
					<allowed_ips></allowed_ips>

				
			

If you want to deny specific hosts to access the FileZilla server, edit the disallowed_ips.xml configuration file.

				
					nano /opt/filezilla-server/etc/disallowed_ips.xml
				
			

Add the IP address in the following directive.

				
					<disallowed_ips></disallowed_ips>
				
			

Also tweak the FileZilla FTP server by editing its main configuration file.

				
					nano /opt/filezilla-server/etc/settings.xml
				
			

Here, you can change the FTP port, listening IP, and other values as shown below.

				
					<!--The duration, in milliseconds, during which the number of failed login attempts is monitored.-->
<login_failure_time_window>100</login_failure_time_window>


<!--Login timeout (fz::duration)-->
<login_timeout>60000</login_timeout>

<listener>
<address>0.0.0.0</address>
<port>21</port>
<tls_mode>0</tls_mode>
</listener>

				
			

Save and close the file when you are finished. Then, restart the FileZilla service to apply the changes.

				
					systemctl restart filezilla-server
				
			

Step 5 - Create a User for FileZilla

Now, you will need to create a user to access the FileZilla server. You create a user named testftp using the following command.

				
					adduser testftp
				
			

Set you user’s password as shown below.

				
					Adding user `testftp' ...
Adding new group `testftp' (1000) ...
Adding new user `testftp' (1000) with group `testftp' ...
Creating home directory `/home/testftp' ...
Copying files from `/etc/skel' ...
New password:
Retype new password:
passwd: password updated successfully
Changing the user information for testftp
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n]

				
			

Save and close the file then edit the users.xml configuration file.

				
					nano /opt/filezilla-server/etc/users.xml
				
			

Find the following line.

				
					<user name="&lt;system user>" enabled="false">
				
			

And, replace it with the following line.

				
					<user name="&lt;system user>" enabled="true">
				
			

Save and close the file then restart the FileZilla service to apply the changes.

				
					systemctl restart filezilla-server
				
			

Step 6 - Access FileZilla FTP Server

At this point, the FileZilla server is installed and configured on your server. Now, you will need to test it using the FileZilla FTP client software.

A). First, install the FileZilla client software on the remote machine and open it. You should see the following screen.

B). Click on the create a new connection. You should see the new connection creation screen.

C). Define your FileZilla server IP, Port, Username, Password then clicks on the Connect button. Once you are connected to the FTP server, you should see the certificate warning on the following screen.

D). Click on the OK button to trust the above certificate. You should see the content of your testftp user on the following screen.

Thank you for taking the time to read our article How to Install FileZilla FTP Server on Linux Ubuntu 22.04. We will conclude this article blog. 

How to Install FileZilla FTP Server on Linux Ubuntu 22.04 Conclusion

Congratulations! You have successfully installed and configured FileZilla FTP server on Ubuntu 22.04. Finally, FileZilla is a free, open source FTP server that supports both FTP and SFTP. The software tool also allows users to configure FTP servers or connect to other FTP servers in order to share files. Easily to open, edit, and download files using this software.

Also, it is a popular FTP program that is available for both Windows and Linux. It has all the features you would want in an FTP client, including drag and drop support, resuming downloads and uploads, bandwidth throttling, and resume on error. It also offers secure SSH through SFTP at no extra charge. Check out its above listed other features and benefits to learn more about FileZilla FTP.

Explore more of our FTP content by navigating to this section of our blog.

Avatar for Hitesh Jethva
Hitesh Jethva

I am a fan of open source technology and have more than 10 years of experience working with Linux and Open Source technologies. I am one of the Linux technical writers for Cloud Infrastructure Services.

5 1 vote
Article Rating
Subscribe
Notify of
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x