eltacoasado.com

  

Beste Artikel:

  
Main / Verwendung von SFTP im nicht interaktiven Modus

Verwendung von SFTP im nicht interaktiven Modus

Unter Unix-ähnlichen Betriebssystemen ist sftp die Befehlszeilenschnittstelle für die Verwendung des sicheren SFTP-Dateiübertragungsprotokolls.

Es ist eine verschlüsselte Version von FTP. Es überträgt Dateien sicher über eine Netzwerkverbindung. Möglicherweise sind Sie bereits mit FTP vertraut: Es bietet keine sichere Verschlüsselung in der Sitzung oder bei der Datenübertragung. Betrachten Sie es als eine verschlüsselte Version von FTP. Wenn Sie Dateien über anonymes FTP übertragen müssen, ist SFTP nicht das zu verwendende Programm. Da alle SFTP-Verbindungen verschlüsselt sind, benötigen sie einen Benutzernamen und ein Kennwort oder eine Authentifizierung mit öffentlichem Schlüssel.

Verwenden Sie für anonyme FTP-Übertragungen reguläres FTP. Es verwendet viele der Funktionen von ssh, wie die Authentifizierung mit öffentlichem Schlüssel und die Datenkomprimierung. Es gibt vier grundlegende Möglichkeiten, sftp zu verwenden, und die Befehlssyntax für jede ist hier aufgelistet.

Weitere Informationen zu jeder Option und ihren möglichen Werten finden Sie im Abschnitt Optionen unten. Hier finden Sie eine Beschreibung der einzelnen Optionen, die in den oben aufgeführten Befehlssyntaxen aufgeführt sind. Im interaktiven Modus meldet sftp Sie beim Remote-System an und stellt Sie an eine Eingabeaufforderung, die der Eingabeaufforderung auf Ihrem lokalen System ähnelt.

Es bietet Ihnen eine begrenzte, aber sehr nützliche Reihe von Befehlen, mit denen Sie im Remote-Dateisystem navigieren und Dateien senden und empfangen können. Angenommen, Sie möchten eine interaktive SFTP-Sitzung auf dem Server mit dem Namen "Server" starten. Angenommen, Ihr Benutzerkonto auf dem Server.

Über die Befehlszeile Ihres Systems können Sie die Sitzung mit dem folgenden Befehl starten: Wenn Ihr Benutzername auf Ihrem lokalen System auch "Benutzer" ist, können Sie Folgendes eingeben: Sie können sich jetzt im Dateisystem mit "cd directory" bewegen, Dateien mit "ls" auflisten, Dateien mit "get filename" herunterladen und Dateien mit "put filename" hochladen. Es ist ziemlich identisch mit einer interaktiven FTP-Sitzung, außer dass es verschlüsselt und sicher ist.

Wenn Sie fertig sind, können Sie sich mit dem Befehl "bye" abmelden. "Exit" funktioniert ebenfalls und sftp wird beendet. In diesem Modus können Sie den genauen Pfadnamen der Datei oder Dateien, die Sie abrufen möchten, im Befehl sftp selbst angeben.

Wenn Sie diesen Befehl ausführen, stellt sftp eine Verbindung zu Dateien her. Da am Anfang des Verzeichnisnamens kein Schrägstrich eingefügt wurde, wird nach Dokumenten in Ihrem Home-Verzeichnis auf dem Server gesucht. Wenn es Portfolio findet. Sie können auch einen Speicherort für die herunterzuladende Datei angeben. Zum Beispiel dieser Befehl:. Sie können auch einen völlig anderen Namen für die heruntergeladene Datei angeben:

Die Ausgabe listet jede Datei in einer eigenen Zeile auf: Manchmal ist es bequemer, eine Sitzung im interaktiven Modus direkt von einem bestimmten Remote-Verzeichnis aus zu starten. Sie können dies tun, indem Sie es in der Befehlszeile angeben: Es ist auch möglich, sftp vollständig skriptgesteuert auszuführen.

Dies wird als Batch-Modus bezeichnet und ermöglicht es Ihnen, SFTP-Übertragungen ohne Interaktion über die Tastatur durchzuführen. Dies ist beispielsweise nützlich, wenn Sie eine wiederkehrende Übertragung in einem Cron-Job oder eine einmalige geplante Übertragung mit dem Befehl at einrichten möchten.

Da der Batch-Modus jedoch nicht interaktiv ist, können Sie beim Herstellen einer Verbindung zum Server keinen Benutzernamen und kein Kennwort eingeben. Um den Batch-Modus zu verwenden, müssen Sie sich automatisch anmelden. Die Standardmethode und die sicherste Methode ist die Verwendung der Authentifizierung mit öffentlichem Schlüssel. Lassen Sie uns das schnell durchgehen. Mit der Authentifizierung mit öffentlichem Schlüssel können Sie sich sicher bei einem Remote-Server anmelden, ohne Ihr Kennwort eingeben zu müssen. Zuerst generieren Sie zwei Schlüssel auf Ihrem lokalen System: Dann kopieren Sie den Text Ihres öffentlichen Schlüssels auf den Remote-Server.

Danach können Sie sich am Remotecomputer anmelden, ohne ein Kennwort einzugeben, solange Sie den privaten Schlüssel auf Ihrem lokalen Computer haben. Die Schlüssel befinden sich im Verzeichnis. Überprüfen Sie zunächst, ob die. Als nächstes müssen wir sicherstellen, dass dieses Verzeichnis die richtigen Berechtigungen hat. Sie möchten sicherstellen, dass Sie die einzige Person sind, die auf dieses Verzeichnis zugreifen kann, um es zu lesen, zu schreiben und auszuführen. Für ein Verzeichnis beträgt der Oktalwert dieses Dateimodus 700.

