Tunneling FTP in Active Mode 
 
 
 In active mode, the FTP client creates a listener on a local port, for a data 
channel from the FTP server to the FTP client, and requests the channel by 
sending the IP address and the port number to the FTP server in a command of the 
following form: PORT 10,1,60,99,6,12. The Secure Shell client intercepts this 
command and creates a remote port forwarding from the localhost address of the Secure Shell server 
to the address and port specified in the PORT command.
 After creating the tunnel, the Secure Shell client rewrites the address 
and port in the PORT command to point to the newly opened remote forwarding on 
the Secure Shell server and sends it to the FTP server. Now the FTP server will 
open a data channel to the address and port in the PORT command, effectively 
forwarding the data through the Secure Shell connection. The Secure Shell client passes 
the incoming data to the original listener created by the FTP client. The net 
effect is that the data channel is secure the whole way except from the Secure 
Shell client to the FTP client. This sequence of events takes place automatically 
for every data channel.
 Since the tunnel is made to a localhost address on the Secure Shell 
client machine, the FTP client must be run on the same host as the Secure Shell 
client if passive mode is used.
 Where end-to-end encryption of FTP data channels is desired, the FTP server and 
Secure Shell server need to reside on the same host, and the FTP client and the
Secure Shell client will likewise need to reside on the same host. If this is 
the case, both active or passive mode can be used.
 Note: Consider using sftp2 or scp2 instead of FTP 
forwarding to secure file transfers. It will require less configuration than FTP 
forwarding, since SSH Tectia Server already has sftp-server2 as a 
subsystem, and sftp2 and scp2 clients are included in the distribution. Managing 
remote user restrictions on the server machine will be easier, since you do not 
have to do it also for FTP.