How to configure FTP Server in IIS 7.5 and IIS 8 on Windows Server 2008 R2 and 2012

Windows server provides out-of-the-box FTP server feature in IIS. When I say OTB, I mean it.  Most of the process to configure FTP server in IIS 7.5 and Windows Server 2008 (or R2) and configure FTP server in IIS 8 and Windows Server 2012 are same.

To configuration FTP server in IIS following steps should be followed:

  1. Install Web Server (IIS) in Windows Server 2008 R2 or Windows Server 2012 (Which is very easy to figure out).

  2. Add role service - FTP Server.

  3. Create your first or I say "Hello World FTP" site.

Here is the step-by-step guide to Install IIS  Web Server and add FTP server roles in Windows Server 2008 R2

Step: Open Server manager  and right click on Roles and select "Add Roles"

Add roles

Step: On click "Add Roles" will bring up some begin Add Roles wizard and lots of stuffs to read if you want, once done click next

Add roles wizard

Step: Next is select server roles. Now if you have not install Web Server IIS already select from the list and click next

Select server roles

Step: Next is an introduction to Web Server IIS, go ahead and read it out and click next

Introduction to Web Server (IIS)

Step: IIS (as role) comes with role services. This page provides options to selected role service you require in your IIS Web Server role, now if you will scroll down a little bit then you can see "FTP Server" with two sub item in tree as "FTP service" and "FTP extensibility" (optional). Second is optional and can be used to extend FTP service and call or control from your code using Native or Managed API. Don't forget to select "Management Service" under "Management Tools" and click next

Role services

Step: Once you click next, you will be presented installation summary page and click install to start installation of selected roles and services. Once installation is completed you will be seeing following screen

Installation results

Step: This will end up enabling FTP Server in your IIS. Now one thing you can notice is that you will now see an additional folder in your IIS inetpub (c:\inetpub) folder named "ftproot". Yes it is similar to "wwwroot', it is the default location for FTP sites which you can host in the IIS FTP server.

ftproot folder

Step: Next we will create our First FTP site > Open Internet Information Service (IIS) Manager  or Win + R > inetmgr > Right click on your IIS server name and click on "Add FTP Site"

Add FTP site

Step: Next you need to provide information for the new FTP site > Enter your FTP site name and physical path (or root directory) for the FTP site

Add FTP site

Step: Once done click next

FTP Site name and physical path

Step: Now you need to provide your desired Binding and SSL settings for the FTP site > For sake of example I will keed IP Address as "All Unassigned" and default port 21.

Check "Start FTP site automatically" unless you are control freak.

Select No SSL for now (as you can change all this settings later also) and click next

Binding and SSL settings

Step: Configure authentication and authorization information the new FTP site.

Select Basic authentication and > Allow Access to as "All Users" > Check Read > Write Permissions and click next.

Authentication and authorization information

That's it. You have your first FTP site ready to connect and use. In the IIS server tree if you expand and click on your FTP site you can see all available FTP options in the adjacent right pane.

Similarly you can configure FTP Server in IIs 8 and Windows Server 2012

Step: Open Server Manager > Click on "Manage" in top-right corner > Select "Add Roles and Features"

Add roles and features

Step: That brings up the Add Roles and Features Wizard page > click next

Add roles and features wizard

Step: Next you need to select Installation type, select > "Role-based or feature-based installation" and click next

Role based or feature based installation

Step: Select the server on which you wish to install the FTP Server in IIS for and click next

Add roles and features wizard - select a server

Step: Next you need to select server roles > Check Web Server (IIS) from the list and expand the sub list and check FTP Server > FTP Service and FTP extensibility (optional) > Click next

FTP extensibility

Step: Now you will be viewing Select Features step > Nothing to be done here for the current purpose so click next

Select features screen

Step: Next is the installation summary or confirm installation selections > Check "Restart the destination server automatically if required" (optional) and click "Install"

Confirm installation selections

Step: Now you can see the installation progress and after sometime the install completes (my machine did not restarted by the way).

Installation in progress

Rest of the steps to create FTP site in IIS remains the same as Windows Server 2008 R2.