Lassen Sie uns die Berechtigungen für unsere ändern. Jetzt müssen wir die Schlüssel selbst generieren. Das Programm zum Generieren von Schlüsselpaaren für das ssh-Protokoll heißt ssh-keygen.

Führen Sie es in der Befehlszeile ohne Optionen aus: Sie werden aufgefordert, die Informationen einzugeben, die zum Generieren der Schlüssel erforderlich sind. Verwenden Sie alle Standardwerte. Drücken Sie bei jeder Eingabeaufforderung die Eingabetaste. In einer der Eingabeaufforderungen werden Sie nach einer Passphrase gefragt, die zusätzlich zum verschlüsselten privaten Schlüssel eine zusätzliche Sicherheitsstufe bietet. Hier lassen wir das Passwort leer. Wenn Sie ein Kennwort für Ihren Schlüssel verwenden möchten, sollten Sie ein Programm namens ssh-agent verwenden, um Ihren Schlüssel in den Speicher zu laden. Auf diese Weise können Sie einen kennwortgeschützten Schlüssel verwenden, ohne das Kennwort mehrmals eingeben zu müssen.

Sie erhalten sogar ein hübsches Kunstwerk, das Ihren öffentlichen Schlüssel darstellt und das Sie ausdrucken und an Ihre Wand hängen können, wenn Sie möchten. Ihre Schlüssel werden jetzt generiert. Wir müssen auch die Berechtigungen für diese Dateien ändern, damit nur Sie lesen, schreiben und ausführen können.

Der Oktalwert dieser Berechtigungsbits beträgt 700. Geben Sie Ihr Kennwort ein und melden Sie sich an. Überprüfen Sie an der Eingabeaufforderung Ihres Servers, ob die.

Auf dem Server:. Wenn es nicht vorhanden ist, erstellen Sie es und erteilen Sie ihm die entsprechenden Berechtigungen, genau wie auf Ihrem lokalen System. Wenn nicht, erstellen Sie es. Mit touch können Sie eine leere Datei erstellen. Wenn das Verzeichnis und die Datei bereits vorhanden sind, müssen Sie sie natürlich nicht erstellen. Der Inhalt dieser Datei befindet sich alle in einer sehr langen Zeile ohne Zeilenumbrüche. Sie können es sich mit dem Befehl cat selbst ansehen: Es gibt verschiedene Möglichkeiten, dies zu tun: Oder Sie können ein Programm namens ssh-copy-id verwenden, das Teil der Standardinstallation von ssh auf vielen Systemen ist.

Hier werden wir es jedoch mit ssh selbst direkt an die Datei anhängen. Wenn Ihr Remote-Benutzername myusername und Ihr Servername myhost ist. Jetzt ist Ihr öffentlicher Schlüssel auf dem Server installiert, und Sie sollten sich ohne Kennwort anmelden und Batch-SFTP-Sitzungen durchführen können.

Diese sind Teil der Standardkonfiguration, sodass Sie sie nicht hinzufügen, festlegen oder in der Konfigurationsdatei auskommentieren müssen. Sie sind jedoch für die Authentifizierung mit öffentlichem Schlüssel erforderlich. Wenn es nicht funktioniert, ist dies der erste Ort, den Sie überprüfen sollten. Um eine Batch-SFTP-Sitzung auszuführen, erstellen Sie eine Textdatei mit der Folge von SFTP-Befehlen, die auf dem Server ausgeführt werden sollen, wobei jeder Befehl in einer eigenen Zeile steht.

Zum Beispiel, wenn Sie das Hochladen einer Reihe von Dateien mit dem Namen image01 automatisieren möchten. Nachdem alle Befehle erfolgreich ausgeführt wurden oder nicht, meldet sich sftp ab und kehrt zur Befehlszeile zurück. Dieser Befehl versucht, eine interaktive SFTP-Sitzung mit dem Server myhost zu initiieren.

Der Name, mit dem Sie sich anmelden, entspricht dem Benutzernamen, mit dem Sie den Befehl ausgeführt haben. Versuche, eine interaktive SFTP-Sitzung mit dem Server myhost zu initiieren. Wenn die Datei vorhanden ist, wird sie in das lokale Arbeitsverzeichnis heruntergeladen und anschließend wird sftp beendet. Versuche, die SFTP-Befehle im Textdateistapel auszuführen. Die Befehle im Dateistapel. Damit die Sitzung initiiert werden kann, müssen der Server und der lokale Client so konfiguriert sein, dass für die Anmeldung keine Tastatureingabe erforderlich ist. Weitere Informationen finden Sie oben unter Einrichten der Authentifizierung mit öffentlichem Schlüssel.

Eine vollständige Liste der interaktiven Befehle und Optionen finden Sie oben unter Befehle im interaktiven Modus. Laden Sie die Remote-Datei mydocs herunter. Führen Sie den Befehl Befehlsname Option1 Option2 auf Ihrem lokalen System aus, ohne die Verbindung zur SFTP-Sitzung zu trennen. Home Hilfe Linux. Linux-Befehl sftp Aktualisiert: Beschreibung Syntaxbeispiele Verwandte Befehle Hilfe zu Linux-Befehlen.

Hinweis Wenn Sie Dateien über anonymes FTP übertragen müssen, ist SFTP nicht das zu verwendende Programm. Hinweis In einer der Eingabeaufforderungen werden Sie nach einer Passphrase gefragt, die zusätzlich zum verschlüsselten privaten Schlüssel eine zusätzliche Sicherheitsstufe bietet.

War diese Seite nützlich? Geben Sie die Verwendung des Protokolls Version 1 an, das aus dem Jahr 1997 stammt. Diese Option bietet Kompatibilität mit sehr alten Servern.

(с) 2019 eltacoasado.com