Azure Blob Storage での SSH ファイル転送プロトコル (SFTP) のサポートに関する制限事項と既知の問題
この記事では、Azure Blob Storage での SFTP サポートに関する制限事項と既知の問題について説明します。
重要
SFTP を使用するには、お使いのアカウントの階層型名前空間を有効にする必要があるため、「Azure Data Lake Storage Gen2 に関する既知の問題」で説明されている既知の問題もすべて、ご自身のアカウントに適用されます。
サポートされていない既知のクライアント
次のクライアントは、Azure Blob Storage 用の SFTP と互換性がないことがわかっています。 詳細については、「サポートされているアルゴリズム」を参照してください。
- Five9
- Kemp
- Mule
- paramiko 1.16.0
- SSH.NET 2016.1.0
上記のサポートされていないクライアントの一覧は完全なものではなく、時間が経つと変更される可能性があります。
クライアントの設定
SFTP クライアント経由で Azure Blob Storage とファイルを転送するには、次の推奨設定を参照してください。
WinSCP
- [設定] ダイアログの [移転] - [Endurance] (存続時間) で、[無効化] を選択して、[Enable transfer resume/transfer to temporary filename] (一時ファイル名への転送再開/転送を有効にする) オプションを無効にします。
注意事項
このオプションを有効にしたままにすると、大規模なファイルのアップロード中にエラーやパフォーマンス低下を引き起こすおそれがあります。
サポートされていない操作
カテゴリ | サポートされていない操作 |
---|---|
ACL | chgrp - グループの変更chmod - アクセス許可/モードの変更chown - 所有者の変更put/get -p - アクセス許可の保持 |
アップロードの再開 | reput . put -a |
ランダム書き込みおよび追加 | |
リンク | symlink - シンボリック リンクの作成ln -ハード リンクの作成 |
容量情報 | df - ファイルシステムの使用状況情報 |
拡張機能 | サポートされていない拡張機能には fsync@openssh.com、limits@openssh.com、lsetstat@openssh.com、statvfs@openssh.com が含まれますが、これらに限定されません |
SSH コマンド | SFTP は、サポートされている唯一のサブシステムです。 キー交換が完了した後のシェル要求は失敗します。 |
マルチプロトコル書き込み | ランダム書き込みおよび追加 (PutBlock 、PutBlockList 、GetBlockList 、AppendBlock 、AppendFile ) は、SFTP を使用して作成された BLOB 上の他のプロトコル (NFS、Blob REST、Azure Data Lake Storage Gen2 REST) からは許可されません。 完全な上書きが許可されます。 |
名前の変更操作 | ターゲット ファイル名が既に存在する名前の変更操作は、プロトコル違反です。 このような操作を試みると、エラーが返されます。 詳細については、ファイルの削除と名前変更に関するページを参照してください。 |
認証と承認
SFTP エンドポイントで現在サポートされている ID 管理の唯一の形式は、"ローカル ユーザー" です。
Azure Active Directory (Azure AD) は、SFTP エンドポイントではサポートされていません。
POSIX のようなアクセス制御リスト (ACL) は、SFTP エンドポイントではサポートされていません。
詳細については、「SFTP アクセス許可モデル」と「Azure Data Lake Storage Gen2 のアクセス制御モデル」をご覧ください。
ネットワーク
SFTP を使用してストレージ アカウントにアクセスするには、ネットワークで、ポート 22 のトラフィックを許可する必要があります。
静的 IP アドレスは、ストレージ アカウントではサポートされていません。 これは SFTP 固有の制限ではありません。
インターネット ルーティングはサポートされていません。 Microsoft ネットワーク ルーティングを使用します。
アイドル状態や非アクティブである接続については、2 分のタイムアウトがあります。 OpenSSH が応答を停止し、切断されたと表示されます。 一部のクライアントでは、自動的に再接続が行われます。
その他
パフォーマンスの問題と考慮事項については、Azure Blob Storage での SSH ファイル転送プロトコル (SFTP) のパフォーマンスに関する考慮事項に関するページを参照してください。
SFTP エンドポイント経由の最大ファイル アップロード サイズは 100 GB です。
ストレージ アカウントの冗長またはレプリケーションの設定を変更したり、アカウントのフェールオーバーを開始したりするには、SFTP を無効にする必要があります。 変換が完了したら、SFTP は再び有効にできます。
$logs、$blobchangefeed、$root、$web などの特殊なコンテナーには、SFTP エンドポイントからはアクセスできません。
シンボリック リンクはサポートされていません。
SFTP でない SSH と SCP のコマンドはサポートされていません。
FTPS と FTP はサポートされていません。
TLS と SSL は SFTP に関連していません。
トラブルシューティング
Failed to update SFTP settings for account 'accountname'. Error: The value 'True' is not allowed for property isSftpEnabled.
エラーを解決するには、次の前提条件がストレージ アカウント レベルで満たされている必要があります。このアカウントは、汎用 v2 および Premium ブロック BLOB アカウントにする必要があります。
アカウントで階層型名前空間を有効にする必要があります。
この
Home Directory not accessible error.
エラーを解決するには:ユーザーには、コンテナーに適切なアクセス許可が割り当て済みです。
ホーム ディレクトリを持っていないローカル ユーザーのコンテナー名は、接続文字列で指定されます。
存在しないホーム ディレクトリを持っているローカル ユーザーのコンテナー名は、接続文字列で指定されます。
接続時の
Received disconnect from XX.XXX.XX.XXX port 22:11:
を解決するには:公衆ネットワーク アクセスが
Enabled from all networks
またはEnabled from selected virtual networks and IP addresses
です。クライアント IP アドレスがファイアウォールによって許可されています。
ネットワーク ルーティングが
Microsoft network routing
に設定されています。