Einschränkungen und bekannte Probleme hinsichtlich der Unterstützung von SFTP (SSH File Transfer Protocol) in Azure Blob Storage

Dieser Artikel beschreibt Einschränkungen und bekannte Probleme mit SFTP in Azure Blob Storage, damit Sie Dateiübertragungen beheben und die Client- und Workflow-Kompatibilität überprüfen können.

Wichtig

Da Sie den hierarchischen Namensraum aktivieren müssen, um SFTP zu verwenden, gelten die Probleme in Known Issues mit Azure Data Lake Storage auch für Ihr Konto.

Nicht unterstützte Clients

Es ist bekannt, dass die folgenden Clients nicht mit SFTP für Azure Blob Storage kompatibel sind. Weitere Informationen finden Sie unter Unterstützte Algorithmen.

  • Kemp
  • paramiko 1.16.0
  • SSH.NET 2016.1.0 oder älter
  • Renci SSH.NET 2014.6.0

Diese Liste ist nicht vollständig und kann sich im Lauf der Zeit ändern.

Clienteinstellungen

Informationen zum Übertragen von Dateien in oder von Azure Blob Storage über SFTP-Clients finden Sie in den folgenden empfohlenen Einstellungen.

  • WinSCP

    • Wählen Sie im Dialogfenster Einstellungen die Option Übertragen>Ausdauer aus, und legen Sie dann Fortsetzung der Übertragung/Übertragung zu temporärem Dateinamen aktivieren auf Deaktivieren fest.

Achtung

Wenn diese Option aktiviert bleibt, können Fehler auftreten, oder die Leistung kann während großer Dateiuploads beeinträchtigt werden.

Nicht unterstützte Vorgänge

