FTP server software

F : PASV oder PORT, was ist das und wie wird es benutzt?

Zielgruppe : ftp Benutzer / ftp Betreiber

read this page in german

A : Die meisten ftp Benutzer wissen nicht, was die Befehle PASV (Passiv) und PORT machen und das ist nicht weiter verwunderlich. Zuerst muss man wissen, dass jede ftp Sitzung zwei TCP Verbindungen benutzt. Eine dieser Verbindungen wird für den Connect zum ftp Server selbst benötigt und die zweite TCP Verbindung wird für ein VERZEICHNISLISTING oder eine DATEIÜBERTRAGUNG benötigt. Die beiden Befehle werden einfach zur Herstellung (Aushandeln) der zweiten TCP Verbindung benutzt.

Es ist eine gute Frage, warum für eine Datenverbindung zwei Befehle benutzt werden und nicht nur einer. Anfangs reichte der PORT Befehl vollkommen aus, aber mit der Einführung einer grossen Anzahl an Firewalls und NAT (Network Address Translation) Diensten wurde dieser PORT Befehl nutzlos und deshalb wurde der PASV Befehl eingeführt, der auch für seine Verträglichkeit mit Firewall bekannt ist.

Wir wollen nun die Unterschiede zwischen den beiden Befehlen erklären :

PORT : Der ftp Client SAGT dem Server, zu welcher IP Adresse (und Portnummer) dieser verbinden soll

PASV : Der ftp Server SAGT dem Client, zu welcher IP Adresse (und Portnummer) dieser verbinden soll

Daraus ist folgendes leicht ersichtlich :

PORT wird fehlschlagen : wenn der ftp Client selbst seine eigene wirkliche IP Adresse nicht kennt (weil er hinter einer NAT sitzt)

PASV wird fehlschlagen : wenn der ftp Server selbst seine eigene wirkliche IP Adresse nicht kennt (weil er hinter einer NAT sitzt)

Und wo kann man nun alle diese PORT/PASV Befehle und Antworten sehen?! Tja, da ist ein besserer ftp Client mit Statusfenster notwendig. :) Zu erwähnen sind: FlashFXP, CuteFTP, Windows Commander und viele andere, die wir hier nicht aufführen können... Aber es gibt auch einige Clients, welche diese Befehle/Antworten verstecken und sie nie anzeigen.

Nun sollten Sie wissen, welche Einstellungen bei PORT und PASV Problemen vorgenommen werden müssen...

Problem 1: Ihr ftp Client kann keine VERZEICHNISSE auflisten und stattdessen erscheint "PORT command failed error". Dieser Befehl, welcher vom Client gesendet wird, enthält eine IP Adresse und Portnummer, welche hinter einer NAT benutzt wird.

Für lokale Netzwerke reservierte Adressbereiche
10.0.0.0 - 10.255.255.255 (10/8 vorn)
172.16.0.0 - 172.31.255.255 (172.16/12 vorn)
192.168.0.0 - 192.168.255.255 (192.168/16 vorn)

Da jetzt bekannt ist, dass es ftp Client für diesen Fehler verantwortlich ist, können Sie dem ftp Benutzer die richtigen Einstellungen für den ftp Client mitteilen und ihm sagen, dass er den PASV Modus (in einigen Clients auch Passiv-Modus genannt) benutzen soll und niemals den PORT Modus, sofern der ftp Client diese Einstellungen unterscheidet.

Problem 2: Ihr ftp Client kann zu einem ftp Server verbinden, aber es können keine Verzeichnisse aufgelistet werden und es erscheint der Fehler : "PASV failed, no one connects to IP:PORT". Wenn man sich jetzt die IP Adresse angeschaut, sieht sie sicherlich wie eine Adresse aus, die sich hinter einer NAT befindet?

Für lokale Netzwerke reservierte Adressbereiche
10.0.0.0 - 10.255.255.255 (10/8 vorn)
172.16.0.0 - 172.31.255.255 (172.16/12 vorn)
192.168.0.0 - 192.168.255.255 (192.168/16 vorn)

Falls das der Fall ist, dann sollte der ftp Betreiber die Einstellungen so ändern, dass der Server keine interne IP Adresse benutzt ( nachzulesen : http://www.raidenftpd.com/en/raiden-ftpd-doc/howto-setup-ip.html ). Wenn IP und Port korrekt sind und der IP des Servers entsprechen, gibt es mehrere andere Ursachen. Um herauszufinden, was dafür der wahre Grund ist, sind folgende Schritte notwendig.

1. Einen anderen ftp Client oder eine neuere Version des verwendeten Clients benutzen. Es gibt zweifellos einige fehlerhafte ftp Clients auf dieser Welt, welche wir hier aber nicht nennen werden. Zu beachten ist auch, dass bei FXP Transfer der andere ftp Server ebenfalls zu einem ftp Client wird. Es gibt auch fehlerhafte ftp Server auf dieser Welt, deren Namen wir hier ebenfalls nicht nennen werden.

2. Ftp Benutzer sollten prüfen, ob sie irgendwelche Firewalls oder andere Sicherheitsprogramme benutzen, welche die zweite Verbindung (Datenverbindung) blockieren könnten. In dem Fall bitte abschalten.

3. Ftp Betreiber sollten prüfen, ob sie irgendwelche Firewalls oder andere Sicherheitsprogramme benutzen, welche die zweite Verbindung (Datenverbindung) blockieren könnten. In dem Fall bitte abschalten.

Sind nun alle Probleme beseitigt? Leider lautet die Antwort NEIN, und Sie werden es nie herausfinden, solange Sie nicht auf beiden Seiten sitzen, dem Server- und dem Client-Netzwerk. Der Grund ist einfach: Woher sollen Sie wissen, ob sich nicht irgendwo im Netzwerk des Client eine Firewall befindet? Oder als Client: Woher sollen Sie wissen, ob nicht irgendwo im Netzwerk des Servers eine Firewall die Verbindung blockiert? Die Antwort ist ... Sie können es NIE wissen.

Und auch wenn Sie vor dem Client und dem Server sitzen, woher sollen Sie wissen, ob nicht der Netzwerkbetreuer oder der Serviceprovider (ISP) eine Firewall auf dem Knotenpunkt installiert hat? Die Antwort lautet wieder ... Sie können es NIE wissen.

Wenn Sie nun diese Fehler erhalten, probieren Sie die oben aufgeführen Punkte und finden Sie selbst eine Lösung, denn RaidenFTPD hat kein Problem mit PASV/PORT und da wahrscheinlich niemand die wirkliche Fehlerursache kennt, müssen Sie den Fehler selbst finden. Das dazu notwendige Wissen befindet sich auf dieser Seite.

Das wars.

 

Copyright © RaidenFTPD TEAM , ALL RIGHTS RESERVED

REVISION 2.4, 2017-10-24

FTP server | Streaming server | WEB server