freeFTPd – free and most secure sFTP Server available

FTP by itself is very insecure. Passwords are sent in plaintext over the internet; there is no encryption. You can set up FTP with an SSL certificate, but it can be complicated.

This is where sFTP comes in. sFTP is FTP encryped with an SSH layer. freeFTPd is a free sFTP server. It’s very easy to set up the server, set up users, view logs etc.

Its a lot more secure than FTP. To give you an example of how much more secure it is, the strongest SSL certificate is 256 bits. With SSH you can go all the way up to 4096 bits!


freeFTPd is freeware and compatible with any Windows NT based system (eg. Windows NT, 2000, XP, Vista, 7, 2K3, 2K8).

You can download it from

Bookmark and Share
Wednesday, October 21st, 2009 Useful Software


8 Comments to freeFTPd – free and most secure sFTP Server available

February 11, 2011

If you want FreeFTPd to work as a service, there are a few configurations that you will need to do:
1. In the services section of windows server, select FreeFTPservice. You can have this as automatic, but I set it to manual and ran a script to have it listen on port 22 for my sFTP server and save it as a .cmd file. This script will need to be loaded under the “recovery”/”run program” section. (it will start the program using this script!) (It does not matter when you save the file).
Here is the script:
@echo off
Set log=”C:ftpstartup.log”
echo sleeping 30 seconds > %log%
sleep 30
echo starting service >> %log%
net start freeFTPDService >> %log%
echo looking for listener… >> %log%
for /F “tokens=2″ %%i in (‘netstat -a -n ^| findstr “^.*TCP.*:22.*LISTENING$”‘) do Set FTPPROC=%%i
IF “%FTPPROC%”==”" goto failed
echo Service listening on %FTPPROC% >> %log%
goto end

echo failed to start service… >> %log%

Set log=

2. Then you need to have the service run as your USER and not system. This is because if you run it as system, the service will not actually start when you boot up your computer (and if you configure the service, the system will not recognize it).
3. Every time you would like to make a configuration change, you will need to stop the service, make your changes then restart the service. If you do not stop the service, the changes will not be saved.

These are the three things I noticed when setting up my FreeFTP server. It is really easy to set up and it is a Free sFTP server (the only one that is not command line based :D ) Users can be added in less the 10 seconds, and even with these configurations, only 10 minutes to set up. I recommend it to anyone who would like to try it! :D


Joel Ferreira
September 24, 2011

I have been fighting with this also trying to run as a service.

The issue is that two separate program instances open, and then their settings get screwed up.

When the program is ran as a service it looks here for config:
C:\Program Files\freeFTPd\freeFTPdservice.cfg

When you open the GUI as a USER and hit Save & Apply… your config goes to your /users/ folder i.e. here:
C:\Users\jferreira\AppData\Local\VirtualStore\Program Files\freeFTPd\freeFTPdservice.cfg

Service tries to start… uses the WRONG cfg file and it never works.

Open the GUI… save you settings… go find the config file in your /users/ directory (you may have to search for it).

Copy this file into C:\Program Files\freeFTPd\ and restart. It will work !!!

I think this has something to do with a Server 2003\2008 environment.

March 16, 2012

Joel, I am using this in Windows Server 2008. You fix worked perfectly! Thank you.

Chris Goelz
December 25, 2012

Thank you Joel for your fix!

This approach will require you to copy the .cfg file each time you change the configuration. Alternatively you can run the client GUI as administrator, which will write your changes to the same location the service uses (C:\Program Files (x86)\freeFTPd)\freeFTPdservice.cfg) so that you don’t need to copy the file.

Stop the freeFTPdService.

Run the FreeFTPd GUI AS Administrator.

Click the FreeFTPd taskbar icon and make your configuration changes.

Apply & save your changes.

Right click the taskbar icon and Quit.

Restart the freeFTPdService.

February 13, 2013

Can any one please explain how to setup FTP with SSL certificate.

Thank you much appreciated.

March 15, 2013

I’ve been using this app for years, and I also struggled with this for a bit. But, here is what I’ve done to make it work as a service and run without any active user profiles logged into the server. If you run the app/process under your logged in username, when you log out, the process is killed and thus you cannot connect to the (s)ftp services.

When installing the app, select to run as service. After configuring the application settings the way you want, such as user, directories, etc, Apply & Save. Close the GUI window, then open task manager and kill the PID for FreeFTPdService.exe*32. Then go to your services control panel and start the freeFTPdService. It will run as the Local Admin account without issues. Set the service to start automatically. The PID us running as SYSTEM. Windows 2008 R2 SP1.

August 8, 2013

W2K3x64 R2 server with freeFTPd version 1.0.11

Have tried all the suggestions, but still cannot ftp to the server without having a user logged in.

November 6, 2013

have the same issue on windows 2003 server.

I tried Chris’ solution and it does not work for me.

I want to try joel’s, but I don’t see freeFTPdservice.cfg in the AppData path. it’s in the C:\Program Files\freeFTPd\freeFTP folder.

Please help?

Leave a comment