- 安装 FTP 服务组件
- 配置 FTP 站点
- 设置用户权限和隔离用户
- 配置防火墙和高级选项
第一步:安装 FTP 服务组件
在开始配置之前,必须先安装 IIS(Internet 信息服务)中的 FTP 服务。

-
打开“添加或删除程序”
点击“开始” -> “设置” -> “控制面板” -> “添加或删除程序”。
-
启动“Windows 组件向导”
在左侧的“或选择一个控制面板图标”中,点击“添加/删除 Windows 组件”。
(图片来源网络,侵删) -
选择 IIS 组件
- 在“Windows 组件向导”对话框中,找到并勾选 “应用程序服务器”。
- 点击“详细信息”按钮。
-
选择 FTP 服务
- 在“应用程序服务器”的详细窗口中,勾选 “Internet 信息服务 (IIS)”。
- 点击“详细信息”按钮。
-
勾选 FTP 服务
- 在“Internet 信息服务 (IIS)”的详细窗口中,展开 “文件传输协议 (FTP) 服务”。
- 勾选 “FTP 服务” 和 “FTP 服务管理单元”。
- 点击“确定”返回。
-
完成安装
(图片来源网络,侵删)- 点击“下一步”,系统会自动从安装源文件中复制所需的文件并完成安装。
- 安装完成后,点击“完成”关闭向导。
第二步:配置 FTP 站点
安装完成后,我们需要创建并配置一个新的 FTP 站点。
-
打开 IIS 管理器
- 点击“开始” -> “程序” -> “管理工具” -> “Internet 信息服务 (IIS) 管理器”。
-
创建新 FTP 站点
- 在 IIS 管理器左侧的控制台树中,右键点击你的服务器名称(如
SERVERNAME (本地计算机))。 - 选择“新建” -> “FTP 站点...”。
- 在 IIS 管理器左侧的控制台树中,右键点击你的服务器名称(如
-
FTP 站点创建向导
- 描述:为你的 FTP 站点输入一个描述性的名称,公司文件服务器”,这个名称仅供管理识别,不会对外公开。
- IP 地址和端口:
- IP 地址:如果你的服务器有多个网卡,请选择一个用于 FTP 服务的 IP 地址,如果只有一个网卡或希望所有 IP 都能访问,选择“全部未分配”。
- TCP 端口:FTP 默认使用 21 端口,除非有特殊需求,否则保持默认即可。
- FTP 站点主目录:
- 路径:点击“浏览”按钮,选择你希望作为 FTP 文件夹的本地路径。
D:\FTPFiles,请确保这个文件夹已经创建,并且你对该文件夹有完全控制权限。 - 权限:这里有两个选项:
- 读取:允许用户下载文件和查看目录列表。
- 写入:允许用户上传文件、创建和修改目录。
- 重要提示:出于安全考虑,建议只勾选“读取”,在用户权限级别再进行更精细的控制,如果需要上传功能,可以在后续步骤中为特定用户添加写入权限。
- 路径:点击“浏览”按钮,选择你希望作为 FTP 文件夹的本地路径。
- FTP 站点访问权限:
- 匿名:允许任何用户无需密码即可访问,如果这是一个公共下载区,可以勾选,如果需要身份验证,请不要勾选。
- 纯文本:用户名和密码将以明文形式传输。非常不安全,仅建议在内网信任网络中使用。
- 基本:用户名和密码经过 Base64 编码,但可以被轻易破解,比纯文本好一点,但仍不安全。
- Windows 身份验证:使用 Windows 的用户账户进行验证,这是最安全的方式,强烈推荐使用。
- 重要提示:勾选 “匿名” 意味着任何人都可以访问,如果你设置了隔离用户或特定用户权限,匿名访问可能会被覆盖或导致冲突,对于大多数场景,建议不勾选“匿名”,只使用“Windows 身份验证”。
-
完成创建
点击“完成”,新的 FTP 站点就会出现在 IIS 管理器中。
第三步:设置用户权限和隔离用户
这是 FTP 配置中最关键的安全环节,我们推荐使用 “隔离用户” 模式,它能为每个 FTP 用户创建一个独立的、私有的主目录,防止用户之间互相访问文件。
隔离用户(推荐)
-
创建用户账户
- 在配置 FTP 站点之前,先在 Windows Server 2003 中创建需要访问 FTP 的用户账户。
- 点击“开始” -> “程序” -> “管理工具” -> “计算机管理”。
- 展开“系统工具” -> “本地用户和组” -> “用户”。
- 右键点击“用户”,选择“新用户”,创建用户名(如
ftpuser1,ftpuser2)并设置密码,确保“用户下次登录时须更改密码”和“用户不能更改密码”不要勾选,并勾选“密码永不过期”。
-
创建用户主目录结构
- 在你之前为 FTP 站点指定的主目录下(
D:\FTPFiles),创建一个名为LocalUser的文件夹。 - 在
LocalUser文件夹内,为每个 FTP 用户创建一个以其用户名命名的文件夹。D:\FTPFiles\LocalUser\ftpuser1D:\FTPFiles\LocalUser\ftpuser2
- 这样,
ftpuser1的主目录就是D:\FTPFiles\LocalUser\ftpuser1,ftpuser2的主目录是D:\FTPFiles\LocalUser\ftpuser2。
- 在你之前为 FTP 站点指定的主目录下(
-
配置 FTP 站点属性
- 在 IIS 管理器中,右键点击你创建的 FTP 站点,选择“属性”。
- 切换到 “安全账户” 选项卡。
- 勾选“允许匿名连接”,这里的“匿名”在隔离用户模式下有特殊含义,它会将用户映射到其同名的主目录,而不是一个固定的匿名账户。
- 勾选“只允许匿名连接”,这非常重要!它将强制所有用户都必须使用其 Windows 账户登录,禁用了匿名访问,确保了安全性。
- 点击“确定”。
-
设置 NTFS 权限
- 这是隔离用户能够正常工作的最后一步,你需要为每个用户设置其个人文件夹的 NTFS 权限。
- 右键点击
D:\FTPFiles\LocalUser\ftpuser1文件夹,选择“属性” -> “安全”。 - 点击“编辑” -> “添加”,输入
ftpuser1用户名,点击“检查名称”和“确定”。 - 在用户列表中,选中
ftpuser1,然后在下方的权限列表中,只勾选“完全控制”。 - 关键:确保
ftpuser1对D:\FTPFiles和D:\FTPFiles\LocalUser文件夹只有 “读取和执行”、“列出文件夹内容”、“读取” 的权限,绝对不能有“写入”或“完全控制”权限,否则用户就可以跳出自己的主目录,访问其他用户的文件。 - 对
ftpuser2重复此操作。
非隔离用户(不推荐)
如果不使用隔离用户,所有 FTP 用户将共享同一个主目录(如 D:\FTPFiles),你只需要在 NTFS 权限中,为不同的用户组或用户分配不同的权限即可,这种方法安全性较低,不推荐在生产环境中使用。
第四步:配置防火墙和高级选项
配置 Windows 防火墙
FTP 服务需要开放 21 端口(控制端口)和 20 端口(数据端口),Windows 防火墙可能会阻止这些连接。
- 点击“开始” -> “设置” -> “控制面板” -> “Windows 防火墙”。
- 在“例外”选项卡中,点击“添加端口”。
- 名称:输入 "FTP"。
- 端口号:输入
21。 - 协议:选择 "TCP"。
- 点击“确定”。
- 确保 "FTP" 例外已经被勾选。
- 注意:如果使用被动模式(PASV),还需要开放一个端口范围,在 IIS 管理器中右键站点 -> “属性” -> “FTP 站点”选项卡 -> 点击“高级” -> 在“TCP 端口”中输入一个范围,如
6000-6010,然后需要在防火墙中为这个范围添加例外。
高级配置(可选)
在 IIS 管理器中,右键点击 FTP 站点 -> “属性”:
- 消息:你可以设置连接、退出和最大连接数时显示给用户的欢迎信息。
- 目录列表样式:选择 UNIX 或 MS-DOS 风格。
- 日志记录:建议启用日志记录,用于审计和排查问题。
- 目录安全性:可以在这里设置 IP 地址访问限制,例如只允许来自公司内网的 IP 地址访问。
连接测试
配置完成后,你可以在客户端进行测试:
- 资源管理器方式:在地址栏输入
ftp://你的服务器IP地址,如果配置了隔离用户,系统会弹出登录窗口,输入用户名和密码即可。 - 命令行方式:在命令提示符中输入
ftp 你的服务器IP地址,然后使用open、user、get、put等命令进行操作。 - FTP 客户端软件:使用 FileZilla、CuteFTP 等专业工具进行连接和文件传输。
安全最佳实践总结
- 使用隔离用户模式:为每个 FTP 用户创建独立的主目录。
- 禁用匿名访问:在“安全账户”中勾选“只允许匿名连接”,强制使用身份验证。
- 使用强密码:为 FTP 用户设置复杂的密码。
- 限制 NTFS 权限:遵循最小权限原则,只授予用户完成其任务所必需的最小权限。
- 定期更新:虽然 Windows Server 2003 已停止支持,但在必须使用的情况下,确保系统所有补丁都已打上。
- 考虑使用 SFTP/FTPS:如果条件允许,强烈建议升级到更新的操作系统(如 Windows Server 2025/2025/2025),并配置基于 SSL/TLS 的 FTPS 或 SFTP(需第三方软件),以实现数据加密传输,彻底解决明文传输的安全隐患。
