How to Setup a FTP Server with FileZilla in Windows

How to Setup a FTP Server with FileZilla in Windows

In this tutorial you will learn how to install a FTP server in Windows 10. However the same process will apply to Windows 7, Windows 11, and Windows Server 2008/2012. We will be using the FileZilla Server to set up the FTP service. FileZilla is by far the easiest FTP server application to set up and configure. One of the main benefits to setting up an FTP server is the ability to easily share files with others. It is useful anytime you want to transfer files from your computer to a server or vise versa. An FTP server is one of the most crucial tool to install on your servers.

Download FileZilla Server

download filezilla server

The first step will be downloading the FileZilla server installer. Navigate to the download page and download the latest release.

Download FileZilla

Launch the Installer

accept agreement

Now open the installer executable and follow the prompts.

Choose Installation Settings

set a default admin password

Once you get to this screen of the installer you will need to type an administrator password. You can also change the port that the admin interface runs on from this screen. You can use the default options for the rest of the process.

Installation Completed

filezilla server install finished

When this screen opens you have successfully completed the installation of FileZilla Server. Close the installer.

Connect to the Admin Interface

click connect

The administration interface will open once you have closed the installer. Click “Connect to the FileZilla FTP Server” to get started.

Input Connection Information

connect to ftp server

Type in the administration password that you entered during the installation. Then click on OK to continue.

Verify Server Fingerprint

verify fingerprint

You will be asked to verify the certificate fingerprint since it is the first time you have opened it. Click “Yes” to verify.

Admin Interface Started

admin interface connected

Afterwards you will be connected to the FileZilla FTP Server administrator interface. We now have to configure our users.

Open FTP Server Configuration

open filezilla server configuration

Click on “Server” in the top left corner and then click “Configure…”. This will open the server configuration screen.

Navigate to the Users Screen

navigate to users

Once the server configuration opens, click on the “Users” row in the left column.

Add a New User

create a ftp user account

Next click on the “Add” button in the middle column to add a new user.

Configure the User and Mount Points

add ftp user details

Type in a name for the new user. Then you will need to fill in a few fields in the left column. Type a password for the user, then set a “Virtual path” and a “Native path”. The virtual path can be anything you want. I recommend just forward slash. The Native path is the directory on the server which you want users to be able to read and write from. In my example I am using the “C:\” path to share the whole computer. Set this to any directory you wish. Once you click “Apply” and “OK” you will be done configuring the FTP server.

Open Windows Defender Firewall

search for firewall

The next step is to configure the Windows Defender Firewall. Open the start menu and search for “firewall”. Then open the “Windows Defender Firewall with Advanced Security” application.

Navigate to Inbound Rules

navigate to inbound firewall rules

Once it has opened navigate to the “Inbound rules” by clicking on it in the left side column.

Create a New Inbound rule

add a new firewall rule

Next click on the “New Rule…” button in the right side column.

Choose the Firewall Rule Type

select program from list

Now you will be asked which type of firewall rule you would like to create. Select the “Program” option from the list.

Select a Program Path

click browse

Click on the “This program path” radio button, then click “Browse…”.

Select the Program to Allow

select filezilla server

Navigate to the FileZilla Server installation folder. It is usually located at “C:\Program Files\FileZilla Server”. Once you find the folder click on the “filezilla-server” executable, then click the “Open” button.

Choose the Firewall Rules Action

set firewall to allow connection

Next select the “Allow the connection” radio button. Then click the “Next” button.

Select Profile Rules

set firewall profile

You can use the default settings on this screen. Click the “Next” button.

Select a Name for the Firewall Rule

set a name for firewall rule

Finally type in a name for the firewall rule. This can be anything you would like.

Open the FileZilla Site Manager

click site manager

At this point everything should be configured properly. We can now test the FTP connection. Open FileZilla (Client), then click on the “Site Manager” button in the upper left hand corner.

Add a New Site

add a new site to site manager

Click on the “New site” button. You will then be asked to type a name for it. Next type in the IP address for the server in the “Host” box. You can find the IP by opening a command prompt on the server and typing “ipconfig”. Afterwards type in the username and password you created earlier for the new user. Now click on the “Connect” button.

Verify TLS Certificate

accept cert for ftp

Since this is the first time connecting to the server it will ask us to verify the TLS certificate. Check the box to “always trust this certificate”, then click the “OK” button.

FTP Server Test Successful

ftp connection worked

