Sunday, February 11, 2007

FTP PASSV

Normal FTP uses a "command" connection for sending commands from client to server. When a client downloads a file, the server opens a TCP connection back to the client in order to transfer the data.
In a normal firewall environment, the firewall allows all outgoing TCP connections from clients to servers, and blocks all incoming connections (that might be hackers trying to break into machines). This FTP mode of creating an inbound connection causes problems. One solution is to use smarter firewalls. Another solution has been to use an alternate mode in FTP called "PASV", where the client initiates the data connection.
Many FTP clients do not support PASV transfers. For example, the standard FTP.EXE built into Windows does not support this feature. The user can still do a "quote PASV", which will tell the server to enter PASV mode, but the client still will not work in this mode. (This is a common problem, users enter "quote PASV" but things still don't work).