データ接続と統合Available connectorsSFTP

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

SFTP

Foundry を SFTP サーバーに接続して、フォルダーと Foundry データセット間のデータを同期します。

サポートされる機能

機能ステータス
探索🟢 一般利用可能
バルクインポート🟢 一般利用可能
インクリメンタル🟢 一般利用可能
エクスポートタスク🟡 Sunset (レガシー SFTP ソースのみ)
ファイルエクスポート🟢 一般利用可能

データモデル

コネクタは、任意の種類のファイルを Foundry データセットに転送できます。ファイル形式は保持され、転送中または転送後にスキーマは適用されません。出力データセットに必要なスキーマを適用するか、データにアクセスするための 下流トランスフォーム を書きます。

パフォーマンスと制限

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

設定

  1. Data Connection アプリケーションを開き、画面の右上隅にある + New Source を選択します。
  2. 利用可能なコネクタータイプから SFTP を選択します。
  3. インターネット経由で 直接接続 を使用するか、または 中間エージェント経由 で接続するかを選択します。
  4. 下記のセクションの情報を使用して、追加の設定プロンプトに従い、コネクターの設定を続けます。

直接接続を設定するには、Foundry がインターネット経由で SFTP サーバーにアクセスできる必要があります。オンプレミスの SFTP サーバーにアクセスするには、エージェントを介して接続を選択します。

Foundry での コネクターの設定 について詳しく知る。

認証

パスワードまたは SSL プライベートキーを使用して SFTP サーバーへの接続を確立することができます。サーバーへの接続時に問題が発生した場合は、Foundry の外部の SFTP クライアントを使用して接続を試みることで、認証詳細が正しいことを確認します。この接続のユーザーは、ルートディレクトリへのアクセス権限およびルートディレクトリ内のすべてのファイルとディレクトリを読み取り、リストする権限が必要です。

オプション必須?説明
UsernameはいSFTP ログインユーザー名。
PasswordいいえSFTP ログインパスワード。
Private keyいいえRSA 形式の SSL プライベートキー。SFTP サーバーは、提供されたユーザー名の認証キーとして公開キーを正しく設定している必要があります。

ネットワーキング

直接接続が SFTP コネクタを実行している場合、接続を許可リストに追加するために ネットワークの送信ポリシー を追加する必要があります。

送信ポリシーは、SFTP サーバーのホスト名(ドメイン経由で接続する場合)および SFTP サーバーホスト名が解決する IP について作成する必要があります。送信ポリシーを正しく設定した後でも、非標準の接続ポート (22) が ホスト名の検証 のために機能しない場合があります。これが発生した場合、この接続に適用されたポリシーのリストとともに、問題を Palantir サポートに報告します。

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

UNIX マシンで、サーバードメインが解決する IP アドレスを次のように実行して見つけます:

Copied!
1 2 3 # "dig"はDNSルックアップユーティリティで、<domain>の場所には調査したいドメイン名を入力します。 # "+short"オプションは結果を簡潔に表示します。 dig <domain> +short

エージェントがユーザーのコネクターを実行している場合、エージェントのサーバーがSFTPサーバーへのネットワーク接続を確立でき、かつファイアウォールが適切に設定されていることを確認してください。必要に応じて、netcat ↗ や同様のユーティリティを使用してネットワーク接続を確認することを推奨します。

証明書とプライベートキー

サーバーSSHキー

SFTPサーバーは公開キーを使用して自身を識別します。このキーは、サーバーの管理者から取得する(推奨)か、または問題のSFTPサーバーへのネットワークアクセスを持つ任意のLinuxサーバーから以下のコマンドを実行することで取得できます:

Copied!
1 2 3 4 5 6 # ssh-keyscanコマンドは、SSHサーバの公開鍵を収集します # -t オプションは、鍵のタイプを指定します(ここではrsa) # -p オプションは、ポート番号を指定します({port}には実際のポート番号を入力します) # {hostname}は、対象のホスト名を指定します # awkコマンドは、出力結果から3番目のフィールド(鍵)のみを表示します ssh-keyscan -t rsa -p {port} {hostname} | awk '{print $3}'

