File Transfer Protocol (FTP) is a standard network protocol used to transfer files from one host to another. It is working through an TCP/IP – based network, just like the internet is. It is built on client-server architecture. You can use it with a password or signing in as an anonymous user.
The way that an ftp server works is kind of easy. The user is connecting to the host by getting an id or signing in as an anonymous user. After he is logged in he can make a file transfer with the host or other users online. You can upload and share your files, or you can download what other users shared with you.
You have two possibilities to connect to an FTP sever. You can do that in a passive way or an active way. In the active way the client send to server an IP address and port number which the client will listen to it, and the server initiates the TCP connection. The passive way is used for the ones that are protected by an firewall. In this case, the client sends and PASV command to the server and he receives back an IP address and a port number. Both ways of connecting to an ftp server were updated in September 1998 to add support for IPv6.
For transferring data over the network, you can use the ASCII mode for text, Image mode or Binary mode to send each file byte for byte, EBCDIC mode use for plain text hosts using EBCDIC character set, which is like ASCII mode, and the final one is Local mode that allows two computer with identical setups to send data without the need to convert it to ASCII
To install the server we used the ProFTPd program. The command we had to give was “sudo apt-get install proftpd” and the installation started by itself. The next step was to configure the server so that we can control how many users we can have online, or how many users we can have per host. (here we can put some print screens)
To try the server we connected an Windows client with an cabled and wire less connection to internet, a Mac client using an wireless connection and a cabled one too. The fourth ways of connecting to the server worked so that we can transfer files anytime we want.
Documentation : http://en.wikipedia.org/wiki/Ftp;