FTP

FTP steht für File Transfer Protokoll und ist so wie telnet eines der ältesten Protokolle des Internet. Es ist ebenfalls unverschlüsselt und stellt damit heutzutage eher ein Sicherheitsrisiko dar.

Man unterscheidet zwei Arten: normales FTP und anonymes FTP. Beim "anonymous FTP" loggt man als User "ftp" oder "anonymous" ein, und gibt als Passwort meist seine Emailaddresse an. D.h. es darf jeder auf die Daten zugreifen. Im Allgemeinen aber nur lesend.

Auf der einen Seite hat man einen FTP-Server, der Daten zur Verfügung stellt, und man kann mit diversen FTP-Clients darauf zugreifen. Es gibt viele verschiedene FTP-Clients (auch grafische). Wir werden aber nur den Kommandozeilen-ftp durchmachen. Den gibts übrigens auch im Dos-Modus von Windows, und er ist praktisch immer und überall installiert.

Ein Problem ist manchmal FTP hinter Firewalls oder Masquerading-Rechnern, da beim Datentransfer der FTP-Server eine Verbindung retour zum Client aufbauen will. Damit das nicht so passiert sondern in die andere Richtung kann man auf Passiv-Modus schalten.

Ein Beispiel:

ftp ftp.at.kernel.org

Beim einlogen: user: ftp
Password: Deine Emailaddresse (die meisten Clients verwenden aber irgendeine Emailadresse)

Bei einem nicht anonymen FTP würde man mit seinem Benutzernamen und seinem echten Passwort einloggen. Man hat dann Zugriff auf sein Homeverzeichnis. Da das Passwort aber im Klartext übers Netz übertragen wird, wollen wir das hier vermeiden.

Jetzt bist du mit dem österreichischen Mirror für den Linux Kernel verbunden. Du kannst jetzt folgende Befehle benutzen:

ls
Zum Anzeigen der Dateien auf der anderen (remote) Seite

help
Zeigt eine Liste mit Befehlen. help befehl gibt dann meist extra Hilfe zum Befehl.

passiv
Schaltet in den Passiv-Modus (oder falls dieser eingeschlaten war, schaltet es ihn wieder aus - man nennt das: toggle)

toggle:
n 1: any instruction that works first one way and then the other; it turns something on the first time it is used and thenturns it off the next time
2: a hinged switch that can assume either of two positions [syn: {toggle switch}, {on-off switch}]

put blabla.txt
würde die lokale Datei blabla.txt auf die andere Seite speichern. (Das ist natürlich am ftp.at.kernel.org für dich nicht erlaubt)

get irgendwas.txt
würde die Datei irgendwas.txt von der anderen Seite auf deinen Compi holen..

bin
schaltet in den "binary" Modus. Daten werden beim Tranfer nicht verändert (wichtig für bilder, gif, dvi, etc..)

ascii
schaltet in den Textmodus. Dateien werden als Text betrachtet und zwischen den Systemen konvertiert. Solange du von Unix auf Unix ftp machst ist das egal, weil auf beiden Seiten texte in der selben Art dargestellt werden. Wenn du allerdings zwischen Unix und Windows FTP-Daten austauscht ist das wichtig, dass du das beachtest. Vor allem, dass es ausgeschalten ist, wenn du Bilder und ähnliches transferierst.

cd bla
Wechselt ins Remote-Verzeichniss bla/

lcd bli
Wechselt auf deinem Compi (local) das Verzeichnis. Hier z.B. bli/

Oft will man mehrere Dateien auf einmal transferieren. Hier sind mget und mput (m wie "multi") nützlich.

mget *.gif
würde alle .gif-Dateien holen. Würde aber normalerweise bei jeder Datei fragen. Um dies abzuschalten, gibt es den Befehl:

prompt
Toggelt die Einstellung für: "bei jeder mget/mput Datei nachfragen"

quit
beendet den FTP transfer.

So, jetzt kennst du die wichtigsten FTP-Befehle.