在 Windows 上使用 FTP/SFTP 服务端

本文最后更新于:2020年12月30日 下午

场景

最近在做 WebService 项目时遇到了定时上传统计报表的需求。协议是 FTP/SFTP,然而第三方服务暂时无法集成,所以只能在本地使用软件模拟出 FTP/SFTP 服务端,然后在代码中进行测试。

前言

吾辈并未使用 Windows 上大名鼎鼎的 FileZilla
谜之音:FileZilla 开源免费,而且 FTP/SFTP/FTPS 都能支持岂不美滋滋?
吾辈:然而安装完成直接启动就报错了
谜之音:报错就去查一下,这都觉得麻烦却是没办法了呢!

事实上这是很多开发者,尤其是 Linux 下的开发者,习惯了使用软件可能报错、可能有问题,对使用体验毫不在意。
所以吾辈滚了,滚去使用其他的软件了。

使用 freeFTPd

freeFTPd 官网

点击 下载链接 下载 freeFTPd,然后点击安装。第一次运行时会询问你 是否创建/使用私钥是否运行系统服务,全部选择 即可。

  1. 打开程序
    可以看到默认在 Status 标签,显示者 FTP 和 SFTP 服务都是关闭状态。
    首页
  2. 添加用户
    首先,我们需要添加一个用户,可以连接 FTP/SFTP 服务端的用户。
    1. 点击 Users 标签,然后点击 Add 添加用户
      Users 标签
    2. 设置用户信息
      添加用户信息
      依次
      1. 输入用户名
      2. 选择使用密码认证
      3. 输入密码
      4. 选择用户的服务端根目录
      5. 同时选择允许 FTP/SFTP 连接(默认选中)
      6. 点击 Apply 完成添加
  3. 启动 FTP 服务端
    启动 FTP
  4. 启动 SFTP 服务端
    启动 SFTP
  5. 查看 Status 状态页
    Status 选项页

测试 FTP/SFTP

如果仅仅是连接 FTP/SFTP 的话,我们确实可以使用 WinSCP 作为 FTP/SFTP 客户端。然而,作为开发者,连接 Linux 服务器也是家常便饭,所以我们选择 MobaXterm

下载页面 选择 MobaXterm Home Edition v11.1 (Portable edition) 下载免费便携版。下载完成得到一个压缩包,解压之,点击 MobaXterm_Personal_11.1.exe 运行程序。

MobaXterm 首页
MobaXterm 首页

  1. 点击 Session 添加会话
    连接 FTP
  2. 设置用户认证信息
    设置用户认证信息
  3. 选择用户认证信息
    选择用户认证信息
  4. 连接 FTP 成功
    连接 FTP 成功
  5. 同理添加 SFTP 连接
    同理添加 SFTP 连接
  6. 连接 SFTP 成功
    连接 SFTP 成功

最后,虽然概率很低,但如果在你的 PC 上按照该教程搭建失败,可以在文章底部进行评论告诉吾辈哦 (v^_^)v