If all the steps were followed correctly you should now be connected to your new FTP server. You can test that it is working properly by copying a file to the server. If you want to access the server outside of your local network you will need to port forward the IP address of the server on port 22. The instructions for this vary depending on the model of your router. You should be able to find a good tutorial by Googling “YOUR ROUTER NAME port forwarding guide”. See are other articles below for additional server related tutorials.

Questions?

If you have any questions or comments feel free to leave them below.

Related Resources

View our 5 Reasons to Switch from Windows 10 to Linux.

Learn How to Permanently Disable Windows Defender.

Check out How to Setup OpenSSH with Keys on Ubuntu 22.04.

View our How to Mount an SMB (Samba) Share in Linux with cifs-utils tutorial.

Learn How to Create a Mapped Network Drive in Windows 10.

View all of our available online tools and converters at Formatswap.com.

How to Setup OpenSSH with Keys on Ubuntu 22.04

ssh key splash

In this tutorial you will learn how to setup a SSH server to use a public key pair on Ubuntu. SSH is a secure protocol used for remotely administrating servers. We will be using OpenSSH to setup the server. SSH servers are great as they allow you to easily remote into any machine and execute commands. With public key authentication you get robust security. It is generally recommended that all users running an SSH server should enable key based authentication. You also don’t have to remember passwords when using key based authentication. For this tutorial we will be using Ubuntu 22.04 server, but you should be able to use any Linux operating system.

Generate Key Pair

generate key pair

The first step is to generate a key pair on your client machine. Type “ssh-keygen” and press “Enter”. If you get an error you may have to install the Openssh server as shown below.

sudo apt install openssh-server

Select Key Save Location

select key save file location

Next you will be asked to choose a save location for the key. Press “Enter” to use the default, or type a path and filename for the key.

Set a Key Password (optional)

select password

You will then be asked if you want to set a key on the password. This improves security but will require you to enter the password every time you connect to the SSH server. Either type a password or press the “Enter” key twice to not use a password.

Key Generated Successfully

key generated

Now you will see a message telling you that the key pair has been generated successfully. It will also list the fingerprint and the save location for the key.

Copying Public Key

copy the public key

Next we will copy the newly created key to your SSH server. Type in the following command to copy the key.

ssh-copy-id username@ssh-server-ipaddress

Enter the SSH Users Password

optionally select password for key

The server will then ask you to type in the password for the SSH user. Additionally if you set up a password on the key pair, you will also be prompted to type that.

Keys Successfully Added

keys added message

After typing your credentials you will be shown a screen telling you that the key has been successfully added.

SSH into the Server

ssh into the server

Now that the key has been added to the SSH server we need to connect back to the server. Connect to it using the SSH command as shown above.

Edit the OpenSSH Config File

edit the openssh config

Once you are connected to the server you will need to edit a file. Open the sshd_config file using the nano text editor.

sudo nano /etc/ssh/sshd_config

Disable Password Authentication

disable password authentication

Now that the file is open, use “Ctrl+W” to search for the line “PasswordAuthentication”. Once you locate the line change it from “PasswordAuthentication yes” to “PasswordAuthentication no”. This will cause the SSH server to only log you in using your key.

Save OpenSSH Config File

save openssh config

Next simply press “Ctrl+x” then the “Y” key to save the config file.

Restart OpenSSH Server

restart openssh server

Finally we will need to restart the ssh service on the server. Run the following command to complete this action.

sudo systemctl restart ssh

After the SSH service restarts, you will need to disconnect from the SSH server.

Test the SSH Connection

test ssh connection

Now we will test that we are able to login to the SSH server using our key pair. Simply try to reconnect to the SSH server. You will be automatically logged in if you don’t have a password on the key pair. Else you will need to enter the password you created for the key.

OpenSSH with a Key Pair is Enabled

successful key ssh

If you are able to connect to the SSH server then you have successfully setup a key for OpenSSH. Remember to keep the key pair in a secure location. Anyone with access to it would be able to login to your server.

SFTP Server (optional)

You can also enable secure file transfer with SFTP using OpenSSH. If you would like to activate the server view our How to Setup an SFTP Server on Ubuntu 22.04 using OpenSSH tutorial.

Additional Questions?

If you have any additional questions or thoughts feel free to comment them below.

Related Resources

View our list of The Top 10 Programming Languages to Learn in 2022.

Learn How to Install Ubuntu Server 22.04 [Step by Step].

Click here to learn How to Install MySQL on Ubuntu Server 22.04 LTS.

View all of our Linux Articles and Tutorials.

Learn How to install and configure Nginx – Ubuntu 20.04.

View all of our available online tools and converters at Formatswap.com.