このキーは、接続詳細ページのホストキーセクションで設定する必要があります。このキーが取得できない場合や、キーが頻繁に変更される場合は、任意のホストキーを受け入れるトグルを使用してキー検証を無効にすることができます。ただし、キー検証を無効にすると安全性が損なわれるため、推奨されません。

ホスト名の検証

Foundry は、すべての出口ルートのホスト名検証を試みます。ポート22以外のネットワークトラフィックは時々検証されず、接続が中断したりタイムアウトエラーが発生したりすることがあります。適切な出口ポリシーの設定にもかかわらずエラーが続く場合は、ホスト名検証を無効にしたいポリシーのリストとともに、問題を Palantir サポートに報告してください。

設定オプション

オプション必須?デフォルト説明
Hostnameはいサーバーを指すドメイン名またはサーバーのIPアドレス。
PortはいSFTPサーバーが動作しているポート。
Root directoryはいこの接続を通じてすべてのリクエストのスタートディレクトリとして使用されるサーバー上のディレクトリ。
UsernameはいSFTPログインユーザー名。
PasswordいいえSFTPログインパスワード。
Private keyいいえRSA形式のSSLプライベートキー。SFTPサーバーは、提供されたユーザー名の認証キーとして公開キーを正しく設定していなければなりません。
Host keyはい上記のサーバーSSHキーを参照してください。
Accept any host keyいいえfalse上記のサーバーSSHキーを参照してください。
ProxyいいえDirectSFTPへのプロキシ接続を許可するために有効にします。
Timeoutいいえ0下記のタイムアウトで詳しく説明します。
Maximum concurrent connectionsいいえランタイム(エージェントまたは直接接続)がサポートする最大の並列アップロード通常、値が大きいほど転送速度が速くなります。この値をランタイムがサポートする最大の並列アップロード以上に設定しても何の影響もありません。SFTPサーバーがサーバーへの同時接続数を制限して負荷を管理できる場合は、この設定を使用してください。
接続設定いいえ下記の接続設定セクションを参照してください。
LogsいいえInfo記録されるログのレベル。レベルを選択すると、そのレベルまたはそれ以上のレベルのすべてのログが記録されます。たとえば、Errorレベルを選択すると、ErrorレベルとFatalレベルのログが記録されます。詳細は下記のログセクションを参照してください。
Extension NegotiationいいえN/Aこれらの設定は、コネクタがSFTPサーバーに送信する拡張交渉メッセージを制御します。これらの機能を無効にすると、接続の確立に関する問題が解決することがあります。詳細は下記を参照してください。

タイムアウト

値が0の場合、接続はサーバーからのすべての応答を無期限に待ちます。このタイムアウトは、サーバーとの接続を確立する際や、サーバー上で実行されるすべてのコマンドを待つ間に、コネクタがどれだけ待つかを制御します。サーバーが応答を続けている場合、タイムアウトは発生しません。この値を低く設定しても大きなファイルの転送を防ぐことはありませんが、接続の中断をデバッグするのに役立ちます。

接続設定

SFTP接続を確立する際、サーバーとクライアント(Foundry)は必要な詳細を交渉しなければなりません。これらの詳細には、クライアントとサーバーが使用する暗号化アルゴリズムを決定するための情報が含まれます。互換性の問題により、これらの設定を自動的に交渉させるのではなく、手動で設定する必要があるかもしれません。下記の表に、交渉を必要に応じて調整するために使用できる設定オプションを列挙しています。詳細は、FAQ ↗を参照してください。

設定説明
Key exchange algorithms鍵交換に使用できるアルゴリズムの明示的なリスト。少なくとも1つのアルゴリズムを選択する必要があります。
Ciphers暗号化に使用できる暗号のリスト。
Message Authentication Code (MAC)MACタイプのリスト。
Host key typesこの接続に使用できるホストキーのタイプ。
Public key types公開鍵認証に使用されるアルゴリズム。

SFTPからデータを同期

SFTPコネクタはfile-based syncインターフェースを使用します。

トラブルシューティング

lsのための接続の借用に失敗しました

