IIS 来实现。下面是一个从零开始的详细图文教程。
这是最常用和推荐的方法。
第一部分:安装 FTP 服务器角色打开服务器管理器:
添加角色和功能:
启动安装向导:
选择服务器角色:
完成安装:
打开 IIS 管理器:
创建 FTP 站点:
站点信息:
MyCompanyFTP。D:\FTPRoot。请确保该文件夹已存在,或先创建它。绑定和 SSL 设置:
21。若无冲突,保持默认。身份验证和授权信息:
FTPUser)。如果服务器防火墙开启,需要放行 FTP 端口。
打开“控制面板” -> “Windows Defender 防火墙” -> “高级设置”。 在“入站规则”中,点击“新建规则...”。 规则类型:选择“端口”,下一步。 协议和端口:选择“TCP”,特定本地端口输入21,下一步。
操作:选择“允许连接”,下一步。
配置文件:根据需要勾选(域、专用、公用),通常全选,下一步。
名称:输入一个规则名,如“FTP Server (Port 21)”,完成。
(可选但重要)被动模式端口范围:
FTP 被动模式会使用随机的高位端口。为了确保客户端能正常连接,你最好在防火墙中开放一个端口范围,例如 50000-51000,然后在 IIS 管理器中配置:
50000-51000。TCP 50000-51000 端口范围创建一条新的入站规则。ftp://你的服务器IP地址 或 ftp://你的服务器域名。例如:ftp://192.168.1.100
按回车,系统会提示你输入用户名和密码(如果设置了基本身份验证)。
输入之前授权的 Windows 用户名和密码,看是否能成功登录并浏览/上传/下载文件。
也可以使用专业的 FTP 客户端(如 FileZilla、WinSCP)进行测试,连接时协议选择“FTP”,加密模式根据你的 SSL 设置选择(如果没配 SSL 就选“普通 FTP”)。
适合批量部署或远程管理,更高效。
安装 FTP 角色:
Install-WindowsFeature -Name Web-Ftp-Server -IncludeManagementTools
创建 FTP 目录并设置权限(假设使用 FTPUser 账户):
New-Item -ItemType Directory -Path D:\FTPRoot
# 为FTPUser账户设置目录的完全控制权限(请根据实际需要调整权限)
icacls D:\FTPRoot /grant FTPUser:(OI)(CI)F
创建 FTP 站点:
Import-Module WebAdministration
New-WebFtpSite -Name "PowerShellFTP" -Port 21 -PhysicalPath "D:\FTPRoot" -Force
配置身份验证和授权(设置基本身份验证并禁止匿名):
Set-WebConfigurationProperty -Filter /system.ftpServer/security/authentication/anonymousAuthentication -PSPath IIS:\ -Location "PowerShellFTP" -Name enabled -Value $false
Set-WebConfigurationProperty -Filter /system.ftpServer/security/authentication/basicAuthentication -PSPath IIS:\ -Location "PowerShellFTP" -Name enabled -Value $true
Set-WebConfigurationProperty -Filter /system.ftpServer/security/authorization -PSPath IIS:\ -Location "PowerShellFTP" -Name @{accessType="Allow";roles="";permissions="Read,Write";users="FTPUser"}
启动 FTP 站点:
Start-WebItem -PSPath 'IIS:\Sites\PowerShellFTP'
配置防火墙(使用 PowerShell):
New-NetFirewallRule -DisplayName "FTP Server (Port 21)" -Direction Inbound -Protocol TCP -LocalPort 21 -Action Allow
连接问题:
安全加固:
%SystemDrive%\inetpub\logs\LogFiles 下,定期检查可疑活动。性能与高级配置:
按照以上步骤操作,你应该可以在 Windows Server 2016 上成功搭建并运行一个功能完整的 FTP 服务器。对于生产环境,请务必做好安全配置。