私が望むのは、顧客が接続してファイルをドロップできる SFTP サーバーを用意し、別のサーバー (SFTP サーバーに対してローカル) で BizTalk がそれらのファイルを受信できるようにすることです。私の仮定は、BizTalk 2013 で SFTP アダプターを使用していることです。テストとトラブルシューティングのために行ったすべてのことは役に立ちません。
静的 IP を持つ 1 つの仮想サーバー (クライアント) で BizTalk 2013 を使用しており、ネットワーク上で FTP サーバー (サーバー) を実行している別の VM を使用しています。XLight と Cerberus FTP サーバーの両方を試していますが、どちらも同じ問題を抱えています。
txt フラットファイルを受信し、パイプラインを介して逆アセンブル、変換などを行う受信場所を持つオーケストレーションがあります。BizTalk 管理者で、ファイルを取り込むために FTP サーバーに SFTP 受信場所を追加しました。受信ポートが FTP サーバーに接続すると、正常に接続されていることがわかりますが、すぐに閉じます。XLight が実行されている場合、ログには「[SSH_FXP_OPENDIR] Badly Formatted SFTP Packet」と表示され、cerberus が実行されている場合は、接続し、適切なディレクトリに移動して受信するチャネルを開き、EOF を受信してから、チャネルを閉じて接続を終了します。
私はこれを多くの方法でトラブルシューティングしてきましたが、これを言うことができます。クライアントに FileZilla をロードし、ポート 22 を介して FTP サーバーに接続し、ファイルを正常に転送できました。また、ローカル フォルダーからファイルを受信するようにクライアントで biztalk アプリケーションをセットアップし、逆アセンブル後に、前述の SFTP 受信ポートと同じ接続変数を使用して、同じ場所にあるサーバーに SFTP 経由でファイルを送信します。このシナリオでクライアント フォルダーの場所にテキスト ファイルをドロップすると、ファイルはアプリケーションに入り、FTP サーバーの場所に送信され、SFTP サーバーへの接続は開いたままになります。
ポート 22 と 21 はインバウンドとアウトバウンドの両方で開いており、FileZilla を使用してファイルの読み取り/書き込み/削除を前後に実行できることを考えると、接続は明らかに機能します。
このルートまたは別のルートに関するヘルプをいただければ幸いです。SFTP を使用して顧客が接続できるようにしてから、他の方法を使用してローカル サーバー間でファイルを転送する必要がありますか? FTPも試しましたが、biztalkからftpサーバーへの接続はありませんが、filezillaは接続します。