ビルドがエラーlsのための接続の借用に失敗しましたで失敗し、エラーにSocketException: Connection resetが含まれている場合は、ビルドログを確認してSFTPサーバーへのネットワーク接続が確立されているかどうかを確認します。ログに接続が確立されましたリモートバージョン文字列の行がない場合は、ファイアウォールが接続ランタイムからの出口トラフィックをブロックしているか、ターゲットのSFTPサーバーが着信接続を許可していない可能性があります。出口ポリシーとファイアウォールのルールを確認し、SFTPサーバーの管理者に連絡してネットワーク接続の問題を解決してください。以下は、成功した接続ログの例です:

jschLogMessage: <HOSTNAME>にポート2232で接続しています //# <HOSTNAME>の2232ポートに接続します
jschLogMessage: 接続が確立しました //# 接続が確立されました
jschLogMessage: リモートバージョン文字列: <サーバータイプを識別する値> //# サーバータイプを識別する値のリモートバージョン文字列

ハングアップする接続

接続がハングアップし、進行も明確な失敗もない場合は、タイムアウトを小さな値(たとえば 1000)に設定して、どの呼び出しがハングアップしているかを特定します。たとえば、特定のディレクトリのリスト表示に時間がかかるか、ファイルの一部を読み込むのに時間がかかる可能性があります。

ハングアップする接続は、ホスト名の検証によって発生することがあり、小さいタイムアウトを設定することで、接続問題の根本原因を特定するのに役立つ失敗ログを生成することができます。

エージェントの接続

エージェントの接続の設定に問題がある場合は、SFTPクライアントを使用して、ソースと同じ設定でサーバーに接続を試みます。この接続が失敗した場合、問題はコネクタのバグではありません。ネットワークの接続性、認証、SFTPサーバーの設定を調査した後、問題を報告してください。

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

SFTPへのデータのエクスポート

コネクタは、FoundryのデータセットからファイルをSFTPサーバー上の任意の場所にコピーすることができます。

SFTPサーバーにエクスポートするには、まずSFTPコネクタのエクスポートを有効にします。次に、新しいエクスポートを作成します

レガシーSFTPコネクタ

以下のセクションでは、レガシーSFTPコネクタについて説明しています。このコネクタの既存の使用を維持する場合にのみ参照してください。新たにSFTPソースを作成する場合は、上記のセクションで説明されている手順に従ってください。

レガシーSFTPコネクタの設定

レガシーSFTPコネクタを設定するには、Data Connectionアプリケーションに移動し、+ 新規ソースを選択します。ソース選択画面で下にスクロールし、Advancedを選択し、Custom sourceを選択します。設定画面のプロンプトに従って、SFTPコネクタの設定を続けます。

SFTP YAML設定の完全な例は以下のようになります:

:::{callout theme=warning} レガシーSFTPソースの typemagritte-sftp である必要があることに注意してください。 :::

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 type: magritte-sftp hostname: my.host.name # 接続するホスト名 port: 22 # SFTPのポート番号(デフォルトは22) username: username # ユーザー名 password: '{{pasword}}' # パスワード(変数で指定) rootDirectory: /home/palantir/sftp # ルートディレクトリのパス base64Hostkey: >- FULL CONTENTS OF THE HOST KEY # ホストキーの内容(Base64形式) unsafeAcceptAllHostKeys: false # 全てのホストキーを安全でないとみなすかどうか privateKeyFile: location/of/private/key/file # プライベートキーのファイルパス privateKeyPassphrase: '{{passphrase}}' # プライベートキーのパスフレーズ(変数で指定) proxyConfiguration: host: hostname.of.proxy # プロキシホスト名 port: port.of.proxy # プロキシポート番号 type: HTTP (can be HTTP/HTTPS/SOCKS) # プロキシの種類(HTTP/HTTPS/SOCKS) credentials: username: proxyUsername # プロキシのユーザー名 password: `{{proxyPassword}}` # プロキシのパスワード(変数で指定) timeout: 0 # タイムアウトの設定(0は無限) maxConcurrentConnections: 10 # 同時接続の最大数 sessionParams: customKex: - "ecdh-sha2-nistp256" # カスタム鍵交換アルゴリズム - "ecdh-sha2-nistp384" knownHostsFile: /path/to/known_hosts_file # known_hostsファイルのパス

