Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I'm having trouble getting an FTP server setup on Windows 7.

I've added the service using Control Panel -> Programs -> Turn Windows features on and off.

I can see the service has started in Control Panel -> Services.

But then when I fire up a Windows command-line window, cmd, I get Not connected.,

C:\Users\mattf>ftp localhost
ftp> ls
Not connected.
ftp> open localhost
ftp> ls
Not connected.
ftp> dir
Not connected.
ftp> quit

C:\Users\mattf>

And that's as far as I've got. I have no idea why this isn't working - could it be firewall settings?

share

locked by Tom O'Connor Sep 4 '13 at 8:51

This post has been locked due to the high amount of off-topic comments generated. For extended discussions, please use chat.

    
First, it's better to add it through the "Add Features" option from the server management console than to do it the route that you went. Second, make sure you have IIS Management Studio 6.0 installed, as it is required even on Windows 7 to manage FTP. Do you have that installed? –  phoebus Nov 16 '09 at 1:36
    
I don't think there's a Server Management Console in Windows 7. If there is, I don't know how to access it. Also, on my build, the FTP Service is managed through IIS 7.5 management console. –  Jason R. Coombs Nov 16 '09 at 3:17
    
Sorry, for some reason I was thinking you were talking about 2008, not 7. –  phoebus Nov 16 '09 at 5:45

6 Answers 6

up vote 28 down vote accepted

I just replicated your results.

Contrary to Phoebus' comment, it appears you manage Windows 7 FTP sites with the same 7.5 management console as the web services.

Also, it appears as if Microsoft does not create an FTP site when the FTP service is created (as was done in the past).

After you've installed the FTP Service and IIS Management Console, perform the following steps.

  1. Run Administrative Tools | Internet Information Services (IIS) Manager
  2. Expand the local machine.
  3. Right-click Sites and Add FTP Site.
  4. Call it "Default FTP Site" with a path of "C:\inetpub\ftproot"; hit next
  5. Enable Start FTP site automatically, select Allow SSL; hit next
  6. Enable Anonymous Authentication; hit Finish

You should now be able to FTP to localhost. You may choose different options, but the options described above work for me and are very similar to the default options in IIS 6 FTP.

Note, you may also need to enable the FTP server in the firewall. For that use the following command.

netsh advfirewall firewall set rule group="FTP Server" new enable="yes"
share

If all you want is a simple FTP server that you can set up and tear down easily I wouldn't suggest using the IIS method and getting everything configured. I had to do this last week to ftp the running-config from one of our Cisco switches. I looked around a bit and saw talk of using IIS which I thought was overkill. I stumbled across ftpdmin - http://www.sentex.net/~mwandel/ftpdmin/

I downloaded the binary, ran it from the command line like so: C:\> \path\to\ftpdmin.exe C:\path\to\ftp\root

If you're looking for a more permanent solution but don't really want to muck with IIS you could try FileZilla - http://filezilla-project.org/

share
    
+1 ... I agree with the simplicity comment .. and both alternate suggestions are good. –  tomjedrz Nov 16 '09 at 6:18
    
If IIS is allready installed on the system, there is no reason of adding another program. –  Dementic Aug 24 '12 at 19:11

When installing the FTP service, under Internet Information Services, you tick FTP server (which you've probably already done, but also expand it and make sure the FTP service is also ticked. If both of these are checked and you have also installed the IIS Management Console (under web management tools), you will then see the option for FTP server.

I also tried it and found that the FTP service is needed to be installed as well. Then the option for FTP appeared.

share

Jason Coombs left out one step that I struggled with for a little while:

Revised step 6:

Enable Anonymous Authentication; Select "Anonymous users" in Authorization: Allow access to: and click "Read" and "Write" under Permissions. Then select "Finish".

share

Short answer: Don't. The world has enough FTP servers already, and running one on a non server OS is asking for trouble.

I hope the OP is running this on an internal network only, and not with anonymous access, and I hope that some form of transport layer encryption is enabled.

For others thinking of doing this sort of thing, please first take a step back and see if you really need an FTP server. There may be other and better ways of doing what you need - and of course you can ask "question 0" on here!

share
    
Tom get a coffee and relax, some people need to have FTP, dont be so negative, the cost of sending data across the planet by couriers is a lot and still no fully safe. do you have any idea how I can transfer 250MB across the planet without using couriers?? I will apreciate lots –  user137934 Sep 21 '12 at 17:32
    
Couriers? Try SCP :) –  Tom Newton Sep 23 '12 at 11:53
    
-1 not a helpful answer to the question. –  LarryK Apr 7 '13 at 11:48
    
If I could, you'd get a down-vote for me for pontificating without knowing the back story. For example, I need a local ftp server in order to work on the firmware for a wireless router. No ftpd, no work. The overall question here was helpful. –  JimR Mar 15 at 21:15
    
Jim, I know there's places where FTP is unavoidable: my question is "is this one of them?" - and this question is so often not asked - hence the proliferation of ftp servers with creds stolen left and right... –  Tom Newton Mar 19 at 21:12

Setting up simple ftp server is the best way to transfer data from one point to another.

The fastest and easiest way to do it, is to install FileZilla Server on the computer You want to send data to: http://sourceforge.net/projects/filezilla/files/FileZilla%20Server/

It's very easy to configure.

Install FileZilla Client on the computer You have data: http://sourceforge.net/projects/filezilla/files/FileZilla_Client/

Now check on what IP is listening computer You want to send data to: whatismyipaddress.com

And copy that IP address to Your client, port will be default so You don't have to provide it unless You have changed it in server settings.

Then use Login and Password You have set in the FileZilla Server and You're ready to connect.

share
    
As sites can fail to respond for any number of reasons, please refrain from linking to a site without also replying with the relevant section. –  tristan Aug 12 '13 at 20:38

protected by Michael Hampton Sep 4 '13 at 8:26

Thank you for your interest in this question. Because it has attracted low-quality answers, posting an answer now requires 10 reputation on this site.

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.