Ich verwende VirtualBox
ubuntu 14.04
es als Client. Ich habe eine Ubuntu-Befehlszeilenversion als Server und als Dateihost. Ich kann eine Verbindung herstellen, mich authentifizieren und Dateien auf/vom Server hochladen/herunterladen, indem ich put $FILE
oder verwende get $FILE
, aber der Upload-/Download-Prozess schlägt fehl. Folgende Fehlermeldung wird angezeigt: für beide
ftp: bind: Address already in use
Gibt es eine Möglichkeit, die Ports per VirtualBox
FTP zu verschieben, um meine Testumgebung zu überprüfen?
Mein Server-Port wurde geändert von:
sudo nano /bin/vsftpd.conf
listen_port=2121
Wie ändere ich den Client, damit er den zugewiesenen Port und nicht den Standardport anruft?
Antwort1
Nun, es ist nicht wirklich eine Antwort, aber Kommentare sind zu kurz …
Ich glaube, ich habe mich nicht deutlich genug ausgedrückt, was den „sekundären Port“ angeht. FTP verwendet zwei Ports:
- der Befehlsport (oder Abhörport), Standard 21.
- der Datenport (Standard 20).
Der Befehlsport ist sicherlich frei, und deshalb könnten Sie eine Verbindung herstellen und authentifizieren sowie Get- und Put-Befehle ausgeben. Aber beim Übertragen wird eine andere Verbindung auf dem Datenport geöffnet, und diese schlägt fehl. Sie müssen also den Datenport überprüfen (und möglicherweise ändern), nicht den Befehlsport.
Das Problem ist noch schwieriger, da FTP über zwei Modi verfügt:
- Der „passive“ Modus, in dem die Standard-Ports verwendet werden.
- Der „aktive“ Modus, in dem Ports ausgehandelt werden.
Aus diesem Grund empfehle ich Ihnen dringend, Übertragungen im passiven Modus auszuprobieren (dies ist nicht die Standardeinstellung). Jeder FTP-Client wie Filezilla oder der FTP-Terminalbefehl verfügt über diese Option.