Servers and Ports
Let’s begin with a quick overview of servers and how they work. First of all,
the word server has two meanings, and this can cause confusion. It can refer
to a particular computer located at a particular place. It also refers to the
software that runs on that computer, that lets it fulfill the functions of a
server. Sometimes you might have many physical machines that are linked to appear
as a single “server”, other times one single machine may appear to
be many different servers depending on which type of incoming requests it receives.
Each physical machine has a number of different “ports”, and each
port can receive requests. Here are some of the more common port numbers:
21 – FTP
25 – SMTP
79 – Finger
80 – HTTP
110 – POP3
119 – NNTP
Note: If you are using Windows, look for a file called “Services”
in your Windows directory (usually C:\Windows) for a more complete list of ports.
One way to think of these ports is like they are different telephone extensions
in a large company. Each port connects to a different office, and whether or
not you can do what you want to do depends on whether anyone is answering the
phone at the other end.
For a machine to function as a Web server, for instance, you need to install
a type of software called a Web server (like Apache, the most popular on the
Internet), and tell it to “answer” any calls that come in on Port
80. If you want it to accept incoming e-mail and send it on, you need to install
SMTP software (like Sendmail), and tell it to watch Port 25. So for all of the
functions you might want a server to handle, you need to install the right software,
and tell it to watch the right port.
Ports and Security
You might think that all you need to do is just install of the right software,
and let everyone do what they want to do on the server. It isn’t that simple,
though, when you take security into account. Each port is potentially a gateway
by which an undesirable mischief maker can get into your server and cause trouble.
For that reason, any good server admin worries about closing any ports not absolutely
needed, and guarding those that are opened against any mischief. For this reason,
some Web hosts do not open the FTP port at all! They set up a system to allow
users to upload using HTTP instead, since that port is already opened, and using
it for uploads is therefore less of a security problem. HTTP uploads are not
as flexible as FTP, and you should never settle for this on a Web hosting account
that you pay for, but in some of the free ones, and some of the ISP-provided
Web accounts that come with your ISP account, you may find this.
If you do have FTP access to your account, it is quite likely that you are
the only one who would have such access. To allow other users in via anonymous
FTP, the hosting company would need to specifically allow anonymous FTP by configuring
their FTP server software that way. And most will not do this for two reasons:
- It is an additional potential security risk to let unknown strangers onto
your server for any reason.
- The total bandwidth consumed in serving up files is generally larger than
that consumed in serving up Web pages, and bandwidth costs money. The hosting
company may wish to charge more to offer this service, and may wish to place
it on a different server from the Web pages for security reasons.
FTP Links, a suggestion
For the reasons I have outlined, simply placing a file in your Web directory
and then creating an FTP link to it is very likely to fail. However, note that
you can transfer files via HTTP, though it is not quite as efficient as FTP,
so the download may take a little longer. But unless you are dealing with very
large files, this is not much more than a couple of seconds extra, so it is
not a big deal. You can simply link to the file name using a URL: “http://www.domain.com/filename.exe”
If you want to experiment with placing an FTP link on your page, you might
want to take advantage of the fact that many companies use FTP servers to provide
software to customers. On large downloads, to large numbers of customers, the
efficiency of FTP is worth the trouble of setting up dedicated FTP servers.
Here are a few to try out.
AOL – ftp.aol.com
Netscape – ftp.netscape.com
Note that you can go to any anonymous FTP site, like either of the above, by
entering the address in the address window in your browser as follows:
Or, you can get a specific software client for FTP. For more on this, FTP for PCs.