注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

FTP/FTPS

FoundryをFTPおよびFTPSサーバーに接続して、フォルダー間およびFoundryデータセット間でデータを同期します。

サポートされる機能

機能ステータス
探索🟢 一般提供中
一括インポート🟢 一般提供中
増分🟢 一般提供中

データモデル

コネクタは任意の種類のファイルをFoundryデータセットに転送できます。ファイル形式は保持され、転送中または転送後にスキーマが適用されることはありません。必要に応じて出力データセットにスキーマを適用するか、データにアクセスするための下流トランスフォームを作成してください。

パフォーマンスと制限

転送可能なファイルのサイズに制限はありません。ただし、ネットワークの問題により大規模な転送が失敗することがあります。特に、実行に2日以上かかる直接クラウド同期は中断されます。ネットワークの問題を避けるために、ファイルサイズを小さくし、同期の実行ごとに取り込むファイルの数を制限することをお勧めします。同期は頻繁にスケジュールして実行することができます。

セットアップ

  1. Data Connectionアプリケーションを開き、画面右上の + New Source を選択します。
  2. 利用可能なコネクタタイプから FTP/FTPS を選択します。
  3. インターネット経由で直接接続するか、中間エージェントを介して接続するかを選択します。
  4. 以下のセクションの情報を使用してコネクタのセットアップを続行するための追加の構成プロンプトに従ってください。

直接接続を構成するには、Foundryがインターネット経由でFTPサーバーにアクセスできる必要があります。オンプレミスのFTPサーバーにアクセスするには、エージェントを介して接続するオプションを選択してください。

Foundryでのコネクタのセットアップについてさらに学びましょう。

認証

FTP/FTPS認証は、ユーザー名とパスワードを使用して完了します。FTPユーザーが接続に設定されたルートディレクトリの権限を持っていない場合、FTP/FTPS接続は失敗する可能性があります。ルートディレクトリの詳細については、構成オプションを参照してください。

オプション必須?説明
UsernameはいFTPログインユーザー名。
PasswordはいFTPログインパスワード。このフィールドは匿名ログインの場合は空の値にすることができます。詳細についてはサーバー管理者にお問い合わせください。

ネットワーキング

直接接続がFTP/FTPSコネクタを実行している場合、接続を許可するためにネットワーク出口ポリシーを追加する必要があります。

ドメイン名を介して接続する場合、コントロールポート(通常はポート21)とデータポートの両方に対してFTPサーバードメインの出口ポリシーを作成する必要があります。コントロールポート用の単一ポートポリシーと、データポート用のポート範囲ポリシーの2つのネットワークポリシーを作成することをお勧めします。データポートはFTPサーバーの管理者によって決定されます。適切な出口ポリシー構成にもかかわらずエラーが発生し続ける場合は、適用されたポリシーのリストを引用して問題を報告してください。

サーバーのドメインが複数のドメインおよび/またはサーバーに解決される場合、関連するすべてのドメインおよびそれらの関連IPをホワイトリストに追加する必要があります。サーバーが複数のドメインおよび/またはサーバーに解決されるかどうかを確認するには、接続しようとしているサーバーのドメインに対してターミナルからdig <domain>コマンドを実行し、回答セクションを確認してください。

エージェントがコネクタを実行している場合、エージェントのサーバーがFTP/FTPSサーバーにネットワーク接続を確立できることを確認し、ファイアウォールが適切に構成されていることを確認してください。必要に応じて、netcat ↗または同様のユーティリティを使用してネットワーク接続を確認することをお勧めします。

証明書と秘密鍵

以下のガイダンスを使用して、コネクタを適切に設定するために追加のクライアントまたはサーバー証明書および秘密鍵を構成します。

SSLおよびホスト名の検証

SSL接続はサーバー証明書を検証します。通常、SSL検証は証明書チェーンを通じて行われます。デフォルトでは、エージェントと直接接続の両方の実行時にほとんどの業界標準証明書チェーンが信頼されます。接続しているサーバーが自己署名証明書を持っている場合、またはファイアウォールが接続でTLSインターセプションを実行する場合、コネクタは証明書を信頼する必要があります。Data Connectionでの証明書の使用についてさらに学びましょう。

SSL検証が機能するためには、サーバーは完全な証明書チェーンを提供する必要があります。FTPサーバーの証明書チェーンは、openssl s_client -connect {hostname}:{port} -showcerts -starttls ftpコマンドを実行することで取得できます。証明書チェーンを検証するには、OpenSSLコマンドラインユーティリティまたはその他の利用可能なツールを使用してください。

FTPSを使用している場合、FTPSサーバーの証明書がエージェントのトラストストアに追加されていることを確認してください。

Foundryはすべての出口ルートの検証を試みます。ただし、FTPは検査できないため、接続がハングしたり、タイムアウトエラーが発生したりします。適切な出口ポリシー構成にもかかわらずエラーが発生し続ける場合は、ホスト名の検証を無効にしたいポリシーのリストとともに問題を報告してください。

暗黙的/明示的SSL

FTPサーバーは、明示的または暗黙的なSSLをサポートするように構成できます。ポート990で実行されているサーバーは、一般的に暗黙的なSSLを使用します。

