IIS-FTP配置SSL证书-FTPS - 狂自私

时间:2024-04-16 15:20:08

IIS-FTP配置SSL证书-FTPS

 

参考了国外的博客:在5分钟内在 Windows 服务器 IIS 上创建 FTPS 服务器 - 西苏姆开发|由西图姆·贾亚拉特纳·|中等 (medium.com)

具体文章内容在后面

这里要注意几点:

  1. 配置FTPS(FTP over SSL)需要从头开始配置,不能先配置好ftp再去加ssl证书,这样一定会失败
  2. 使用防火墙列外,使用PowerShell配置证书,不用单独配置用户组
  3. FTP拓展需要安装上
  4. 使用客户端连接的时候,加密那里要指明"要求隐式的FTP over SSL" ,即FTPS协议,顺带说,使用显示FTP over SSL是ftpes协议
  5. Iis 7以上即可使用 FTPS。Windows 2016就是iis 10版本了。

 

 

 

Windows 服务器 2019 上通过 SSL 服务器创建 FTP。这允许多个用户访问自己的目录,但不允许访问其他目录。我在AWS上创建此,但您可以在任何云或本地服务器中创建。

 

2. 选择网络服务器 IIS FTP 服务

 

3. 转到 Windows 防御者防火墙,单击允许应用或功能通过 Windows 防御者防火墙,允许其他应用,添加 svchost .exeWindows 服务的主机过程),并允许它与 FTP 服务器一起使用。

4. 打开电源壳, 使用以下命令创建自签名证书。如果您已经拥有该域的pfx证书,您可以立即安装它。
New-SelfSignedCertificate -FriendlyName "selfsigned-localhost" -CertStoreLocation cert:\localmachine\my -DnsName localhost

 

IIS 本身创建的自签名证书无法与 Windows 服务器 2019 FTPS 服务器配合使用。

5. 创建一个文件夹来存储文件,并为每个用户创建一个单独的子文件夹。

 

6. 转到计算机管理、本地用户和组,创建名为"FTPS_Users"的新组。

7. 创建需要访问 FTPS 并添加到创建的组的用户。使用强密码使其安全。

 

(如果您感到困惑,我创建的两个用户名是组织1和组织2

8. 打开 IIS 管理器并转到 FTP 防火墙支持。

 

9. 添加数据通道端口范围 将服务器公共 IP 添加到外部 IP 字段并单击"应用"41200-41300

 

10. 如果服务器专用于 FTPS,请删除默认网站。右键单击"站点"并选择"添加 FTP 站点"。给网站起一个有意义的名称,设置物理路径:,设置如下其他设置。C:\inetpub\ftproot

 

IP
所有未分配端口:990
检查:自动
启动FTP站点SSL:需要SSL
SSL
证书:我们以前创建/安装的证书。

点击下一个按钮并使用以下设置。

-

身份验证:基本
授权:指定角色或用户组
组:FTPS_Users
权限:阅读。写

11. 选择您刚刚创建的网站并添加虚拟目录。
别名:物理路径:或您创建的文件夹来存储文件。
LocalUser
C:\FTPS

12. 再次选择网站,然后转到 FTP 用户隔离。

 

选择:然后单击"应用"User name directory (disable global virtual directories)

13. 打开窗口服务并重新启动微软FTP窗口服务器。这比重新启动整个服务器更容易。

打开文件齐拉或您最喜爱的FTP客户端并连接到服务器。与多个用户一起测试。

 

如果您选择了自签名证书,则应获得证书警告。可以安全地检查,因为连接和文件传输仍然通过 SSL 加密进行保护。Always trust certificate in future sessions