1

我在使用 IIS 8 在 Windows Server 2012 中设置 FTP 服务器时遇到问题。这应该相当简单,但我正在努力说服 IIS 使用我指定的端口范围。

在 IIS 中,在 FTP 防火墙支持下,我选择的范围是 41000-42000。我们的外部 IP 已列出,如果我转发来自防火墙的所有流量,则可以正常工作。问题是,当我只转发端口 20、21 和 41000-42000 时,它不会建立被动连接。这是来自 Filezilla(IP 掩码)的日志:

    Response:   227 Entering Passive Mode (xx,xx,xx,xxx,148,250)
    Command:    LIST
    Response:   150 Opening BINARY mode data connection.
    Error:  Connection timed out
    Error:  Failed to retrieve directory listing

现在我相信服务器建议我们使用端口 38138,基于 148*256 + 250,这超出了定义的 41000-42000 范围。这可以解释为什么它无法连接。我搜索了一下,这是一个很常见的问题,但解决方案是重新启动 Microsoft FTP 服务。不幸的是,我已经尝试过了,但没有任何区别。我还重新启动了 IIS 甚至整个服务器,但它仍然抛出了不正确的端口范围。我找不到任何特定于 IIS 8 的信息,也找不到其他有相同问题但重新启动服务尚未修复的人。

有没有人有任何想法?有什么我错过的吗?

4

2 回答 2

2

在 IIS 中......

  1. 单击服务器名称
  2. 单击 FTP 防火墙支持
  3. 根据自己的喜好设置这些...

然后...

  1. 你必须 iisreset

这个问题把我逼疯了,因为没有什么能告诉你这一点。我终于在旧的 MS 板上找到了一个刚刚说 IIS 重置的人……做了,而且效果很好。:)

于 2015-05-15T13:58:22.390 回答
1

我已经设法找出原因,至少为什么发送错误的端口。

我放弃了 Microsoft 的 FTP 服务器并决定改用 Filezilla,但令我惊讶的是,它有完全相同的问题。但是,通过查看 Filezilla 提供的日志,我观察到它实际上正在请求正确的端口,但是当数据包到达客户端时,端口范围已被修改。

我相信,这发生在某些防火墙或路由器上。至少我有信心微软的 FTP 服务现在确实在做它的工作,我可以继续调查

于 2013-10-07T11:19:46.383 回答