SSH Dateiübertragung
Dateiübertragung mit SSH
SSH ermöglicht nicht nur den Zugriff auf entfernte Systeme, sondern auch die sichere Übertragung von Dateien. Dafür stehen zwei Werkzeuge zur Verfügung: scp und sftp.
| SCP | SFTP | |
|---|---|---|
| Arbeitsweise | Kopiert Dateien in einem Befehl | Interaktive Sitzung wie FTP |
| Richtung | Quelle → Ziel | Beide Richtungen |
| Anwendungsfall | Schnelles Kopieren | Navigieren, Auflisten, Übertragen |
| Wiederaufnahme | Nein | Nein |
SCP
scp (Secure Copy) kopiert Dateien zwischen lokalem und entferntem System – oder zwischen zwei entfernten Systemen. Die Syntax orientiert sich an cp.
Syntax
scp [Optionen] Quelle Ziel
Quelle und Ziel können jeweils lokal oder remote sein. Ein Remote-Pfad hat die Form:
benutzer@host:/pfad/zur/datei
Datei zum Server übertragen
scp datei.txt alice@192.168.1.10:/home/alice/
Datei vom Server herunterladen
scp alice@192.168.1.10:/home/alice/datei.txt /home/bob/Downloads/
Verzeichnis übertragen
Mit -r wird ein Verzeichnis rekursiv kopiert:
scp -r /home/bob/projekte alice@192.168.1.10:/home/alice/
Anderen Port verwenden
Mit -P (Großbuchstabe) wird ein abweichender Port angegeben:
scp -P 2222 datei.txt alice@192.168.1.10:/home/alice/
Hinweis: Bei scp heißt die Port-Option -P (Großbuchstabe), bei ssh dagegen -p (Kleinbuchstabe).
Wichtige Optionen
| Option | Bedeutung |
|---|---|
-r |
Verzeichnis rekursiv kopieren |
-P |
Abweichenden Port angeben |
-i |
Bestimmten Private Key verwenden |
-v |
Verbose – zeigt Details zum Verbindungsaufbau |
SFTP
sftp (SSH File Transfer Protocol) öffnet eine interaktive Sitzung auf dem entfernten System. Anders als scp kann man damit im Dateisystem navigieren, Verzeichnisse auflisten und gezielt Dateien hoch- oder herunterladen.
Verbindung aufbauen
sftp alice@192.168.1.10
Mit abweichendem Port:
sftp -P 2222 alice@192.168.1.10
Nach dem Verbindungsaufbau erscheint die SFTP-Eingabeaufforderung:
sftp>
Auf dem entfernten System navigieren:
sftp> ls sftp> cd /home/alice/dokumente sftp> pwd
Auf dem lokalen System navigieren (alle lokalen Befehle beginnen mit l):
sftp> lls sftp> lcd /home/bob/Downloads sftp> lpwd
Dateien übertragen
Datei vom Server herunterladen:
sftp> get datei.txt
Datei zum Server hochladen:
sftp> put datei.txt
Verzeichnis rekursiv herunterladen:
sftp> get -r verzeichnis
Verzeichnis rekursiv hochladen:
sftp> put -r verzeichnis
Weitere nützliche Befehle
| Befehl | Bedeutung |
|---|---|
ls / lls |
Inhalt remote / lokal auflisten |
cd / lcd |
Verzeichnis remote / lokal wechseln |
pwd / lpwd |
Aktuelles Verzeichnis remote / lokal anzeigen |
mkdir |
Verzeichnis auf dem Server anlegen |
rm |
Datei auf dem Server löschen |
get |
Datei herunterladen |
put |
Datei hochladen |
bye / exit |
Sitzung beenden |
Sitzung beenden
sftp> bye
SCP oder SFTP?
SCP eignet sich für schnelle, einmalige Übertragungen direkt aus der Shell – ähnlich wie cp, nur über das Netzwerk.
SFTP ist sinnvoller, wenn man zuerst auf dem Server navigieren, den Inhalt prüfen oder mehrere Dateien in einer Sitzung übertragen möchte.
Siehe auch
- SSH-Client – Verbindungsaufbau und Optionen
- SSH-Config – Verbindungen vereinfachen mit
~/.ssh/config - SFTP-Server – Den SFTP-Dienst auf dem Server konfigurieren