NAT - FTPS (Fehler: Verzeichnisliste konnte nicht abgerufen werden)

992
Mubeen Shahid

Ich habe einen Server (Ubuntu 13.04 / Picuntu 4.4) mit . Das einfache FTP funktioniert einwandfrei. Um die Verbindung zu sichern, habe ich die Verschlüsselung hinzugefügt . Der Server akzeptiert die Anmeldeinformationen, nachdem die Clients das Zertifikat akzeptiert haben. Nach dem LISTBefehl läuft jedoch beim Kunden etwas schief .

Das FTP-Clientprotokoll ist hier:

Status: Resolving address of my_website.info Status: Connecting to 93.123.456.789:21... Status: Connection established, waiting for welcome message... Response: 220 Welcome to My Website. Command: AUTH TLS Response: 234 Proceed with negotiation. Status: Initializing TLS... Status: Verifying certificate... Command: USER ftpuser1 Status: TLS/SSL connection established. Response: 331 Please specify the password. Command: PASS ****** Response: 230 Login successful. Command: SYST Response: 215 UNIX Type: L8 Command: FEAT Response: 211-Features: Response: AUTH TLS Response: EPRT Response: EPSV Response: MDTM Response: PASV Response: PBSZ Response: PROT Response: REST STREAM Response: SIZE Response: TVFS Response: UTF8 Response: 211 End Command: OPTS UTF8 ON Response: 200 Always in UTF8 mode. Command: PBSZ 0 Response: 200 PBSZ set to 0. Command: PROT P Response: 200 PROT now Private. Status: Connected Status: Retrieving directory listing... Command: PWD Response: 257 "/" Command: TYPE I Response: 200 Switching to Binary mode. Command: PASV Response: 227 Entering Passive Mode (93,123,456,789,11,200). Command: LIST Response: 150 Here comes the directory listing. Error: Connection timed out Error: Failed to retrieve directory listing

- Ich habe in vielen Foren viel zu diesem Problem gesucht, aber es wurde nirgends eine Lösung gefunden. Nach vielen verzweifelten Attentatsversuchen über viele Tage suche ich hier nach Rat. Die Verbindung ist passiv, die Serverkennzeichnung gibt die externe IP-Adresse an den Client sowie die Ports in einem engen Bereich an, z. B. 3000-3030. Die VSFTPD-Konfigurationsdatei befindet sich hier :

listen=YES anonymous_enable=NO local_enable=YES chroot_local_user=YES chroot_list_enable=NO pam_service_name=ftp check_shell=NO ftpd_banner=Welcome to my website. userlist_enable=YES userlist_deny=NO max_clients=5 max_per_ip=2 pasv_enable=YES pasv_min_port=3000 pasv_max_port=3030 pasv_address=93.123.4xx.7xx # (external IP address of the server) pasv_addr_resolve=NO write_enable=NO ssl_enable=YES force_local_logins_ssl=YES force_local_data_ssl=YES ssl_tlsv1=YES rsa_cert_file=/etc/ssl/vsftpd/vsftpd.pem rsa_private_key_file=/etc/ssl/vsftpd/vsftpd.pem

Ich habe die richtige Portweiterleitung im Router eingestellt, dh der Port 21 sowie die Ports im Bereich 3000-3030 werden an die Server-Maschine weitergeleitet. Auch wenn ich versuche, mich von einem beliebigen Ort aus mit dem Server zu verbinden, kann ich feststellen, dass der vom Server zugewiesene Port im Bereich 3000-3030 liegt (z. B. in der obigen Nachricht 11 * 256 + 200 = 3016!)

1
Haben Sie über SFTP statt über FTP nachgedacht? Beide sind sicher, aber Sftp ist viel einfacher, durch eine Firewall zu arbeiten, da nur ein Port verwendet wird. Brian Adkins vor 10 Jahren 0
Könnten Sie eine Paketerfassung (unter Verwendung von tcpdump / wireshark) der Verbindung durchführen, vorzugsweise eine auf dem Client und eine andere auf der Serverseite. Und welche Art von Router betreiben Sie? Einige (wie Äpfel Flughafen Extreme) haben an Port 21 einen FTP-Proxy gebunden, der nicht mit verschlüsselten Verbindungen funktioniert. Steffen Ullrich vor 10 Jahren 0
@SteffenUllrich: Ich habe versucht, den Verkehr zu analysieren, aber Colud findet nichts weiter lesbares als: `Antwort: 234 Fahren Sie mit der Verhandlung fort.` Jede `Antwort` oder` Anfrage` darunter ist in der Form von \ 026 \ 003 \ 000 \ 000 \ ... ` Mubeen Shahid vor 10 Jahren 0
Ich verwende den SpeedPort W723V-Router der Telekom und habe konfiguriert: ** 1. ** den Server, um eine verschlüsselte Verbindung (PASV) auf dem Port (min. 3000, max. 3030) herzustellen, und ** 2. ** den Router, der weitergeleitet werden soll die Ports im Bereich 3000-3030 für den FTP-Server aus der Liste der vom Router erkannten Geräte. Mubeen Shahid vor 10 Jahren 0
Ich weiß nicht, ob dieser Router so intelligent ist wie der Airport Extreme-Router und über einen internen FTP-Proxy verfügt. Versuchen Sie, Ihren FTP-Server und die Portweiterleitung an einem anderen Port als 21 einzurichten, um zu sehen, ob es dann funktioniert. Steffen Ullrich vor 10 Jahren 1

0 Antworten auf die Frage