A protocol used to send and receive files. The ftp client (person/software using ftp) connects to an ftp server. The client gains access to all or some of the files on the server computer. The client can download files or upload his/her own. The FTP server can require a password for access to all or some of the files, or for permission to upload or change files.

FTP is the file transfer protocol. That is to say, a means of uploading or downloading files.
FTP is often used because it is fast and easy to use. It also allows you to resume transfers (dependant on the server daemon)
(An ftp server on Unix systems is often called an ftp daemon, or ftpd)
Port 21 is the default port for ftp.
Transfer is either in binary or ascii mode. Some clients can auto-detect on the basis of file extension.

Access may be in the form of a registered user of the system (username and password) or as an anonymous login.
Try logging in via ftp with the username of "anonymous" and password of a valid email address.

Also an abbreviation for Foiled Twisted Pair, a type of network cable where the signal cables have been insulated by a strip of aluminium foil, wrapped in a spiral. Confusing the hell out of LAN technicians, I'll bet you.

This type is cheaper than proper STP, but more susceptible to mechanical wear, making it a bad choice for patch boards.

Buying bulk Ethernet cable from clueless induhviduals often gets you FTP when you've specifically asked for proper STP, prompting the following exclamation:
Curses! Foiled again!

To connect to a remote computer using FTP, type ftp hostname. Hostname can be an IP address or a hostname (usually referenced in a DNS server).