サーバーの設定をサーバー管理者に確認してください。デフォルトでは、コネクタは明示的SSLを前提としています。環境に応じてこの設定を変更する必要があるかもしれません。

接続要件

FTPはCONTROLおよびDATA接続タイプを必要とします。DATA接続はACTIVEまたはPASSIVEモードで構成する必要があります。

  • CONTROL: クライアントからサーバーへ
  • DATA: 範囲から選択されたデータ(たとえば、1024–1123)
    • PASSIVE: クライアントからサーバーへ
    • ACTIVE: サーバーからクライアントへ
      • エージェント接続でのみ動作

デフォルトのFTP/FTPSコネクタポート:

  • FTP: 21
  • FTPS明示的: 21
  • FTPS暗黙的: 990

アクティブおよびパッシブモード

パッシブモードのネットワーク接続を使用することをお勧めします。パッシブモードでは、すべての接続がクライアントによって開始されます。パッシブモードを使用する場合、コントロールポート(通常は21)およびデータ転送のポート範囲(たとえば1024–1123)がホワイトリストに追加されていることを確認してください。接続の詳細については、FTP/FTPSサーバー管理者にお問い合わせください。

アクティブモードは、ファイル転送を確立するための古い方法です。アクティブモードでは、クライアントがサーバーに接続し、サーバーがクライアントに接続します。サーバーとクライアントは互いに依存しており、双方向のネットワーク接続が必要です。このネットワーキング方法は、ほとんどのセキュアな環境で実現するのが難しく、直接接続を使用する場合は不可能です。

構成オプション

オプション必須?デフォルト説明
URLはいFTP/FTPSサーバーのURL。URLにはオプションで、接続のルートディレクトリとして使用されるサーバー上のディレクトリへのパスを含めることができます(たとえば、ftp://server.name/folder/name)。
Configure client certificates and private keyいいえ詳細については、証明書と秘密鍵を参照してください。
Configure server certificatesいいえ詳細については、証明書と秘密鍵を参照してください。
Connection timeoutいいえ30秒タイムアウトをミリ秒単位で増やします。
Re-login timeいいえ15分インターバルを分単位で変更します。
File change timeoutいいえ2秒アップロード対象と見なされる前にファイルが一定のままである必要がある時間を設定します。タイムアウトはミリ秒単位です。
HTTP proxy URLいいえプロキシサーバーのURL。http://またはhttps://で始まります。HTTPプロキシのサポートは使用するFTPサーバーに大きく依存し、ACTIVEモードでは使用できません。これは、HTTPプロキシが外部からアクセス可能なポートでリッスンするクライアントリクエストをサポートしないためです。ACTIVEモード転送ではFTPサーバーがクライアントに接続するため、HTTPプロキシ経由では不可能です。
SSL methodいいえ明示的FTPS接続のために明示的または暗黙的SSLを使用するかどうか。
ModeいいえPASSIVEPASSIVEまたはACTIVE
Time zoneいいえコネクタのタイムゾーンFTPサーバーのタイムゾーン。FTPはタイムゾーンなしでタイムスタンプを記録します。正確な変更タイムスタンプを表示するには、デフォルトとは異なる場合にFTPサーバーのタイムゾーンを指定します。
Timestamp format stringいいえMM-dd-yy hh:mmaFTPサーバーからタイムスタンプを解析するための形式文字列。タイムスタンプは、前回の同期以降に変更されたファイルを特定するために使用されます。サポートされている形式についてはJavaドキュメント ↗を参照してください。
Control encodingいいえUS-ASCIIFTPコントロールメッセージのエンコーディング。コントロールエンコーディングは、ファイル名がデータ接続サーバーのデフォルトファイルシステムエンコーディングとは異なるエンコーディングである場合に必要になることがあります。
例: Windows FTPサーバーでは、日本語にはwindows-31j、韓国語にはx-windows-949がよく使用されます。
詳細についてはJavaドキュメント ↗を参照してください。
Keep aliveいいえfalse大きなファイルをダウンロード中にコントロール接続を維持するためにFTP NOOPコマンドを送信するかどうかを選択します。すべてのFTPサーバーがサポートしているわけではありません。

FTPからデータを同期する

FTPコネクタは、ファイルベースの同期インターフェースを使用します。

トラブルシューティング

エージェント接続

  • エージェント接続のセットアップに問題がありますか?FTP/Sクライアントをインストールし、ソースと同じ構成を使用してサーバーに接続を試みてください。この接続が失敗する場合、問題はコネクタのバグではありません。ネットワーク接続、認証、およびFTPサーバーの構成を調査してから問題を報告してください。

  • 出口プロキシロードバランサーを使用していますか?FTPはステートフルプロトコルであるため、ロードバランサーを使用すると、連続したリクエストが同じIPから発信されない場合に同期が(非決定的に)失敗する可能性があります。

SSLおよびFTPS

  • サーバーは自己署名証明書を使用していますか?それをソーストラストストアに追加しましたか?詳細については、上記のSSLおよびホスト名の検証セクションを参照してください。

  • FTPサーバーは古いTLSバージョン(たとえばTLS 1.1)のみをサポートしていますか?その場合、コネクタランタイムはサーバーが提供するCipherスイートのいずれも受け入れない可能性があります。代替案を検討するためにPalantirの担当者に問題を報告してください。