Kategorie Nicht unterstützte Vorgänge
Zufällige Schreibvorgänge Vorgänge, die sowohl READ- als auch WRITE-Flags enthalten. Beispiel: SSH.NET-Erstellungs-API
Verknüpfungen
  • symlink: Erstellen symbolischer Verknüpfungen
  • ln: Erstellen fester Verknüpfungen
  • Leselinks werden nicht unterstützt.
  • Kapazitätsinformationen df: Verwendungsinformationen für das Dateisystem
    Erweiterungen Zu den nicht unterstützten Erweiterungen zählen u. a. folgende: fsync@openssh.com, limits@openssh.com, lsetstat@openssh.com, statvfs@openssh.com
    SSH-Befehle SFTP ist das einzige unterstützte Subsystem. Shell-Anfragen nach dem Schlüsselaustausch scheitern.
    Schreibvorgänge mit mehreren Protokollen Zufällige Schreib- und Anfügevorgänge (PutBlock,PutBlockList, GetBlockList, AppendBlock, AppendFile) sind bei Blobs, die mit SFTP erstellt wurden, von anderen Protokollen (NFS, Blob-REST, Data Lake Storage-REST) nicht zulässig. Vollständige Überschreibungen sind zulässig.
    Umbenennen von Vorgängen Das Umbenennen von Vorgängen, bei denen der Zieldateiname bereits vorhanden ist, ist eine Protokollverletzung. Beim Versuch eines solchen Vorgangs wird ein Fehler zurückgegeben. Weitere Informationen finden Sie unter Entfernen und Umbenennen von Dateien.
    Containerübergreifende Vorgänge Das Wechseln zwischen Containern oder das Ausführen von Operationen auf mehreren Containern aus derselben Verbindung wird nicht unterstützt.
    Wiederherstellen Sie können ein vorläufig gelöschtes Blob nicht über SFTP wiederherstellen. Nutze die Undelete REST-API.

    Zugriff auf ACLs und Standard-ACLs

    • SFTP unterstützt derzeit keine Standard-ACLs oder zusätzliche Access ACLs (ACL-Einträge über POSIX user::und group::other:: Einträge, z. B. benannte Benutzer oder benannte Gruppen).

    • Wenn ein Verzeichnis im Zugriffspfad (einschließlich des Home-Verzeichnisses des Benutzers) Standard-ACLs oder zusätzliche Zugriffs-ACLs aktiviert hat, scheitern SFTP-Operationen mit Permission denied, selbst wenn der verbindende Benutzer die erforderlichen Berechtigungen hat.

    Problemumgehung: Entfernen Sie Standard-ACLs und zusätzliche Zugriffs-ACLs aus allen Verzeichnissen im SFTP-Zugriffspfad (einschließlich des Heimverzeichnisses des Benutzers), sodass nur POSIX user::, group::und other:: Einträge verbleiben.

    Weitere Informationen zu ACLs und deren Bearbeitung finden Sie unter Zugriffssteuerungslisten (ACLs).For more details about ACLs and how you can edit them, see Access control lists (ACLs).

    Netzwerk

    • Um über SFTP auf das Speicherkonto zuzugreifen, muss Ihr Netzwerk den Datenverkehr auf Port 22 zulassen.

    • Speicherkonten unterstützen keine statischen IP-Adressen. Diese Einschränkung gilt nicht speziell für SFTP.

    • Leere oder inaktive Verbindungen ticken nach zwei Minuten ab. OpenSSH reagiert nicht mehr und trennt sich dann. Einige Clients stellen die Verbindung automatisch erneut her.

    Weitere SFTP-Einschränkungen

    • Informationen zu Leistungsfragen und Überlegungen finden Sie unter Überlegungen zur Leistung des SSH File Transfer Protocol (SFTP) in Azure Blob Storage.

    • Standardmäßig ist die Content-MD5-Eigenschaft von Blobs, die mit SFTP hochgeladen werden, null. Um diese Eigenschaft mit einem MD5-Hash zu füllen, muss Ihr Client den Hash berechnen und die Content-MD5-Eigenschaft festlegen, bevor er den Blob hochlädt.

    • Die maximale Datei-Upload-Größe über den SFTP-Endpunkt beträgt 500 GB.

    • Kundenverwaltetes geplantes Failover wird für Standard-Allzweck-v2-Konten und im Vorschaustatus für Premium-Block-Blob-Konten unterstützt. Weitere Informationen finden Sie unter Azure Storage: Notfallwiederherstellung und Failover.

    • Um die Redundanz- oder Replikationseinstellungen des Speicherkontos zu ändern, müssen Sie SFTP deaktivieren. Du kannst SFTP nach Abschluss der Konvertierung wieder aktivieren.

    • Du kannst nicht auf spezielle Container wie $logs, $blobchangefeed, , $rootund $web über den SFTP-Endpunkt zugreifen.

    • FTPS und FTP werden nicht unterstützt.

    • SFTP verwendet weder TLS noch SSL.

    • Nur SSH Version 2 wird unterstützt.

    • Vermeiden Sie Blob- oder Verzeichnis-Namen, die mit einem Punkt (.), einem Schrägstrich (/), einem umgekehrten Schrägstrich (\) oder einer Sequenz oder Kombination davon enden. Keine Pfadsegmente sollten mit einem Punkt (.) enden. Weitere Informationen finden Sie unter Benennen von und Verweisen auf Container, Blobs und Metadaten.

    Blob Storage-Funktionen

    Wenn du SFTP-Unterstützung aktivierst, werden einige Blob Storage-Funktionen vollständig unterstützt, aber manche Funktionen sind vielleicht nur auf der Vorschauebene unterstützt oder noch gar nicht unterstützt.

    Informationen dazu, wie die einzelnen Blob-Storage-Features in Konten unterstützt werden, für die SFTP-Unterstützung aktiviert ist, finden Sie unter Unterstützung von Blob-Storage-Features für Azure Storage-Konten.

    Problembehandlung

    • Um den Failed to update SFTP settings for account 'accountname'. Error: The value 'True' isn't allowed for property isSftpEnabled. Fehler zu beheben, überprüfen Sie, ob das Speicherkonto die folgenden Voraussetzungen erfüllt:

      • Das Konto ist ein Allzweckkonto vom Typ V2 oder ein Premium-Blockblobkonto.

      • Der hierarchische Namespace ist für das Konto aktiviert.

    • Überprüfen Sie zum Beheben des Fehlers Home Directory not accessible Folgendes:

      • Der Benutzer hat entsprechende Berechtigungen für den Container.

      • Die Verbindungszeichenfolge spezifiziert den Containernamen für lokale Benutzer ohne Home-Verzeichnis.

      • Die Verbindungszeichenfolge spezifiziert den Containernamen für lokale Benutzer, deren Home-Verzeichnis nicht existiert.

    • Um das Received disconnect from XX.XXX.XX.XXX port 22:11: bei der Verbindung zu lösen, überprüfen Sie, ob:

      • Der öffentliche Netzzugang ist Enabled from all networks oder Enabled from selected virtual networks and IP addresses.

      • Die IP-Adresse des Clients wird von der Firewall zugelassen.

    Siehe auch