我首先应该说,我想要一个 SFTP 服务器,客户可以连接到该服务器并删除文件,并且我希望我在另一台服务器(SFTP 服务器本地)上的 BizTalk 接收这些文件。我的假设是我在 BizTalk 2013 中使用 SFTP 适配器。这是我所做的所有测试和故障排除都无济于事。
我在一个具有静态 IP 的虚拟服务器(客户端)上使用 BizTalk 2013,并在我们的网络上有另一个运行 FTP 服务器(服务器)的 VM。我正在尝试 XLight 和 Cerberus FTP 服务器,但都遇到了同样的问题。
我有一个带有接收位置的编排,它接收一个 txt 平面文件并将其通过管道进行反汇编、转换等。在 BizTalk admin 中,我在 FTP 服务器上添加了一个 SFTP 接收位置来接收文件。当我启动 biztalk 应用程序时接收端口与 FTP 服务器联系,我看到它成功连接,但随后立即关闭。当 XLight 运行时,日志显示“[SSH_FXP_OPENDIR] 格式错误的 SFTP 数据包”,当 cerberus 运行时,它说它已连接,转到适当的目录打开一个通道以接收和 EOF,然后关闭通道并终止连接。
我已经解决了很多方法,可以这么说。我已经在客户端上加载了 FileZilla,并且能够通过端口 22 连接到 FTP 服务器并来回传输文件。我还在客户端上设置了 biztalk 应用程序以从本地文件夹接收文件,然后在反汇编后,使用与前面提到的 SFTP 接收端口相同的连接变量通过 SFTP 将文件发送到服务器,在相同的位置。在这种情况下,当我在客户端文件夹位置放置一个文本文件时,该文件会进入应用程序并被发送到 FTP 服务器位置,并且与 SFTP 服务器的连接保持打开状态。
端口 22 和 21 对入站和出站都是开放的,鉴于 FileZilla 允许我来回读取/写入/删除文件,连接显然有效。
对此或其他路线的任何帮助将不胜感激。也许我应该只使用 SFTP 让客户连接,然后使用其他方法在本地服务器之间传输文件?我也尝试过 FTP,但没有从 biztalk 到 ftp 服务器的连接,但 filezilla 可以连接。