レガシーのSFTPコネクタを使用したエクスポート

一般的に、エクスポートタスクを使用してデータを外部ソースに書き戻すことはお勧めしておらず、以下のドキュメンテーションは既存のレガシーエクスポートタスクをサポートするためだけのものです。新しいエクスポートは、更新された一流の SFTPコネクタ を使用して作成する必要があります。

エージェントベースのソースからデータをエクスポートしたい場合は、まずエージェントにエクスポートタスクプラグイン magritte-export-task-source をインストールする必要があります。プラグインが必要な場合は、Palantirサポートに連絡してください。

データをエクスポートするには、エクスポートタスクを設定する必要があります。エクスポートしたいコネクタを含むプロジェクトフォルダーに移動します。コネクタ名を右クリックし、データ接続タスクを作成を選択します。

データ接続ビューの左パネルでは:

  1. Source の名前が使用したいコネクタと一致していることを確認します。
  2. Input という名前の inputDataset を追加します。入力データセットは、エクスポートされるFoundryのデータセットです。
  3. Output という名前の outputDataset を追加します。出力データセットは、タスクの実行、スケジューリング、モニタリングに使用されます。
  4. 最後に、テキストフィールドにYAMLブロックを追加して、タスクの設定を定義します。

左側のパネルに表示されるコネクタと入力データセットのラベルは、YAMLで定義した名前を反映していません。

エクスポートタスクのYAMLを作成する際には、以下のオプションを使用します:

オプション必須?説明
directoryPathはいファイルが書き込まれるディレクトリ。パスは末尾が / で終わる必要があります。
excludePathsいいえ正規表現のリスト。これらの表現に一致する名前のファイルはエクスポートされません。
rewritePathsいいえ詳細は 以下のセクション を参照してください。
uploadConfirmationいいえ値が exportedFiles の場合、出力データセットにはエクスポートされたファイルのリストが含まれます。
createTransactionFoldersいいえ有効にすると、データは指定した directoryPath 内のサブフォルダーに書き込まれます。各サブフォルダーは、Foundryでエクスポートされた各トランザクションに対して一意の名前を持ち、Foundryでトランザクションがコミットされた時間に基づいています。
incrementalTypeいいえデータセットがインクリメンタルに構築される場合、前回のエクスポート以降に発生したトランザクションのみをエクスポートするように incremental に設定します。
flagFileいいえ詳細は フラグファイルセクション を参照してください。
spanMultipleViewsいいえtrue の場合、Foundry内の複数のトランザクションが一度にエクスポートされます。 false の場合、1つのビルドでは1つのトランザクションしかエクスポートされません。インクリメンタルが有効になっている場合、最も古いトランザクションのファイルが最初にエクスポートされます。

rewritePaths

最初のキーがファイル名と一致する場合、キーのキャプチャグループは値に置き換えられます。値自体には、ファイル名にメタデータを追加するための追加セクションが含まれていることがあります。

値に含まれている場合:

  • ${dt:javaDateExpression}: この部分の値は、ファイルがエクスポートされるときのタイムスタンプに置き換えられます。javaDateExpressionDateTimeFormatter ↗ パターンに従います。
  • ${transaction}: この部分の値は、このファイルを含むトランザクションのFoundryトランザクションIDに置き換えられます。
  • ${dataset}: この部分の値は、このファイルを含むデータセットのFoundryデータセットIDに置き換えられます。

例:

Foundryのデータセットにあるファイルが "spark/file_name" という名前で、トランザクションIDが transaction_id 、データセットIDが dataset_id の場合を考えてみましょう。キーとして fi.*ame を使用し、値として file_${dt:DD-MM-YYYY}-${transaction}-${dataset}_end を使用すると、ファイルがSFTPに書き込まれるとき、それは spark/file_79-03-2023-transaction_id-dataset_id_end として保存されます。

フラグファイル

コネクタは、特定のビルドのすべてのデータがコピーされた後に、SFTPサーバーに空のフラグファイルを書き込むことができます。空のファイルは、内容が消費のために準備が整い、これ以上変更されないことを示します。フラグファイルは directoryPath に書き込まれます。ただし、createTransactionFolders が有効になっている場合、内容が書き込まれた各フォルダーにフラグファイルが作成されます。フラグファイルが有効になっていて、フラグファイルが confirmation.txt と呼ばれている場合、ビルドでエクスポートされたファイルが書き込まれた後すぐにすべてのフラグファイルが一度に書き込まれます。

