What is the FTP Server?
Being the main network protocol for migrating files over TCP computer networks or the Internet, FTP (acronym for File Transfer Protocol) requires a computer and an active hosting server for establishing a data transfer connection. While the availability of a computer, which is the first step to building the connection, is totally users' responsibility, the provision of an FTP server is within the authority of specific entities - businesses running internal networks or web hosting providers. Assigning FTP server connection rights to users is considered as a fundamental part of the services provided by web hosts.
Why install an FTP server?
Setting up an FTP server becomes necessary for businesses that manage their own network and need to establish a file transfer connection to facilitate the exchange of documents between company employees. It is also needed by web hosting companies that empower their clients to upload websites to the hosting servers they are managing. Also, the installation of an FTP server application is a good solution if you're a person who needs to share a large number of files over the Internet.
Installing an FTP server on a Windows host
If you consider installing an FTP Server on your Windows-based PC so as to share a large number of files over your personal network and/or the Internet, you are probably asking yourself where to start from.
The first important step is to choose an FTP Program which will match your requirements. An FTP server can be set by using many free and commercial FTP software applications and they all have the basic FTP features. Some of the most popular products for personal use are FileZilla FTP Server and Serv-U FTP (Personal Edition). In our movie below we will show you how to install the FileZilla FTP Server software, which is an open-source, cross-platform software application with a great list of features and provided totally free of charge.
An example of installing FileZilla FTP Server on Windows Vista (movie)
Once the FTP server software is installed, you need to create FTP accounts and to set up FTP sharing folders. The process of sharing folders with FTP users is described in more detail in the FTP Account article.
Configuring a Windows Firewall and a broadband router
After finishing the configuration of your FTP program, it is important to ensure that you have a proper outside access to your new FTP server. First off, you need to add an exception for your FTP program in your Windows Firewall software. If you're using the default firewall embedded in Windows, you should go to the Control Panel → Security Center, and select Windows Firewall. In the Windows Firewall window select the exceptions tab and add the FilleZilla server's executable in the exceptions list.
Now your firewall is configured, and your FTP server should be accessible through your home/personal network. If you are behind an access point/router which shares your broadband connection between your PC and your notebook, for example, you also need to forward your server's FTP port to port 21 on the router.
Installing an FTP server on a Linux host
One of the most popular, scalable and proven Linux-based FTP server software applications is ProFTPD. One of the main features that makes ProFTPD one of the most widely used FTP software applications is that ProFTPD is very similar to the Apache web server in terms of configuration file content and syntax, modules, and more.
In our article we will show you the basic steps of installing and configuring ProFTPD on an Ubuntu Linux host. First off, you need to open a terminal console window and to type the following command:
How to install a ProFTPD server on Ubuntusudo apt-get install proftpd
Once the FTP program is installed you need to open your ProFTPD configuration file - proftpd.conf located in the '/etc' directory.
How to open /etc/proftpd.conf in GEditsudo gedit /etc/proftpd.conf
In the configuration file you need to set the ServerName, ServerIdent and DefaultRoot. It's also recommended that you adjust the DenyFilter, UseReverseDNS, Maxclients and MaxClientsPerHost settings.
Each NTC Hosting customer is given FTP access to the company's ProFTPD servers through the FTP Manager tool integrated into the Control Panel each web hosting plan comes equipped with. Users can create multiple FTP accounts on the server where their account is located and use each of them for separate hosts.