Filetransfer

Aus UUGRN
Version vom 29. Mai 2006, 22:34 Uhr von Che (Diskussion | Beiträge) (Erweiterung Info zum SMB Protokoll : sharity-light)

Unter einem Filetransfer (Datei-Übertragung) versteht man einen Mechanismus, um eine oder mehrere Dateien über eine Netzwerkverbindung zu übertragen. Je nach Anwendungsfall und vorhandenen Tools sind verschiedene Methoden sinnvoll oder machbar. Dieser Artikel soll gebräuchliche Methoden kurz vorstellen und typische Einsatzgebiete zeigen.

public

Anon-FTP
Das wohl bekannteste und verbreitetste TCP-Protokoll speziell zum Übertragen von Dateien.
Anonym-FTP bedeutet, dass ein FTP-Server Dateien und Verzeichnisse für den öffentlichen
Download anbietet, vereinzelt gibt es auch public-Upload ("incoming").
Wird heute verwendet, um z.B. Softwarearchive nach Verzeichnissen sortiert anzubieten und
wird von nahezu jedem TCP/IP-fähigen System unterstützt.
Login erfolgt idR mit User:ftp und Passwort:ftp (oder einer Mailadresse).
FTP wird leider auch noch ziemlich oft für Benutzer-authentifizierte Verbindungen verwendet.
FTP bietet von sich aus keinen Schutz gegen das Ausspähen und/oder Manipulieren von Passwörtern und Daten.
HTTP
HTTP ist speziell auf die Bedürfnisse von Web-Servern zugeschnitten.
Anders als bei FTP haben Dateien einen content-type, der dem Client sagt,
um welche Art von Datei es sind handelt. Upload (PUT) ist zwar möglich,
spielt aber in der Praxis keine Rolle.
public-rsync
Wird ähnlich wie Anon-FTP für Software-Archive verwendet. rsync bietet die Möglichkeit,
effizient einen sog. Mirror abzugleichen, indem nur die geänderten Dateien übertragen werden müssen.
SAFT / sendfile
Das Simple Asyncronous File Transfer Protokoll dient zum Verschicken von Dateien
ähnlich wie E-Mail an einen bestimmten Empfänger. Als Client kommt hierbei z.B. sendfile
zum Einsatz. Auf beiden Systemen muss hierbei ein entsprechender daemon laufen, der den
Dateitransfer im Hintergrund druchführt bzw. eingehende Dateitransfers annimmt und verarbeitet.
Dieses Protokoll ist leider recht wenig verbreitet.

gesichert/privat

scp
Secure Copy ist eine Funktion im SSH-Protokoll und dient zum Kopieren von Dateien von/zu Hosts via SSH.
scp löst das historische rcp ab.
sftp
Secure File Transfer Protocol ist ein Subsystem von SSH und stellt einen FTP-ähnlichen Client dar.
SSH-rsync
rsync ist von sich aus in der Lage, über rsh oder SSH eine Verbindung zu einem
anderen System aufzubauen und Dateien mit dem Remote-System abzugleichen.
Hierzu ist es erforderlich, dass rsync auf dem Zielsystem installiert ist und ausgeführt werden kann.
SSH mit tar/dump+restore/cpio
SSH kann als "Netzwerk-pipe" verwendet werden. Benötigt wird ein Tool, welches Dateien einpackt
und in einen Datenstrom verwandelt und auf stdout ausgeben kann und auf der Gegenstelle das
entsprechende Gegenstück, welches ein Archiv als Datenstrom per stdin empfängt und die Dateien daraus
in das Dateisystem extrahiert. Schematisch sieht das so aus: archiver | ssh user@host "de-archiver"
Vorteil des Methode ist, dass man gleich mehrere Dateien auf einmal übertragen kann.
Siehe dazu:
SSH-dump
dump kann von sich aus Backup-Archive via SSH oder RSH auf ein entferntes System ablegen.


Netzwerk-Dateisysteme

Ein Netzwerk-Dateisystem ermöglicht eine dauerhafte Verbindung zwischen 2 Systemen. Zum Übertragen von Dateien können dann normale Kopierprogramme verwendet werden, man kann allerdings auch direkt mit Anwendungsprogrammen auf Dateien zugreifen.

NFS
Network File System, ist in der Unix-Welt relativ gebräuchlich
SMB
SMB (Server Message Block) / CIFS (Common Internet File System) ist in der Windows-Welt
verbreitet und wird in der Unix-Welt durch Samba implementiert (als Server).
Viele Unix-Systeme unterstützen zugleich auch das mountenen von
SMB-Dateisystemen als Client. (mount_smbfs, smbmount, ... )
smbmount gibt es nicht für NetBSD. ( FeeeBSD, OpenBSD ? )
Hier heißt das Tool sharity-light , beschrieben als "SMB to NFS protocol converter"
Die Syntax zum mounten einer SMB-share ist ähnlich dem smbmount
sharity-light Version 1.2 ist frei verfügbar für NetBSD, aktuellere Versione ( 3.0 und höher ) gibt es für FreeBSD, OpenBSD und Linux als eingeschränkte Trialversion oder gegen eine Lizenzgebühr bei Objective Development Software GmbH
Appletalk
Aus der Mac-Welt ...
AFS
Das Andrew File System wurde entworfen von der Carnegie Mellon University, dann entwickelt und supported von der Transarc Corporation, die jetzt zu IBM gehört. Von dort wurde ein Zweig an die Open Source Community freigegeben.
AFS kann sowohl lokal im Intranet als auch weltweit über das Internet genutzt werden.
AFS ist ein verteiltes Filesystem, d.h. der User mounted kein Filesystem auf einem Server sondern in einer AFS-Zelle. Solch eine Zelle kann aus vielen Servern bestehen. Auf welchem der Server eine Datei oder ein Verzeichnis abgelegt wurde ist für den User nicht ersichtlich.
der Verzeichnispfad ist /afs/$AFSCELL/<und hier sind die userdaten> , als $AFSCELL wird dabei meistens der DNS-Domainname genommen.
Die User-Authentifizierung erfolgt über Kerberos
AFS ist für verschiedene Betriebssysteme verfügbar
weitere Infos, Downloads, Mailinglisten usw. gibt es bei
OpenAFS.org
ARLA Project , eine weitere AFS Implementierung
GRAND.CENTRAL.ORG

Pseudo Netzwerk-Dateisysteme

Manche Desktopumgebungen und Oberflächen bieten einen integrierten Support für verschiedene Netzwerk-Methoden an.

Midnight Commander

Der Midnight Commander ist ein Terminal-Dateimanager und ist ein Ur-Enkel des DOS-Dateimanagers N*rton C*mm*nder. Der mc kennt folgende Pseudo-Netzwerk-Dateisysteme:

KDE

Das K Desktop Environment bietet integrierten Support für


GNOME

FIXME