フラグファイルは、ビルドの終了時に書き込まれます。サブフォルダーがエクスポートされたときではありません。

SFTPサーバーのファイルがフラグファイルより新しい場合、これは通常、前回のエクスポートが成功しなかったか、そのフォルダーに対するエクスポートが進行中であることを示します。

シンプルなエクスポート設定の例は次のとおりです:

Copied!
1 2 3 4 # typeはタスクの種類を指定します。ここではexport-sftp-task(SFTP経由でのエクスポートタスク)を指定しています type: export-sftp-task # directoryPathはエクスポートするディレクトリのパスを指定します。ここではexport-directory/subdirectoryを指定しています directoryPath: export-directory/subdirectory

エクスポートタスクの設定後、右上の角にある 保存 を選択します。

directoryPath で指定されたディレクトリは、SFTP サーバー上にすでに存在していなければなりません。

directoryPath で指定されたディレクトリは、ルートディレクトリーに対する相対パスです。たとえば、接続が rootDirectory: /home/palantir/sftpdirectoryPathexport-directory で設定されている場合、ファイルは /home/palantir/sftp/export-directory/ にエクスポートされます。

新しい SFTP コネクタへの移行

既存のコネクタから新しいコネクタへの自動移行は提供されていません。新しいコネクタはほぼ同一の設定オプションをサポートしており、新しいソースを作成して旧ソースを置き換える必要があります。

注意点として:

  • パスワードは旧ソースから取得できず、それらへのアクセスがなくなった場合はサーバー管理者に要求する必要があります。
  • privateKeyFileprivateKeyPassphrase はもはやサポートされておらず、プライベートキー認証を使用する場合は、プライベートキーの内容を直接ソース設定に入力する必要があります。
  • knownHostsFile はもはやサポートされておらず、base64HostKey をソース設定で正しく設定する必要があります。

ログ

Data Connections の ログ タブを選択して、探索とビルドからのログを表示します。これらのログは接続問題のデバッグに役立ちます。詳細を表示するには jschLogMessage を検索します。

以下のログ詳細は、成功したログイン試行を示しています:

