File Transfer Protocol (FTP) is a network protocol that is used to transfer computer files from one host to another through the Internet or a TCP based network. FTP clients are used to manipulate files on an FTP server and they function independent of the operating systems involved. There are many popular FTP programs available for different types of operating systems, and in this post we will be showing you how to setup FTP server using the popular program called FileZilla. FileZilla is a free, cross-platform FTP application software that is available for Windows, Linux, and Mac OS X and supports FTP, SFTP, and FTPS (FTP over SSL/TLS).
How to Setup FTP Server
This setup is done on a PC running Windows 8.1.
1. Download the free program Filezilla from here.
2. When you run the EXE file, you will see options to install some optional add-ons. Make sure you decline these options.
3. Install all the settings with the default settings available in the wizard. In the Startup Settings screen however, you’ll see an option that allows for FileZilla to boot up along with Windows. If you don’t want this option and prefer to install manually, select the respective option from the dropdown.
Once the installation is complete, FileZilla will open up.
4. In the Connect Server dialog, in the Server Address text box, specify 127.0.0.1 as the server address and enter an admin password. Click OK to open up the FileZilla FTP Server interface.
5. Now, you can create a directory which will act as the FTP repository. Navigate to the location where you want the folder to be created and name it FTP. For the purpose of this tutorial, I will create the FTP folder on the desktop. Its exact location is C:Usersaddie_000DesktopFTP.
6. Now you can add users. Users can be added as individuals or you can create groups and add users to groups. To create users:
a. On the FileZilla Server window, click the Edit menu and click Users.
b. In the Users dialog box, in the left pane, click Shared Folders.
c. In the Users section, at the far right, click Add. In the Add user account dialog box, enter the username for the account that another PC will be using to access our repository. Basically this will be the name of the PC where you are creating the repository (in our example, addie_000). Click OK.
7. Now, in the Shared folders section, click Add. in the Browse for Folder dialog, select the directory you want to share as the FTP repository. This will be the folder that you created on the desktop. Click OK.
8. Now you need to assign user permissions for the repository. By default the user we have added has the ability to read files, list directories and subdirectories. You can give additional permissions such as the ability to edit files, create or delete directories. Select the options as required.
9. Click OK.
Now that you have setup the FTP server, its time to add some level of security to it.
How to Secure FTP Server
Hackers are constantly scouring the internet looking for people using FTP servers that can be broken into easily. You can avoid them by changing the default port that is their focus, port 21.
1. On the FTP Server dialog box, click the Edit menu and choose Settings.
2. In the FileZilla Server Options dialog box, on the General Settings screen, in the Listen on these ports text box, you will see 21. Change this to a random number between 1 to 65535.
Changing the default port does not make it secure, but it certainly does make it harder for anyone to find it. Additional security measures that you can take is set FileZilla to respond only to login request made from known IP addresses. The problem with this though is that you should know the IPs of the computers that will connect to your repository.
3. In the FileZilla Server Options dialog box, on the left panel, click IP Filter.
4. In the top box, put an asterisk to block all IP’s from connecting to your server. In the bottom box, add exceptions. You can add 192.168.1.0/24 (that is 192.168.1.1 – 192.168.1.255) IP range that will be able to connect.
5. One additional security setting that you need to be aware of is Autoban. It is a feature that attempts to make break ins impossible by blocking more than 10 failed attempts in one hour. In the left pane, click Autoban. Check the Enable automatic bans check box and set the number of failed attempts after which the IP address will be blocked. I’m setting this one to 3.
If you have a third party firewall or anti-virus program, make sure that the port on which the FTP server runs is allowed through it. If you have Windows Firewall enabled,
1. Go to your Start screen, type Windows Firewall, then click Windows Firewall.
2. In the left pane, click Advanced Settings.
3. In the left pane, click Inbound Rules. Then in the right pane, click New Rule.
4. In the New Inbound Rule Wizard, select Port and click Next.
5. In the next screen, in the Specific local ports, specify the port that you replaced in Step 2 in How to Secure FTP.
6. Click Next. Check that Allow the connection is enabled and click Next.
7. Ensure that all 3 check boxes are selected and click Next.
8. In the last screen, enter a name and description if necessary for future identification and click Finish.
Now that you have set up the FTP server you can provide the user information to others to connect to your FTP server. Just remember to allow access to their IPs.