sFTP (Secure File Transfer Program) ist ein sicheres und interaktives Dateiübertragungsprogramm, das ähnlich wie FTP funktioniert (File Transfer Protocol ). Allerdings sFTP ist sicherer als FTP; es wickelt alle Operationen über einen verschlüsselten SSH-Transport ab.
Es kann so konfiguriert werden, dass mehrere nützliche SSH-Funktionen verwendet werden, z. B. Public-Key-Authentifizierung und -Komprimierung. Es verbindet sich mit dem angegebenen Remote-Rechner, meldet sich an und wechselt in einen interaktiven Befehlsmodus, in dem der Benutzer verschiedene Befehle ausführen kann.
In diesem Artikel zeigen wir Ihnen, wie Sie ein ganzes Verzeichnis (einschließlich seiner Unterverzeichnisse und Unterdateien) mit sFTP hochladen/herunterladen.
Verwenden von sFTP zum Übertragen von Dateien/Verzeichnissen unter Linux
Standardmäßig SFTP verwendet den gleichen SSH-Transport, um eine sichere Verbindung zu einem Remote-Server herzustellen. Obwohl Passwörter verwendet werden, um Benutzer ähnlich wie bei den SSH-Standardeinstellungen zu authentifizieren, wird empfohlen, eine passwortlose SSH-Anmeldung für eine vereinfachte und sicherere Verbindung zu Remote-Hosts zu erstellen und zu verwenden.
Sicher mit Remote-FTP-Server verbinden
Um eine Verbindung zu einem entfernten SFTP-Server herzustellen, stellen Sie zunächst eine sichere SSH-Verbindung her und erstellen Sie dann wie gezeigt eine SFTP-Sitzung.
$ sftp [email protected]
Sobald Sie sich beim Remote-Host angemeldet haben, können Sie interaktives sFTP ausführen Befehle wie in den folgenden Beispielen:
sftp> ls #list directory sftp> pwd #print working directory on remote host sftp> lpwd #print working directory on local host sftp> mkdir uploads #create a new directory
Wie man ein Verzeichnis mit sFTP hochlädt
Um ein ganzes Verzeichnis auf einen Remote-Linux-Host hochzuladen, verwenden Sie put Befehl. Sie erhalten jedoch eine Fehlermeldung, wenn der Verzeichnisname nicht im Arbeitsverzeichnis auf dem Remote-Host vorhanden ist, wie im folgenden Screenshot gezeigt.
Erstellen Sie daher zuerst ein Verzeichnis mit demselben Namen auf dem Remote-Host, bevor Sie es vom lokalen Host hochladen, dem -r
macht die Magie, indem es ermöglicht, dass auch Unterverzeichnisse und Unterdateien kopiert werden:
sftp> put -r Tecmint.com-articles sftp> mkdir Tecmint.com-articles sftp> put -r Tecmint.com-articles
Um die Änderungszeiten, Zugriffszeiten und Modi der übertragenen Originaldateien beizubehalten, verwenden Sie -p
Flagge.
sftp> put -pr Tecmint.com-articles
Wie man ein Verzeichnis mit sFTP herunterlädt
Um ein ganzes Verzeichnis namens fstools-0.0 herunterzuladen vom Remote-Linux-Host zum lokalen Computer verwenden Sie get Befehl mit dem -r
wie folgt kennzeichnen:
sftp> get -r fstools-0.0
Überprüfen Sie dann im aktuellen Arbeitsverzeichnis auf dem lokalen Host, ob das Verzeichnis mit allen darin enthaltenen Inhalten heruntergeladen wurde.
Um die sFTP-Shell zu verlassen, geben Sie Folgendes ein:
sftp> bye OR sftp> exit
Lesen Sie außerdem die sFTP-Befehle und Nutzungstipps.
Beachten Sie, dass Sie aus Sicherheitsgründen verhindern können, dass Benutzer auf das gesamte Dateisystem auf dem Remote-Host zugreifen, indem Sie sFTP-Benutzer mit chroot Jail auf ihre Home-Verzeichnisse beschränken.
Das ist es! In diesem Artikel haben wir Ihnen gezeigt, wie Sie ein ganzes Verzeichnis mit sFTP hochladen/herunterladen. Verwenden Sie den Kommentarbereich unten, um uns Ihre Gedanken zu diesem Artikel/Thema mitzuteilen.