opened image

    IIS (Internet Information Services) is a server software that allows users to create websites and also provides an FTP (File Transfer Protocol) server for transferring files between clients and servers. In this guide, we will walk you through the steps to install and configure IIS FTP server on Windows Server 2019.

    Step 1: Install IIS Server Role

    Before installing the FTP server, you need to install the IIS server role. To do this, follow the steps below:

    Open the Server Manager on your Windows Server 2019.

    Click on the Manage menu and select Add Roles and Features.

    Click on Next and select Role-based or feature-based installation. Select the server where you want to install the role and click Next.

    Select Web Server (IIS) and click on Next.


    Click on Next again and select FTP Server.


    Click on Add Features and then click on Next.


    Click on Install to start the installation process.

    After installation, restart the server.


    Step 3: Set up an FTP server

    After installing the FTP server, you need to configure it. To do this, follow these steps:

    Open Internet Information Services (IIS) Manager.

    In the IIS Manager window on the left you will have a tree of servers. Expand it, select your server, then select Sites, then right-click and select Add FTP Site….

    • Enter a name for your FTP site, as well as the full path to the folder you want to make available via FTP. Click Next.

    • In the next window, enter the IP address for the FTP site. If you want the site to be accessible to all IPs, just leave this field blank. You can also specify a port (default 21).
    • In the SSL section, you can select No SSL for easy setup, but for a production server, it's better to use SSL.

    • On the next screen, in the Authentication and Authorization Information section, select Basic for Authentication, and for Authorization, select "Specified users" and enter a username. For Permissions, select Read and Write. Click Finish.


    • After a successful addition, we can see the following result.


    Step 4: Check the FTP Server

    After setting up the FTP server, you need to check its operation. We can do this through our favorite FileZilla browser. But when connecting, this situation may arise.


    The error "Failed to get directory listing" is often related to issues with active and passive FTP modes. But in our case, we did not open the necessary ports in the Firewall. Let's do it.


    Step 5: Set up firewall access

    For an FTP server, you need to make sure the appropriate ports are open. Typically FTP uses port 21 for command channel and ports 1024-65535 for passive mode. Here's how to do it:

    1. Open Control Panel. Select System and Security, then Windows Defender Firewall.
    2. On the left, select Advanced settings. This will open the Windows Defender Firewall with Advanced Security window.
    3. Here you can see all incoming and outgoing rules, as well as create new ones. To create a new rule, select Inbound Rules on the left, then New Rule... on the right.
    4. In the New Rule Wizard, select Port and click Next.
    5. Make sure TCP is selected. In the Specific local ports field, enter "21.1024-65535" and click Next.
    6. Select Allow the connection and click Next.
    7. Leave all three options (Domain, Private, Public) checked and click Next.
    8. Enter a name for the rule, such as "FTP" and click Finish.

    Repeat the process for outbound rules. The firewall should now allow traffic on the required ports to your FTP server.

    Keep in mind that if you have a third-party firewall or a hardware firewall, you may need to configure them separately.

    After that, the FTP server will be accessible through the firewall.



    Installing and configuring IIS FTP Server on Windows Server 2019 is not a difficult task. By following the instructions above, you will be able to quickly set up an FTP server and share files between clients and the server. Don't forget to also set up firewall access to ensure file transfers are secure.