Common commands for FTP:

  • open
    Opens a connection to a specified host.

  • close
    Closes the currently open connection.

  • quit
    Close the current open session and exit FTP.

  • binary
    Change the file representation type to binary. Useful for downloading non-text files.

  • ascii
    Change the file representation type to ASCII. Useful for transferring text files.

  • put
    Transfer a single file from your machine to a remote machine.

  • mput
    Transfer multiple files from your machine to the remote machine.

  • get
    Transfer a single file from a remote machine to yours.

  • mget
    Transfer multiple files from a remote machine to yours.

  • cd
    Change the remote machine's current directory.

  • lcd
    Change the local machine's current directory.

  • cdup
    Change the remote machine's current directory up one to the parent directory. Same as UNIX cd .. command.

  • dir
    List the remote machine's current directory. Same as UNIX ls command.

  • pwd
    Display the remote machine's present working directory.

  • mkdir
    Make a new directory on the remote machine.

  • rmdir
    Remove a directory on the remote machine.

  • rename
    Change the name of a file or directory on a remote machine.

  • delete
    Delete a file on a remote machine. Note: see rmdir for removing a directory.

  • mdelete
    Delete multiple files on a remote machine.

  • ?
    Obtain help about FTP. Usually displays listing of commands. Typing ? and a command name will display info about that command.

  • !
    Escape the shell.

    If you are having problems executing files that you download with FTP, check your transfer type. It may be set to ASCII.

    To save time in UNIX, you can set up a .netrc file that contains your logon, password and account to use. Make sure that it is in your home directory and is unreadable by other folks. Remember, Mr. Root can see and play with everything, so don't include sensitive passwords.

    Even if you are using a Windows program to transfer files via FTP, the interface just makes things easier by associating commands to icons. The GUI interface just hides the scary command-line interface. For all the pretty graphics, the thing still runs on commands issued for the FTP protocol.

  • So you've logged into your favourite FTP server with your personal name and login password. Since you're the only person who knows your password, there's no chance that someone else can access your files, right?

    Wrong

    You may already know that anyone can snatch the files you send back and forth, but there's something else even worse waiting for the unsuspecting user.

    1. Load up your telnet client

    2. Connect to the FTP server using the FTP port of the server(either 20 or 21). With telnet for Windows, just type 'ftp' where it says port

    3. There will be a login line such as:

    host-a Microsoft FTP Service (Version 5.0).
    

    Now remember, at this point, all communication between your computer and the FTP server is in plaintext, meaning anyone can eavesdrop on you.

    Tell the server your user name as follows:
    user core10k{ENTER}

    Don't type {ENTER}, just press the enter key.

    The server will respond with something like: 331 Password required for core10k.

    So far so good, the malicious eavesdropper doesn't have any information that isn't freely available.

    Now here's the kicker. It's time to authenticate. How is this done? That's right, you send your password, in plaintext, for anyone to view.

    pass fuzzystuff52{ENTER}

    FTP sends the password as plaintext instead of using a more secure one-way encryption algorithm like MD5

    What does this mean for you? The eavesdropper just got your password. Now they can log in as you!

    God forbid you use that password for any other logins.

    Moral of the story: use public key encryption, but even then, watch your back for the Men in Black. There is no such thing as security.

    Perhaps it's worth mentioning that ftp can function in two distinct ways, one of which is much more likely to succeed if your ftp client is behind a network address translating router (NAT) or a firewall.

    Ftp is unusual, amongst Internet protocols, because it uses two tcp socket connections to do its business.

    • The control connection is used to pass commands from the client to the server, and the server's response messages back to the client. This is the connection mentioned in core10k's writeup, above, that is initiated by the client connecting to port 21 on the server. (It is always port 21 on a standard server, never port 20.)

    • The data connection is established when data (as opposed to response messages) needs to be transferred. This data is either a directory listing (the response to the ls command) or a file which is transferred (in response to the get or put commands.)
    It's in how the data connection is handled that the two ftp modes differ.

    In normal (active) mode, the client uses the ftp PORT command to instruct the server to connect back to it on a specific address and port. Normally the server connects from its own port 20. Because the server is initiating the connection, this will usually not work if the client is behind a NAT device or a firewall - it either doesn't know where to send the incoming connection or doesn't want to let it through.

    In passive mode (sometimes called pasv) the client connects outward to the server, instead, to create the data connection. The firewall is happy with this, because it's an outgoing connection and it's easy to tell which local computer it belongs to.

    Some NAT software will handle ftp connections in normal mode, however (iproute, an old DOS-based NAT router program, was the first one I found.) It does this by peeking inside the PORT commands issued by the client. Because this information belongs to a higher network layer, and is supposed to be invisible to the router software, purists will say it breaks the network model and is very naughty, but I've found it works very well in practice.

    In quiz bowl, this is a common abbreviation for "For Ten Points" as used at the end of questions. Most questions used in NAQT-style tournaments have a pyramidal structure, where the most obscure facts come at the beginning and the giveaway is towards the end. Questions (sometimes) have a power mark, before which the question is worth 15 points; around the time FTP is encountered, many average players might be able to get it.

    To demonstrate where FTP might be used, here's a sample question (from the packet at http://www.naqt.com/IS-packet.htm)

    His unrestricted personal life and literary lyricism earned him comparison to fellow poet Lord Byron, and like Byron he denounced the reactionary movement which had set in after the Napoleonic Wars. During his exile in southern (*) Russia, he wrote The Prisoner of the Caucasus, which followed his first major work, Ruslan and Ludmila. FTP name this poet, who took many of his themes from Russian folklore and was killed in an 1837 duel after writing the verse drama Eugene Onegin.

    answer: Aleksandr (Sergeyevich) Pushkin

    Variants of FTP include FAQTP (For A Quick Ten Points), FFP or F5P (For Five Points), F15P (For Fifteen Points), FTPAP (For Ten Points APiece) and FTSNOP (For The Stated Number of Points; pronouced "fits-nop").

    FSF = F = -fu

    FTP /F-T-P/, not /fit'ip/

    1. [techspeak] n. The File Transfer Protocol for transmitting files between systems on the Internet. 2. vt. To beam a file using the File Transfer Protocol. 3. Sometimes used as a generic even for file transfers not using FTP. "Lemme get a copy of "Wuthering Heights" ftp'd from uunet."

    --The Jargon File version 4.3.1, ed. ESR, this entry manually entered by rootbeer277.

    Log in or register to write something here or to contact authors.