Hoi,
Nach meinem Erkenntnisstand baut ein FTP-Client eine Verbindung
zu dem gewünschten FTP-Server normalerweise über den dafür
reservierten Port 20 (?) auf.
21 ;-)
Da der FTP-Server diesen Port aber nicht dauerhaft belegt haben
will, handeln Client und Server anschließend andere Ports aus,
über welche dann tatsächlich Daten übertragen werden - genau
so, wie das bei HTTP mit Port 80 läuft, der auch nur für die
Verbindungsaufnahme zuständig ist.
Tatsache ist, dass FTP fuer Daten, die uebertragen werden muessen,
eine neue Verbindung aufbaut. Der Port fuer diese Verbindung liegt
irgendwo > 1024.
Das ist definitiv FALSCH. Bei der HTTP-Kommunikation laufen alle
Verbindungen zwischen Client und Server auf der Serverseite
ausschließlich über Port 80.
Ja.
Nur der Client benutzt wechselnde Ports, aber niemals Port 80,
da in der Regel für ausgehende Verbindungen freie Ports oberhalb
von 1024 benutzt werden - je neuer Verbindung ein neuer Port,
damit man die Verbindungen irgendwie unterscheiden kann.
Auch das stimmt.
Bei FTP mag das anders sein, da gibts neben dem normalen Port 21
auch noch einen Port 20 für "FTP-Data", der augenscheinlich für
Datentransport zuständig ist.
Ja. Aber dieser Port wird AFAIK nur fuer passive ftp benutzt. Aktives
handelt einen beliebigen Port aus.
Das ist Sache der Firmen-Firewall, zu entscheiden, ob von innen
heraus irgendwelche Ports benutzt werden dürfen, die
normalerweise auch von anderen Programmen benutzt werden. Auf
diese Weise sperrt man zum Beispiel die MP3-Sharing-Programme,
solange die den Default-Port benutzen.
IMHO ist das ziemlich sinnlos. Denn wenn ein 'Hacker' wirklich einen
Port zweckentfremden will, dann weiss er auch, wie er die Pakete
als FTP maskiert.
Der Programmierer des FTP-Client hat empfohlen, im "passive
mode" zu arbeiten; der Firewall-Administrator meinte dazu, das
müßten dann aber die entsprechenden FTP-Server auch
unterstützen, und das wäre (im WWW) nicht gerade die
Regel ... ?
Doch, eigentlich schon.
Genau. Der Passive-Mode nutzt irgendwie bestehende Verbindungen
zur Datenübertragung, wird aber tatsächlich nicht unbedingt von
allen FTP-Servern unterstützt. Ausprobieren heißt die Devise.
Das wird von allen aktuellen FTP-Servern unterstuetzt.
Wenn ich mich recht erinnere, dann ist FTP im Normalfall so ein
Protokoll, welches ständig neue Verbindungen zum Server knüpft
(also im Gegensatz zu HTTP). Passive Mode unterbindet das, und
könnte in deinem Fall wirklich helfen.
Ja.
Gruesse,
CK