Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ ftpd(8) — CLIX 3.1r7.6.28

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ftp(1)

inetd(8)

sh(1)

services(4)



  ftpd(8)                             CLIX                             ftpd(8)



  NAME

    ftpd - Internet File Transfer Protocol (FTP) server

  SYNOPSIS

    usr/ip32/tcpip/ftpd

  DESCRIPTION

    The ftpd server initializes the Internet File Transfer Protocol (FTP)
    server process.  The ftpd server uses the Transmission Control Protocol
    (TCP) and listens at the port specified in the ftp service specification
    (see services(4)).  The server is normally started by the inetd server.

    The ftpd server currently supports the following FTP requests; case is not
    distinguished.

    ABOR   Aborts previous command.

    ALLO   Allocates storage (vacuously).

    APPE   Appends to a file.

    CDUP   Changes to parent of current working directory.

    CWD    Changes working directory.

    DELE   Deletes a file.

    HELP   Gives help information.

    LIST   Gives a list of files in a directory (ls -ls).

    MKD    Makes a directory.

    MODE   Specifies data transfer mode.

    NLST   Gives a name list of files in a directory (ls).

    NOOP   Does nothing.

    PASS   Specifies password.

    PASV   Prepares for server-to-server transfer.

    PORT   Specifies data connection port.

    PWD    Displays the current working directory.

    QUIT   Terminates session.



  2/94 - Intergraph Corporation                                              1






  ftpd(8)                             CLIX                             ftpd(8)



    RETR   Retrieves a file.

    RMD    Removes a directory.

    RNFR   Specifies rename-from filename.

    RNTO   Specifies rename-to filename.

    STOR   Stores a file.

    STOU   Stores a file with a unique name.

    STRU   Specifies data transfer structure.

    TYPE   Specifies data transfer type.

    USER   Specifies username.

    XCUP   Changes to parent of current working directory.

    XCWD   Changes working directory.

    XMKD   Makes a directory.

    XPWD   Displays the current working directory.

    XRMD   Removes a directory.

    Additional FTP requests specified in Internet RFC 959 are recognized, but
    not implemented.

  Client Access Restrictions

    The ftpd server takes special measures to restrict client access
    privileges.  The ftpd server authenticates users according to the
    following three rules:

    ⊕  The username must be in the password database, /etc/passwd, and not
       have a null password.  A valid password must be provided by the client
       before any file operations may be performed.  (The anonymous and ftp
       usernames are exceptions to this rule.)

    ⊕  The username must not appear in the file /etc/ftpusers.

    ⊕  If the username is anonymous or ftp, one of these accounts must be
       present in the password file.  In this case the user is allowed to log
       in by specifying any password (by convention this is given as the
       client host's name).  User's access is then restricted to the
       subdirectories of the account.  In the last case, ftpd takes special
       measures to restrict the client's access privileges.  The server
       performs a chroot command to the home directory of the "ftp" user.  In



  2                                              Intergraph Corporation - 2/94






  ftpd(8)                             CLIX                             ftpd(8)



       order that system security is not breached, it is recommended that the
       "ftp" subtree be constructed with care; the following rules are
       recommended.

    ~ftp   Make the home directory owned by user ftp and unwritable by anyone.

    ~ftp/bin
           Make this directory owned by the superuser and unwritable by
           anyone. The ls command must be present to support the list
           commands, and sh must be present to support the pwd command.  These
           programs should have mode 111.

    ~ftp/dev/null
           Create this directory with the command mknod ~ftp/dev/null c 1 2.

    ~ftp/pub
           Make this directory mode 777 and owned by user ftp.  Users should
           then place files which are to be accessible via the anonymous
           account in this directory.

  EXAMPLES

    The ftpd server is spawned by the inetd daemon when an FTP request is made
    by the user (on the client side).

  FILES

    /etc/ftpusers   Configuration file disallowing specified usernames from
                    using FTP.

    /etc/passwd     Password file.

    /etc/services   Service name database.

  NOTES

    The ftpd server will timeout and exit after 15 minutes of an inactive
    session.

    The ftpd server will abort an active file transfer only when the ABOR
    command is preceded by a Telnet ``Interrupt Process'' (IP) signal and a
    Telnet ``Synch'' signal in the command Telnet stream, as described in
    Internet RFC 959.

    The ftpd server interprets filenames according to the globbing conventions
    used by the sh command.  This allows users to utilize the following
    metacharacters:  asterisk (*), question mark (?), open bracket ([), close
    bracket (]), open brace ({), close brace (}), and tilde (~).

  CAUTIONS




  2/94 - Intergraph Corporation                                              3






  ftpd(8)                             CLIX                             ftpd(8)



    The anonymous and ftp accounts are inherently dangerous and should be
    avoided when possible.

  DIAGNOSTICS

    Error messages are displayed to the console and are prepended with FTP
    Server:.  Following are some examples of ftp error messages.

    Lost connection with the remote client.
           There was an unexpected shutdown by the FTP client.

    Cannot send FTP command to the remote client.
           There was an error in the write() function to the client.

    Other error messages are related to the functions connect(), read(), and
    so on.

  EXIT VALUES

    The ftpd server exits with a value of 0 if successful.  If unsuccessful,
    it exits with a nonzero value.

  RELATED INFORMATION

    Commands:  ftp(1), inetd(8), sh(1)

    Files:  services(4)



























  4                                              Intergraph Corporation - 2/94




Typewritten Software • bear@typewritten.org • Edmonds, WA 98026