There is one thing that I do almost constantly during my day job that I realized I don't really do at home. That is creating an FTP server where you can retrieve files from within one sub-network while you're anywhere on a LAN, or in the case of a home FTP server, accessing files from the larger Internet.

For something like this, a lot of people immediately consider a long list of file sharing solutions like the 5 browser-based P2P file sharing tools Tim mentioned or the 4 file sharing applications he wrote about that communicate over the Internet. We've covered lots of FTP clients, and Varun showed how to enable the Windows FTP service to serve out files from your own FTP site.

The Windows FTP service is useful for quickly sharing files without the need to install any new software, but it is also limited as far as functionality is concerned. For things like security, extensive user management or handling multiple domains easily, outside free FTP server software can offer some pretty cool advantages. One of my favorite tools is the free Core FTP Server.

Setting Up Your FTP Domain

I'm going to show you how fast and easy it is to set up an FTP server on your home PC with up to three domains where you can assign specific users and passwords that have access to specific directories on your PC.

When you first launch Core FTP Server you'll see a blank domain listing where you can get started configuring your three free FTP domains. To do so, just click the "Setup" button.

free ftp server software

The domain setup is where 90 percent of the configuration takes place. You'll see, buried on this page, not only the ability to configure your FTP domain, but you can also enable signed certificates for access to the FTP server, virtual paths that users can navigate when they connect to your server, lots of security options like SSH, SSL, etc.

best ftp server software

If you've purchased certificates, click the "Certificate" button to set them up. If you don't have one, you can set up your own "Self signed certificate" with the screen below.

best ftp server software

The fastest and easiest way to set up the server (although obviously not the most secure), is to just configure "localhost" with the standard FTP port and set up a root FTP path where anyone connecting to your FTP server can obtain files. You can also create sub-directories for individual users, and you set these up when you configure secure user accounts. You do this after setting up your domain by clicking on the "New" button next to the Users listing.

best ftp server software

Here, I've set up a user called "ryanfriend1" that will have access to the "ryanfriend1" sub-directory upon logging into the FTP server. As you can see, Core FTP Server offers a whole list of options per user that you can configure like download and upload speeds, timeouts and even limit the amount of KB the user can download.

setting up ftp server

On the left navigation bar in the user setup box you can also click on the "Permissions" link to block or allow file and directory access permissions for that user.

setting up ftp server

Back on the main screen of Core FTP Server, if you click on the "Access Rules" button, you can specifically block an IP or domain, or a range of IP addresses, if you ever have the need to.

Once you've set up at least one FTP domain and a user, go ahead and click on "Start" and you'll see the server launch in the activity box at the bottom of the main page. When you see that the server is "active...", your users are almost able to access your FTP server. You still have to forward incoming FTP inquiries to your new FTP server.

setting up ftp server

First, open up a command prompt on the computer where the server is running and type "ipconfig" to check your IP address. Once you have the address for the PC, you're ready to set up your router. Log into your router admin page and (in the case of a Linksys router) click on Applications & Gaming. For other routers, find where you can configure Single Port Forwarding.

Enable FTP port forwarding to the PC address where you've enabled your Core FTP server. Once you've started your server and enabled router forwarding, you're ready to connect to your FTP server from anywhere in the world. To display this, I used my laptop to connect from outside my home LAN and opened up a command prompt. I quickly did an FTP to the IP address that I know is assigned to my router from our ISP (if you don't know, just visit a site like WhatIsMyIp from your FTP server PC to find out).

free ftp server software

As you can see above, the server welcomed the user with the message that I defined for that domain. It let the user that I defined log in using the assigned password only, and it issued the exit message upon disconnecting.

The whole process of setting up a fast and simple FTP server with password protected user access takes less than 15 to 20 minutes. Core FTP makes it really easy to open up a directory or directories to yourself or to your friends from anywhere in the world with a functionality that goes much beyond the default FTP service that comes with Windows.

If you've tried Core FTP Server, share your thoughts about the pros and cons. Do you know of any other comparable free FTP server software? Share your thoughts in the comments section below.