FTP 服务器完整搭建教程
本教程将分为以下几个部分:

(图片来源网络,侵删)
- 什么是 FTP? - 理解基本概念
- 准备工作 - 在开始前你需要做什么
- 在 Windows 上搭建 FTP 服务器 (IIS) - 适合 Windows 专业版/企业版用户
- 在 Windows 上搭建 FTP 服务器 (FileZilla Server) - 跨平台,功能强大,推荐
- 在 macOS 上搭建 FTP 服务器 - 适合苹果电脑用户
- 如何连接到你的 FTP 服务器? - 使用客户端软件访问
- 重要安全事项 - 必须阅读,否则你的服务器将非常危险!
- 进阶配置:使用 SFTP (更安全的替代方案) - 强烈推荐
什么是 FTP?
FTP (File Transfer Protocol,文件传输协议) 是一种用于在网络上客户端和服务器之间进行文件传输的标准协议。
- 服务器: 一台一直开着的电脑,上面存放着文件。
- 客户端: 你的另一台电脑,通过 FTP 客户端软件连接到服务器,上传或下载文件。
FTP 的工作模式:
- 主动模式: 客户端连接服务器的 21 号端口(控制端口),然后服务器主动连接客户端的一个随机端口(数据端口),这种模式在客户端有防火墙时可能会被阻止。
- 被动模式: 客户端连接服务器的 21 号端口后,客户端再主动连接服务器的一个随机端口(数据端口),这种模式更常用,因为能更好地穿过客户端的防火墙。
准备工作
在开始之前,请确保你已准备好以下事项:

(图片来源网络,侵删)
- 一台主机: 这台电脑将作为 FTP 服务器,它需要保持开机和联网状态。
- 操作系统: Windows 10/11 专业版/企业版,或者 macOS。
- 静态局域网 IP 地址: 这非常重要!如果你的服务器 IP 地址经常变化,客户端将无法连接。
- 如何设置:
- Windows:
设置->网络和 Internet->更改适配器选项-> 右键点击你正在使用的网络(如“以太网”或“WLAN”) ->属性->双击 "Internet 协议版本 4 (TCP/IPv4)"-> 选择使用下面的 IP 地址,然后输入一个固定的 IP(168.1.100),子网掩码通常是255.255.0,网关和 DNS 可以填你的路由器地址,如168.1.1。 - macOS:
系统偏好设置->网络-> 选择你的连接 ->高级->TCP/IP-> 在配置 IPv4中选择手动,然后填入 IP、子网掩码和路由器地址。
- Windows:
- 如何设置:
- 关闭防火墙/杀毒软件(暂时): 在配置过程中,为了防止连接被阻止,可以先暂时关闭 Windows Defender 防火墙或第三方杀毒软件,配置完成后,再按规则重新开启。
方法一:在 Windows 上搭建 FTP 服务器 (IIS)
此方法仅适用于 Windows 10/11 专业版、企业版或教育版,家庭版没有 IIS。
步骤 1: 安装 IIS 和 FTP 服务
- 打开 “控制面板” -> “程序” -> “启用或关闭 Windows 功能”。
- 在弹出的窗口中,展开 “Internet 信息服务 (IIS)”。
- 勾选以下项目:
- FTP 服务器
- FTP 服务
- FTP 扩展性
- Web 管理工具
IIS 管理控制台
- FTP 服务器
- 点击 “确定”,等待 Windows 安装完成。
步骤 2: 创建 FTP 站点
- 按
Win + R键,输入inetmgr并回车,打开 IIS 管理器。 - 在左侧窗口中,右键点击 “网站”,选择 “添加 FTP 站点...”。
- 站点信息:
- FTP 站点名称: 输入一个你喜欢的名字,
MyFTP。 - 物理路径: 选择你希望作为 FTP 文件夹的路径。
D:\FTP_Files。注意: 这个文件夹需要先创建好,并确保 IIS_IUSRS 用户组有读取和写入权限(右键文件夹 ->属性->安全->编辑->添加-> 输入IIS_IUSRS-> 勾选允许读取和写入)。
- FTP 站点名称: 输入一个你喜欢的名字,
- 绑定和 SSL 设置:
- IP 地址: 选择你之前设置的静态 IP 地址,或选择“全部未分配”。
- 端口: FTP 默认端口是
21,可以保持不变。 - SSL: 初学者选择“无”,如果选择“需要”,你需要配置 SSL 证书,否则无法连接。
- 身份验证和授权信息:
- 匿名: 取消勾选,我们不希望任何人都能访问。
- 基本: 勾选,这是最常用的认证方式。
- 授权:
- 权限: 选择“读取”和“写入”。
- 用户: 选择“指定用户”,然后点击“选择用户”,输入你的 Windows 用户名和密码(例如你的登录账户)。
- 点击 “完成”。
步骤 3: 配置防火墙
- 打开 “Windows Defender 防火墙”。
- 点击左侧的 “允许应用或功能通过 Windows Defender 防火墙”。
- 点击 “更改设置”(需要管理员权限)。
- 找到并勾选 “文件传输协议 (FTP)”,确保它在你的网络类型(如“专用”)下是勾选状态。
- 点击“确定”。
你的 FTP 服务器已经搭建完成!可以使用下面的方法连接测试。
方法二:在 Windows 上搭建 FTP 服务器 (FileZilla Server)
这是一个跨平台的免费开源软件,功能强大,配置灵活,强烈推荐给所有用户。

