G LU G | National Institute of Technology Hamirpur

What is FTP?

FTP stands for File Transfer Protocol.It is a protocol widely used for transferring files over any network that supports the TCP/IP protocol suite. There are two computers involved in an FTP transfer: a server and a client. The FTP server, running FTP server software, listens on the network for connection requests from other computers. The client computer, running FTP client software, initiates a connection to the server. Once connected, the client can do a number of file manipulation operations such as uploading files to the server, download files from the server, rename or delete files on the server and so on.

The FTP protocol is described in RFC959.

»»Read RFC959

RFC

In internetworking and computer network engineering, Request for Comments (RFC) documents are a series of memoranda encompassing new research, innovations, and methodologies applicable to Internet technologies.

»»Read more

Announcements

We are in the process of enriching our bulletin board and tutorial sections. So anyone interested in writing a tutorial, a review, or sharing interesting links, can just type them down and mail copies to Debarshi ( [email protected] ) and me ( [email protected] ), and we will take care of the rest. Make sure you include the text (plain text only), relevant screenshots and other stuff as seperate attachments.

Posted by Arjun Shankar at 14:08 hr 01/04/2006.

ProFTPD: Quick and Dirty

Well, everyone knows about the connect-nith project that the second year guys have been working on. It's great, but did you know that there _is_ a free alternative on Linux? Regardless, you certainly know now. There are several ftp servers available off the shelf (Pure-FTPd, WU-FTPD and vsftpd to name a few). The advantage ProFTPD ( http://www.proftpd.org ) is that it is 'highly configurable'. vsftpd ( http://vsftpd.beasts.org ) is supposed to be more fast and secure (and the choice is often a subject of flame wars, which we at GLUG-NITH really should hate! Right?), and each one has it's own special advantage so lets just leave it at that.

Wow! thats a lot of philosophy for a tutorial thats supposed to be 'Quick and Dirty'! So, lets get down to the brass-tacks:

1. If you are using Ubuntu or Fedora, or any distro with package management, get the proftpd package (Ubuntu users simply need to go to System->Administration->Synaptic Package Manager, and if it is already set up properly, install proftpd from the thousands of available packages. I think I'll write a small tutorial on synaptic one of these days!), or compile from source (If you are attempting compiling, you really don't need my advice at all! Go on and save yourself some time reading this ;)).

ProFTPD running.

2. Once you have done that, edit /etc/proftpd.conf with root privileges. This is how:
Code (for Ubuntu users, and also for those with the sudo package installed and set up):
---------------------------------------------------------------------------------------------------------
sudo gedit /etc/proftpd.conf ;(as user with sudoing powers)
---------------------------------------------------------------------------------------------------------
Code (for others):
---------------------------------------------------------------------------------------------------------
su -
gedit /etc/proftpd.conf ;(as root)
---------------------------------------------------------------------------------------------------------

3. Copy and paste this config file into it. (It is a simpler form of the config I use):
proftpd.conf

4. On Line 6, replace "TheHotChilipepper" (my notebook!) with the name of your server (keep it the same as your hostname, its's better that way).

5. On Line 45, replace "/data/LinuxDownloads" one of the directories I share, with the directory _you_ want to share.

6. Save the file.

7. Restart ProFTPD:
Code (for Ubuntu users, and sudo fans):
---------------------------------------------------------------------------------------------------------
sudo /etc/init.d/proftpd restart
---------------------------------------------------------------------------------------------------------
Code (for others):
---------------------------------------------------------------------------------------------------------
su -
/etc/init.d/proftpd restart
---------------------------------------------------------------------------------------------------------
It Works now! (If neither you not me screwed it up anywhere). But wait a bit.

8. Make sure proftpd starts upon booting each time. (Ubuntu users can go to System->Administration->Services, and check the 'FTP Server (proftpd)' opton, others, you will probably have an equivalent, simple way to do it, look around and use it).

9. Go to a browser and type: ftp:// / and see what happens.

10. It works? Great! It's doesnt, look and see if you made a mistake anywhere, If you think I made one in telling you, or if you cant figure it out, drop me a mail, or a scrap (we are all into orkut arent we? ;))

Thats it. 10 short steps is 'Quick and Dirty' right? Have fun!

Posted by Arjun Shankar at 13:39 hr 01/04/2006.