D : PASV o PORT , cosa sono e quale usare?

a chi si rivolge : utenti ftp / e proprietari siti ftp

leggi questa pagina in tedesco

R : Molti degli utenti ftp non sanno cosa siano i comandi PASV (Passive) e PORT , ma naturalmente questo non è un difetto . Innanzi tutto occorre sapere che ogni sessione FTP utilizza 2 connessioni TCP , e quando ci si connette ad un server FTP quest'ultimo utilizza la prima , e quando si richiede una LISTA DIRECTORY o un TRASFERIMENTO FILE è richiesta la seconda connessione TCP , e questi 2 comandi sono utilizzati per COSTRUIRE (negoziare) la seconda connessione TCP .

Potrà sembrare strano il fatto che esistano 2 comandi per la connessione DATI , e non uno solo , e questa potrebbe essere una domanda interessante . Qualche tempo fa , il comando PORT era probabilmente sufficiente , tuttavia con l'introduzione in quantità di software FIREWALL e dispositivi NAT , il comando PORT è diventato inutile , così fu introdotto il comando PASV , anche conosciuto come trasferimento dati compatibile FIREWALL .

Vediamo in dettaglio qual è la differenza tra questi 2 comandi :

PORT : il cliente ftp CHIEDE al server ftp di collegarsi all'indirizzo IP del cliente ftp (con un numero di porta)

PASV : il server ftp CHIEDE al cliente ftp di collegarsi all'indirizzo IP del server ftp (con un numero di porta)

Così non è difficile realizzare quanto segue :

PORT fallirà : se il cliente ftp non conosce il suo reale indirizzo (succede quando il cliente è dietro ad un NAT)

PASV fallirà : se il server ftp non conosce il suo reale indirizzo (succede quando il server è dietro ad un NAT)

Dove è possibile vedere i comandi PORT/PASV e relative risposte ?!  Bene , procuratevi un buon cliente FTP con una finestra che mostri i comandi :) , per esempio : FlashFXP , CuteFTP , Windows Commander e molti altri che non elenchiamo .. ma naturalmente , esistono alcuni clienti FTP che nascondono questi comandi/risposte, in modo che non si vedano affatto .

Adesso dovrebbe essere chiaro cosa configurare nel caso si incontrino problemi con PORT and PASV ..

Problema 1: il vostro cliente FTP non esegue LIST DIR e viene mostrato  "PORT command failed error" , perché questo comando è mandato dal cliente FTP , così se i dati IP+PORTA del cliente FTP mostrati in questo comando rientrano nel tipo di quelli dietro ad un NAT :

Allocazione Indirizzi per Internet Privata
10.0.0.0 - 10.255.255.255 (prefisso 10/8)
172.16.0.0 - 172.31.255.255 (prefisso 172.16/12 )
192.168.0.0 - 192.168.255.255 (prefisso 192.168/16 )

Allora sapete che è un difetto del cliente ftp , si può provare a dire a questo utente FTP di impostare correttamente il suo FTP , chiedere di utilizzare il PASV mode , mai usare il PORT mode , visto che il suo cliente FTP non comunica correttamente

Problema 2: il vostro cliente ftp può collegarsi al server FTP , ma non viene eseguito LIST DIR e viene mostrato un errore : "PASV failed , no one connects to IP:PORT" . Osservate i dati IP+PORTA ... rientrano nel tipo di indirizzi IP dietro a un NAT ?

Allocazione Indirizzi per Internet Privata
10.0.0.0 - 10.255.255.255 (prefisso 10/8)
172.16.0.0 - 172.31.255.255 (prefisso 172.16/12)
192.168.0.0 - 192.168.255.255 (prefisso 192.168/16)

In questo caso , il proprietario del server dovrebbe configurarlo propriamente , non permettendo al server FTP di utilizzare un'indirizzo IP interno ( leggere : http://www.raidenftpd.com/en/raiden-ftpd-doc/howto-setup-ip.html ) , se i dati IP+PORTA sono corretti e sono gli stessi dell'indirizzo IP del server , le possibilità si moltiplicano , e solitamente non è possibile capire il vero motivo immediatamente , occorre seguire i passi seguenti .

1. Passare ad un'altro software cliente FTP / aggiornare la versione del vostro software cliente FTP . Non c'è dubbio che esistano pessimi clienti FTP in giro e non verranno elencati qui. Va notato inoltre che, facendo FXP , l'altro server FTP diventa in effetti un cliente FTP , e naturalmente esistono pessimi server FTP in circolazione e non verranno elencati qui .

2.SE siete utenti FTP , controllate se state eseguendo qualche applicazione FIREWALL/Sicurezza che blocca la seconda connessione , e rimuovete il blocco

3.SE siete proprietari di un server , controllate se state eseguendo qualche applicazione FIREWALL/Sicurezza che blocca la seconda connessione , e rimuovete il blocco

Sono stati risolti tutti i problemi ? La risposta potrebbe essere NO , e sarà impossibile capire il problema a meno che non possiate sedervi ad ambedue i lati del collegamento server/cliente . La ragione è semplice , come è possibile sapere se esiste un FIREWALL dal lato cliente ? oppure come cliente , come è possibile sapere se esiste un FIREWALL dal lato server ? La risposta è ... NON SI RIESCE A SAPERE .

Anche nel caso abbiate il controllo di ambedue i computer server e cliente , come è possibile sapere se l'amministratore di rete o ISP ha installato un FIREWALL sulla macchina GATEWAY della vostra rete o no ? La risposta è ancora NON SI RIESCE A SAPERE ...

Perciò nel caso troviate questi errori .. provate a seguire i passi sopra e cercate la VOSTRA RISPOSTA , perchè RaidenFTPD non ha problemi di PASV/PORT e visto che nessuno (inclusi voi stessi) probabilmente saprà il vero motivo . Dovete cercarlo per vostro conto , e tutto quello che è necessario sapere è incluso in questa pagina .

Questo è tutto

 

Copyright © RaidenFTPD TEAM , ALL RIGHTS RESERVED

REVISION 2.4, 2017-06-28

FTP server | Streaming server | WEB server