jschLogMessage: <HOSTNAME>への接続、ポート2232
jschLogMessage: 接続確立
jschLogMessage: リモートバージョン文字列: SSH-2.0-OpenSSH_8.4p1 Debian-5+deb11u1
jschLogMessage: ローカルバージョン文字列: SSH-2.0-JSCH_0.2.12
jschLogMessage: CheckCiphers: chacha20-poly1305@openssh.com
jschLogMessage: CheckKexes: curve25519-sha256,curve25519-sha256@libssh.org,curve448-sha512
jschLogMessage: CheckSignatures: ssh-ed25519,ssh-ed448
jschLogMessage: known_hostの並べ替え前のserver_host_key提案: ssh-ed25519,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,rsa-sha2-512,rsa-sha2-256,ssh-dss,ssh-rsa
jschLogMessage: known_hostの並べ替え後のserver_host_key提案: ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,ssh-dss
jschLogMessage: SSH_MSG_KEXINIT送信
jschLogMessage: SSH_MSG_KEXINIT受信
jschLogMessage: サーバー提案: KEXアルゴリズム: curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256
jschLogMessage: サーバー提案: ホストキーアルゴリズム: ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
jschLogMessage: サーバー提案: 暗号化方式 c2s: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
jschLogMessage: サーバー提案: 暗号化方式 s2c: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
jschLogMessage: サーバー提案: MACs c2s: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
jschLogMessage: サーバー提案: MACs s2c: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
jschLogMessage: サーバー提案: 圧縮 c2s: none,zlib@openssh.com
jschLogMessage: サーバー提案: 圧縮 s2c: none,zlib@openssh.com
jschLogMessage: サーバー提案: 言語 c2s:
jschLogMessage: サーバー提案: 言語 s2c:
jschLogMessage: クライアント提案: KEXアルゴリズム: curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1,ext-info-c
jschLogMessage: クライアント提案: ホストキーアルゴリズム: ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,ssh-dss
jschLogMessage: クライアント提案: 暗号化方式 c2s: aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,aes128-cbc,3des-ctr,3des-cbc,blowfish-cbc,aes192-cbc,aes256-cbc
jschLogMessage: クライアント提案: 暗号化方式 s2c: aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,aes128-cbc,3des-ctr,3des-cbc,blowfish-cbc,aes192-cbc,aes256-cbc
jschLogMessage: クライアント提案: MACs c2s: hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1,hmac-md5,hmac-sha1-96,hmac-md5-96
jschLogMessage: クライアント提案: MACs s2c: hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1,hmac-md5,hmac-sha1-96,hmac-md5-96
jschLogMessage: クライアント提案: 圧縮 c2s: none
jschLogMessage: クライアント提案: 圧縮 s2c: none
jschLogMessage: クライアント提案: 言語 c2s:
jschLogMessage: クライアント提案: 言語 s2c:
jschLogMessage: kex: アルゴリズム: curve25519-sha256
jschLogMessage: kex: ホストキーアルゴリズム: ssh-ed25519
jschLogMessage: kex: サーバー->クライアント 暗号化方式: aes128-ctr MAC: hmac-sha2-256-etm@openssh.com 圧縮: none
jschLogMessage: kex: クライアント->サーバー 暗号化方式: aes128-ctr MAC: hmac-sha2-256-etm@openssh.com 圧縮: none
jschLogMessage: SSH_MSG_KEX_ECDH_INIT送信
jschLogMessage: SSH_MSG_KEX_ECDH_REPLYを待つ
jschLogMessage: ssh_eddsa_verify: ssh-ed25519 署名 true
jschLogMessage: ホスト'[<HOSTNAME>]:2232'は既知で、EDDSAホストキーと一致します
jschLogMessage: SSH_MSG_NEWKEYS送信
jschLogMessage: SSH_MSG_NEWKEYS受信
jschLogMessage: SSH_MSG_SERVICE_REQUEST送信
jschLogMessage: SSH_MSG_EXT_INFO受信
jschLogMessage: server-sig-algs=<ssh-ed25519,sk-ssh-ed25519@openssh.com,ssh-rsa,rsa-sha2-256,rsa-sha2-512,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,sk-ecdsa-sha2-nistp256@openssh.com,webauthn-sk-ecdsa-sha2-nistp256@openssh.com>
jschLogMessage: SSH_MSG_SERVICE_ACCEPT受信
jschLogMessage: 続行可能な認証: publickey,keyboard-interactive,password
jschLogMessage: 次の認証方法: publickey
jschLogMessage: PubkeyAcceptedAlgorithms = ssh-ed25519,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,rsa-sha2-512,rsa-sha2-256,ssh-rsa
jschLogMessage: server-sig-algsのPubkeyAcceptedAlgorithms = [ssh-ed25519, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521, rsa-sha2-512, rsa-sha2-256, ssh-rsa]
jschLogMessage: rsa-sha2-512 preauth成功
jschLogMessage: rsa-sha2-512 認証成功
jschLogMessage: 認証成功 (publickey).

上記の例では、サーバーは ssh-ed25519rsa-sha2-512rsa-sha2-256、および ssh-rsa のホストキーのアルゴリズムをサポートしています。ssh-ed25519 を使用して接続の問題が発生した場合は、ホストキーのアルゴリズムの設定rsa-sha2-512 に設定することができます。

拡張機能のネゴシエーション

SFTP プロトコルは、クライアントとサーバーの両方がサポートしている場合に、プロトコルの高度な機能を使用することをクライアントに許可します。SFTP の業界標準の実装のほとんどについては、拡張機能を有効にしておくことをお勧めします。ただし、互換性の問題がある場合、拡張機能は接続の失敗を引き起こす可能性があります。Foundry SFTP コネクタは、必要に応じて拡張機能を無効にすることを許可します。一般的に、ベストプラクティスは必要最低限の拡張機能のみを無効にすることで、すべての拡張機能を無効にするのではなく。