Install FTP on Windows Server 2025 | Comprehensive Guide
This guide intends to teach you How To Install FTP on Windows Server 2025 and Create a FTP Site. FTP enables secure file transfers on your Windows Server 2025. Also, it has easy file sharing between local and remote users. You can now proceed to the guide steps below on the Orcacore website to complete the Windows Server 2025 FTP Setup.
Windows Server 2025 FTP Setup | Secure File Transfer Guide
To complete the Windows Server 2025 FTP Setup, you must log in to your Windows Server and ensure that you have IIS enabled on your system. You can Enable IIS by checking this guide on Installing IIS on Windows Server 2025. Then, proceed to the steps below to install the FTP server.
Also, you can check the Video Tutorial for Install & Configure FTP on Windows Server 2025:
1. Install FTP on Windows Server 2025
Once you are finished enabling IIS, from your server manager click on Add Roles and Features.

Then, in the Installation Type Section, you need to click on Role-based or Featured-based Installation and click Next.
Now you must select the destination server. You can click on Select a server from the server pool and click Next.
In the server roles, expand the web server IIS, check the box next to FTP Server, and click Next.
In the Features section, you can keep the default options and click Next.
Then, read the confirmation for FTP server installation on Windows Server 2025 and click Install.
Once your FTP setup is completed, click on the Close button.
Once you are done with Windows Server 2025 FTP Setup, you can proceed to the next step to create an FTP site on Windows Server 2025.
2. Add FTP Site on Windows Server 2025
From your server manager dashboard from the Tools menu click on the Internet Information Services (IIS) Manager to open the IIS Server Console.
From the expand the localhost site, right-click on sites, and click Add FTP Site.
Now you must choose a name for your FTP site and define a path for it. When you are done, click Next.
Now in the Binding and SSL setting window, you need to choose the FTP port and if you have SSL you need to define it.
Note: If you don’t have an SSL certificate, check the box next to No SSL and click on Next on Windows Server 2025. In this guide, we don’t have an SSL certificate, so we choose No SSL.
Now you will see the Authentication and Authorization information window. In this section, set Authentication to Basic so that the users you create in the system only have access to FTP.
In the Authorization section, select All users, check the boxes next to the Read and Write, and click on the Finish button.
Important Note: If you choose Anonymous in this section, anyone with your FTP address can access your FTP service and files.
Once you are done, you will see that your FTP site has been created on Windows Server 2025.
At this point, you must allow your FTP site port through the Windows Server 2025 firewall. To do this, proceed to the next step.
3. Configure Firewall Settings for FTP on Windows Server 2025
First, you must search for Advanced Firewall Settings and open the Windows Defender Firewall with Advanced Settings.
At the Windows Defender Advanced settings window, click on the inbound rules. And, on the top right of the window click on the New Rule to open a firewall port.
You will see a new wizard. You must click on the Port option and click Next.
At this point, you need to check the box next to the TCP. And in the specific local ports enter your FTP port and click Next.
Next, you need to allow connections for the FTP firewall port on the Windows server 2025 and click on the Next button.
Now depending on what you desire, you need to apply the new rule. You can either choose “Domain, Private, or Public”. Press Next once you are done.
Now enter the name of the rule which is FTP and a description if you want. Then, press the Finish.
You can back to the Windows Defender Firewall Advanced settings window and you will see the FTP new rule is created on your system.
That’s it, you are done with Windows Server 2025 FTP Setup and Create FTP Site.
Conclusion
FTP (File Transfer Protocol) on Windows Server 2025 enables the transfer of files between computers over a TCP/IP network. It facilitates uploading and downloading files to and from an FTP server.
Hope you enjoy the Windows Server 2025 FTP Setup Guide. Please subscribe to us on Facebook, YouTube, and X.
Also, you may like to read the following articles:
Install Ubuntu in WSL Windows 10/11
Best Browsers for Windows in 2025
Best Online Websites for Identifying Fonts from Images
Microsoft Windows 12 Introduction
Set up FTP Server on Windows Server 2022
FAQs
How does FTP work on Windows Server 2025?
FTP operates on a client-server model, where the server hosts files and the client accesses or uploads files. Windows Server 2025 includes an FTP server service that can be managed via command-line or graphical interfaces.
What ports does FTP use?
FTP typically uses port 21 for control commands and port 20 for data transfer in active mode. The passive mode uses a range of ports for data transfer.
What is the difference between active and passive FTP modes?
In active mode, the server initiates the data connection to the client. In passive mode, the client initiates both control and data connections, which is useful for traversing firewalls.
Alternative Solutions for File Transfer in Windows Server 2025
While FTP is a well-established method for file transfer, it’s worth exploring alternative solutions, especially considering security concerns and modern features. Here are two different approaches to consider in Windows Server 2025:
1. Using Secure Shell (SSH) with SFTP
Explanation:
Secure Shell (SSH) provides a secure channel for various network services, including file transfer. SFTP (SSH File Transfer Protocol) is a secure file transfer protocol built on top of SSH. It offers encrypted communication, protecting data during transit, which is a significant advantage over traditional FTP. Using SSH/SFTP eliminates the need for separate firewall rules for FTP data channels, simplifying network configuration and improving security. Many open-source SSH servers and clients are available, making it a cost-effective solution. This method also allows for command-line automation and integration with scripting languages. The process of setting up SFTP in Windows Server 2025 includes installing an OpenSSH server, configuring user permissions, and then using an SFTP client to transfer files.
Configuration Steps:
-
Install OpenSSH Server:
- Open Server Manager, click "Add roles and features."
- Select "Role-based or feature-based installation."
- Choose the destination server.
- Select "Features."
- Select "OpenSSH Server" and complete the installation.
-
Configure SSH Server:
- Edit the
sshd_config
file (usually located atC:ProgramDatasshsshd_config
). - Configure settings like port, authentication methods, and authorized users. For example, you might want to disable password authentication and rely on key-based authentication for enhanced security.
- Restart the SSH service:
Restart-Service sshd
- Edit the
-
Create User Accounts and Permissions:
- Create Windows user accounts for those who will access the SFTP server.
- Set appropriate file system permissions on the directories where users will upload/download files.
-
Use an SFTP Client:
- Install an SFTP client like FileZilla, WinSCP, or Cyberduck on the client machine.
- Connect to the Windows Server 2025 using the server’s IP address, the configured SSH port (default is 22), and the user credentials.
Code Example (PowerShell for automating user creation and permission setting):
# Create a new user
$username = "sftpuser"
$password = "P@sswOrd123" # Replace with a strong password
# Create a secure password object
$SecurePassword = ConvertTo-SecureString $Password -AsPlainText -Force
# Create the user account
New-LocalUser -Name $username -Password $SecurePassword -Description "SFTP User"
# Create a directory for the user
$directoryPath = "C:SFTPRoot$username"
New-Item -ItemType Directory -Path $directoryPath
# Set permissions on the directory (Full control for the user)
$acl = Get-Acl -Path $directoryPath
$userAccount = New-Object System.Security.Principal.NTAccount($username)
$fileSystemRights = "FullControl"
$inheritanceFlags = "ContainerInherit, ObjectInherit"
$propagationFlags = "None"
$accessControlType = "Allow"
$fileSystemAccessRule = New-Object System.Security.AccessControl.FileSystemAccessRule($userAccount, $fileSystemRights, $inheritanceFlags, $propagationFlags, $accessControlType)
$acl.AddAccessRule($fileSystemAccessRule)
Set-Acl -Path $directoryPath -AclObject $acl
Write-Host "SFTP User '$username' created with home directory '$directoryPath' and appropriate permissions."
2. Leveraging Cloud Storage Services (e.g., Azure Blob Storage, AWS S3)
Explanation:
Cloud storage services provide scalable, secure, and highly available storage solutions. Instead of setting up a traditional FTP server, you can use these services to store and share files. This approach offers several benefits:
- Scalability: Cloud storage automatically scales to accommodate growing storage needs.
- Security: Cloud providers invest heavily in security measures, including encryption, access controls, and compliance certifications.
- Availability: Cloud storage services are designed for high availability, ensuring that files are accessible even in the event of hardware failures.
- Cost-Effectiveness: You only pay for the storage and bandwidth you use.
In Windows Server 2025, you can integrate with cloud storage services using their respective SDKs or command-line tools. For example, you can use the Azure PowerShell module to manage Azure Blob Storage. This method is suited for file storage and sharing and offers built-in redundancy and security.
Configuration Steps (Example using Azure Blob Storage):
-
Create an Azure Account and Storage Account:
- If you don’t have one, create an Azure account.
- Create a Storage Account within the Azure portal.
-
Create a Blob Container:
- Within the Storage Account, create a Blob container to store your files.
-
Install Azure PowerShell Module:
Install-Module -Name Az -AllowClobber
-
Connect to Azure:
Connect-AzAccount
-
Upload Files (Example):
# Set variables $resourceGroupName = "YourResourceGroupName" $storageAccountName = "YourStorageAccountName" $containerName = "yourcontainer" $filePath = "C:pathtoyourfile.txt" $blobName = "file.txt" # Get the storage account context $storageAccount = Get-AzStorageAccount -ResourceGroupName $resourceGroupName -Name $storageAccountName $context = $storageAccount.Context # Upload the file Set-AzStorageBlobContent -File $filePath -Container $containerName -Blob $blobName -Context $context -Force Write-Host "File '$filePath' uploaded to Azure Blob Storage container '$containerName' as '$blobName'"
-
Configure Access Control:
- Azure Blob Storage offers various access control mechanisms, including Shared Access Signatures (SAS) and Azure Active Directory (Azure AD) integration.
- Use these mechanisms to grant users or applications access to specific files or containers.
Code Example (PowerShell for Uploading a file to Azure Blob Storage):
#Requires -Modules Az.Storage
# Set variables
$resourceGroupName = "YourResourceGroupName" # Replace with your resource group name
$storageAccountName = "YourStorageAccountName" # Replace with your storage account name
$containerName = "your-container-name" # Replace with your container name
$filePath = "C:pathtoyourlocalfile.txt" # Replace with the path to your local file
$blobName = "remote-file-name.txt" # Replace with the desired name for the blob in Azure
# Get the storage account
$storageAccount = Get-AzStorageAccount -ResourceGroupName $resourceGroupName -Name $storageAccountName
# Get the storage context
$context = $storageAccount.Context
# Upload the file
try {
Set-AzStorageBlobContent -File $filePath -Container $containerName -Blob $blobName -Context $context -Force
Write-Host "Successfully uploaded '$filePath' to '$blobName' in container '$containerName'"
} catch {
Write-Host "Error uploading file: $($_.Exception.Message)"
}
These alternative solutions offer enhanced security, scalability, and manageability compared to traditional FTP. When choosing a file transfer method, carefully consider your specific requirements and security policies. Installing FTP on Windows Server 2025 may not be the only answer.