© 2022 HyQuest Solutions
113
Appendices
In step 1, the client contacts the server on the command port and issues the
PASV
command. The server then replies in
step 2 with
PORT 2024
, telling the client which port it is listening to for the data connection. In step 3 the client then
initiates the data connection from its data port to the specified server data port. Finally, the server sends back an ACK in
step 4 to the client's data port.
While passive mode FTP solves many of the problems from the client side, it opens up a whole range of problems on the
server side. The biggest issue is the need to allow any remote connection to high numbered ports on the server.
Fortunately, many FTP daemons, including the popular WU-FTPD allow the administrator to specify a range of ports
which the FTP server will use.
The second issue involves supporting and troubleshooting clients which do (or do not) support passive mode.
As an example, the command line FTP utility provided with Solaris does not support passive mode, necessitating a third-
party FTP client, such as ncftp.
Note
: This is no longer the case--use the -
p
option with the Solaris FTP client to enable passive mode!
With the massive popularity of the World Wide Web, many people prefer to use their web browser as an FTP client. Most
browsers only support passive mode when accessing ftp:// URLs. This can either be good or bad depending on what the
servers and firewalls are configured to support.
Passive FTP Example
Below is an actual example of a passive FTP session. The only things that have been changed are the server names, IP
addresses, and user names. In this example an FTP session is initiated from testbox1.slacksite.com (192.168.150.80), a
Linux box running the standard FTP command line client, to testbox2.slacksite.com (192.168.150.90), a Linux box running
ProFTPd 1.2.2RC2. The debugging (-
d
) flag is used with the FTP client to show what is going on behind the scenes.
Everything in
red
is the debugging output which shows the actual FTP commands being sent to the server and the
responses generated from those commands. Normal server output is shown in black, and user input is in
bold
.
Notice the difference in the PORT command in this example as opposed to the active FTP example. Here, we see a port
being opened on the server (192.168.150.90) system, rather than the client. See the discussion about the format of the
PORT command above, in the
.
testbox1: {/home/p-t/slacker/public_html} % ftp -d testbox2
Connected to testbox2.slacksite.com.
220 testbox2.slacksite.com FTP server ready.
Name (testbox2:slacker): slacker
---> USER slacker
331 Password required for slacker.
Password: TmpPass
---> PASS XXXX
230 User slacker logged in.
---> SYST
Summary of Contents for iRIS Under Cover
Page 1: ...iRIS Under Cover User Manual ...
Page 13: ... 2022 HyQuest Solutions 13 Installation Figure 2 Mounting Diagram ...
Page 108: ... 2022 HyQuest Solutions 108 Appendices 8 1 Declaration of Conformity ...
Page 115: ... 2022 HyQuest Solutions 115 Appendices ...
Page 117: ...www hyquestsolutions com 2022 HyQuest Solutions 29 06 2022 ...