(图片来源网络,侵删)
步骤 1: 下载和安装
- 访问 FileZilla 官网: https://filezilla-project.org/download.php?type=server
- 下载并运行安装程序,安装过程非常简单,一路点击 "Next" 即可。
- 在配置向导中,选择 "作为服务安装",这样它就会在后台自动运行,无需手动启动。
- 重要: 在 "Passive mode settings" (被动模式设置) 界面:
- 勾选 "Use the same port for control connection and data connection" (为控制连接和数据连接使用相同的端口),这能简化防火墙配置。
- 在 "Port range for passive mode" (被动模式端口范围) 中,输入一个端口范围,
50000-50010。
- 完成安装后,FileZilla Server 界面会自动打开。
步骤 2: 添加用户和设置权限
- 在 FileZilla Server 界面,点击 “Edit” -> “Users”。
- 点击 “Add” 按钮,输入一个用户名(
ftpuser),然后点击“OK”。 - 在左侧选中你刚刚创建的用户,然后在右侧进行配置:
- Password: 设置一个强密码。
- General (常规):
- Home directory (主目录): 设置这个用户的默认访问文件夹。
C:\FTP\Users\ftpuser。 - Password (密码): 确认密码。
- Home directory (主目录): 设置这个用户的默认访问文件夹。
- Shared folders (共享文件夹):
- 点击右侧的 “Add” 按钮,添加用户需要访问的文件夹(通常就是上面设置的主目录)。
- 权限: 勾选 Read (读取), Write (写入), Delete (删除), Append (追加) 等你需要的权限。
- 点击 “OK” 保存设置。
步骤 3: 配置防火墙
- 打开 “Windows Defender 防火墙”。
- 点击 “高级设置”。
- 在左侧点击 “入站规则”。
- 在右侧点击 “新建规则...”。
- 选择 “端口”,点击“下一步”。
- 选择 “TCP”,在“特定本地端口”中输入你之前在 FileZilla 中设置的端口范围,
50000-50010,以及 FTP 默认的21端口,可以输入21,50000-50010,点击“下一步”。 - 选择 “允许连接”,点击“下一步”。
- 勾选所有配置文件(域、专用、公用),点击“下一步”。
- 为规则命名,
FileZilla FTP,然后点击“完成”。
你的 FileZilla FTP 服务器也配置完成了!
方法三:在 macOS 上搭建 FTP 服务器
macOS 自带了 FTP 服务器功能,但需要通过终端命令来开启。
步骤 1: 共享文件夹
- 打开 “系统偏好设置”。
- 点击 “共享”。
- 在左侧列表中,勾选 “文件共享”。
- 在右侧的 “共享文件夹” 列表中,点击 号,添加你希望共享的文件夹。
- 点击下方的 “选项...” 按钮。
- 勾选 “使用 AFP” 和 “使用 SMB”(为了更好的 Mac 兼容性),然后勾选 “使用 FTP”。
- 点击 “完成”,系统会提示你输入用户名和密码来设置 FTP 访问权限,可以使用你的 Mac 登录账户。
步骤 2: 启动 FTP 服务器
- 打开 “终端” (可以在“应用程序” -> “实用工具”里找到)。
- 输入以下命令来启动 FTP 服务器:
sudo -s launchctl load -w /System/Library/LaunchDaemons/ftp.plist
- 系统会提示你输入登录密码,输入后,FTP 服务器就启动了。
步骤 3: 停止 FTP 服务器 (可选)
如果你想停止服务器,可以运行:
sudo -s launchctl unload -w /System/Library/LaunchDaemons/ftp.plist
如何连接到你的 FTP 服务器?
你可以从局域网内另一台电脑连接到你的 FTP 服务器了。
使用 FTP 客户端软件 (推荐)
- 下载一个 FTP 客户端,如 FileZilla Client (免费且强大) 或 Cyberduck。
- 打开客户端,在顶部输入以下信息:
- 主机: 你之前设置的 FTP 服务器的局域网 IP 地址 (
168.1.100)。 - 端口:
21(如果你没有修改过)。 - 用户名: 你在服务器上创建的用户名 (
ftpuser或你的 Windows/macOS 用户名)。 - 密码: 你设置的密码。
- 主机: 你之前设置的 FTP 服务器的局域网 IP 地址 (
- 点击 “快速连接”。
- 连接成功后,左侧是你的本地电脑文件,右侧是服务器上的文件,你可以直接拖拽文件进行上传和下载。
使用 Windows 资源管理器
- 打开文件资源管理器。
- 在顶部的地址栏输入:
ftp://你的服务器IP地址(ftp://192.168.1.100)。 - 系统会弹出窗口,要求你输入用户名和密码,输入后即可访问。
重要安全事项!
默认的 FTP 协议非常不安全! 所有用户名、密码和传输的文件都是以明文形式在网络中传输的,任何人使用抓包工具都能轻易窃取。
你必须采取以下措施来保护你的服务器:
- 不要使用匿名访问: 这是最基本的安全措施。
- 使用强密码: 为 FTP 用户设置复杂且不易猜测的密码。
- 限制访问 IP: 在 IIS 或 FileZilla Server 的设置中,你可以设置一个“允许”的 IP 地址列表,只有列表中的 IP 才能连接到你的服务器,只允许你自己的家庭 IP (
45.67.89) 访问。 - 关闭不必要的端口: 确保除了 FTP 端口(21 和被动模式端口)外,没有其他不必要的端口对外开放。
- 终极方案:使用 SFTP (SSH File Transfer Protocol)
进阶配置:使用 SFTP (更安全的替代方案)
SFTP 不是 FTP 的升级版,而是基于 SSH (Secure Shell) 协议的文件传输协议,它通过加密通道传输所有数据(包括密码),安全性极高。
如果你只是想安全地在几台设备间传输文件,强烈建议你使用 SFTP,而不是 FTP。
如何使用 SFTP?
SFTP 通常和 SSH 服务器捆绑在一起。
-
在 Windows 上 (使用 OpenSSH):
- 在 Windows 功能中启用 “OpenSSH 服务器”。
- 启动后,它会自动在 22 端口运行一个 SSH 服务器。
- 你可以使用你的 Windows 用户名和密码通过 SFTP 客户端连接。
- 连接时,在客户端的“协议”中选择 SFTP,主机 IP 不变,端口填
22。
-
在 macOS 上:
- macOS 默认已安装并启动了 SSH 服务器。
- 同样,使用 SFTP 客户端,连接到你的 Mac 的局域网 IP,端口
22,使用你的 Mac 用户名和密码登录。
| 特性 | FTP (不安全) | SFTP (安全) |
|---|---|---|
| 协议 | 文件传输协议 | 安全文件传输协议 (基于 SSH) |
| 端口 | 21 | 22 |
| 加密 | 无 (明文传输) | 是 (全程加密) |
| 推荐度 | 不推荐,仅用于学习或内网临时传输 | 强烈推荐,所有场景下的首选 |
希望这份详细的教程能帮助你成功搭建和管理自己的 FTP 服务器!祝你使用愉快!
