home *** CD-ROM | disk | FTP | other *** search
/ Handbook of Infosec Terms 2.0 / Handbook_of_Infosec_Terms_Version_2.0_ISSO.iso / text / rfcs / rfc1204.txt < prev    next >
Text File  |  1996-05-07  |  11KB  |  220 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                             S. Yeh Request for Comments: 1204                                        D. Lee                                               Netix Communications, Inc.                                                            February 1991 
  8.  
  9.                       Message Posting Protocol (MPP) 
  10.  
  11. Status of this Memo 
  12.  
  13.    This memo describes a protocol for posting messages from workstations    (e.g., PCs) to a mail service host.  This RFC specifies an    Experimental Protocol for the Internet community.  Discussion and    suggestions for improvement are requested.  Please refer to the    current edition of the "IAB Official Protocol Standards" for the    standardization state and status of this protocol.  Distribution of    this memo is unlimited. 
  14.  
  15. 1. INTRODUCTION 
  16.  
  17.    Operating systems for personal computers do not provide a mechanism    for user authentication.  However, such a mechanism is crucial for    electronic mail system since authenticating message sender's identity    is important in preventing mail forgery.  Hence, adding personal    computers to an electronic mail network requires an agent (message    posting server) to authenticate sender's identity and then submit    mail to the message delivery system (e.g., Sendmail, MMDF) on behalf    of the sender at a PC.  The Netix Message Posting Protocol is    developed to be the interface between the message posting server and    the PC (client).  The protocol is designed to use TCP and is based on    the command and reply structures defined for Simple Mail Transfer    Protocol (RFC 821) and File Transfer Protocol (RFC 959). 
  18.  
  19. 2. SPECIFICATIONS 
  20.  
  21. 2.1.  Command List 
  22.  
  23.       USER <SP> <username> <CRLF>       PASS <SP> <password> <CRLF>       DATA <CRLF>       NOOP <CRLF>       QUIT <CRLF> 
  24.  
  25. 2.2.  Reply List 
  26.  
  27.       220 Message Posting Service Ready.       221 Closing Connection.       250 Command OK. 
  28.  
  29.  
  30.  
  31. Yeh & Lee                                                       [Page 1] 
  32.  RFC 1204                          MPP                      February 1991 
  33.  
  34.        354 Enter mail, end with <CRLF>.<CRLF>       451 Local error encountered.       500 Command unrecognized.       501 Argument syntax error.       503 Illegal command sequence.       530 Authentication Failure.       550 Error. 
  35.  
  36. 2.3.  Command and Reply Descriptions 
  37.  
  38.       USER <SP> <username> <CRLF> 
  39.  
  40.          The USER command informs the message posting server about the          username of the user trying to submit mail to the network.  The          required argument for the USER command is a string specifying          the message sender's username. 
  41.  
  42.          The USER command can only be used under three conditions: 
  43.  
  44.          - when the session with the message posting server has just            started; 
  45.  
  46.          - right after a message text (terminated by the "<CRLF>.<CRLF>"            sequence) has been successfully submitted to the message            posting server; 
  47.  
  48.          - right after a USER command that gets the reply code 501. 
  49.  
  50.          List of possible reply codes for the USER command: 
  51.  
  52.          - 250   The username of the message sender has been accepted. 
  53.  
  54.          - 451   Internal error has occurred in the message posting                  server. 
  55.  
  56.          - 501   Syntax error detected in the username argument. 
  57.  
  58.          - 503   The USER command has been used under an inappropriate                  condition (i.e., one that is not specified above). 
  59.  
  60.          It is recommended that the message posting server should return          250 even if the username is not recognized by the message          posting server, as long as the username is syntactically          correct.  This is an attempt to prevent the message posting          server from releasing too much information about the user          database.  Client should not be able to test the existence of a          certain username. 
  61.  
  62.  
  63.  
  64.  Yeh & Lee                                                       [Page 2] 
  65.  RFC 1204                          MPP                      February 1991 
  66.  
  67.        PASS <SP> <password> <CRLF> 
  68.  
  69.          The PASS command is used to inform the message posting server          about the password associated with the username previously          specified.  The required argument for the PASS command is a          string specifying the message sender's password. 
  70.  
  71.          The PASS command can only be used under two conditions: 
  72.  
  73.          - right after a USER command that gets the reply code 250; 
  74.  
  75.          - right after a PASS command that gets the reply code 501. 
  76.  
  77.          List of possible reply codes for the PASS command: 
  78.  
  79.          - 250   The password has been accepted and verified to be                  correctly associated with the username previously                  specified. 
  80.  
  81.          - 451   Internal error has occurred in the message posting                  server. 
  82.  
  83.          - 501   Syntax error detected in the password argument. 
  84.  
  85.          - 503   The PASS command has been used under an inappropriate                  condition (i.e., one that is not specified above). 
  86.  
  87.          - 530   The password provided is not the one associated with the                  username previously specified. 
  88.  
  89.       DATA <CRLF> 
  90.  
  91.          The DATA command is used to inform the message posting server          to get ready to accept a mail message text.  No argument is          expected.  (This command has the same meaning as the DATA          command defined in RFC 821.) 
  92.  
  93.          The DATA command can only be used under two conditions: 
  94.  
  95.          - right after a PASS command that gets the reply code 250; 
  96.  
  97.          - right after a mail message text has been successfully            accepted from the client. 
  98.  
  99.          List of possible reply codes for the DATA command: 
  100.  
  101.          - 354   The message posting server is ready to accept the mail                  message text. 
  102.  
  103.  
  104.  
  105. Yeh & Lee                                                       [Page 3] 
  106.  RFC 1204                          MPP                      February 1991 
  107.  
  108.           - 451   Internal error has occurred in the message posting                  server. 
  109.  
  110.          - 503   The DATA command has been used under an inappropriate                  condition (i.e., one that is not specified above). 
  111.  
  112.          Upon receiving the reply code 354 for the DATA command, the          client should submit the mail message text to message posting          server and terminate the text by the sequence "<CRLF>.<CRLF>"          as defined in RFC 821.  If the message text includes the          "<CRLF>.<CRLF>" sequence, then the sequence is replaced by the          "<CRLF>..<CRLF>" sequence as defined in RFC 821.  The extra "."          token will not be included in the final copy of the submitted          message. 
  113.  
  114.          Upon receiving the mail message text terminated by the          "<CRLF>.<CRLF>" sequence, list of possible reply codes is: 
  115.  
  116.          - 250   The mail message text has been successfully queued for                  delivery. 
  117.  
  118.          - 451   Internal error has occurred in the message posting                  server and the mail message text has not been queued. 
  119.  
  120.       NOOP <CRLF> 
  121.  
  122.          The NOOP command does not cause any action to be performed by          the message posting server.  Instead, it tests the status of          the message posting server.  No argument is expected. 
  123.  
  124.          The NOOP command cannot be used under one condition: 
  125.  
  126.          - right after a DATA command that gets the reply code 354            (i.e., when the message posting server is expecting the client            to submit the mail message text). 
  127.  
  128.          List of possible reply codes for the NOOP command: 
  129.  
  130.          - 250   The message posting server has not encountered any                  internal error. 
  131.  
  132.          - 451   Internal error has occurred in the message posting                  server during the current session. 
  133.  
  134.       QUIT <CRLF> 
  135.  
  136.          The QUIT command is used to terminate the session with the          message posting server.  No argument is expected. 
  137.  
  138.  
  139.  
  140. Yeh & Lee                                                       [Page 4] 
  141.  RFC 1204                          MPP                      February 1991 
  142.  
  143.           The QUIT command can be used under any condition.  The message          posting server should always return the reply code 221 for the          QUIT command. 
  144.  
  145. 3. IMPLEMENTATION OF THE MESSAGE POSTING SERVER 
  146.  
  147.    There are several issues to be considered when implementing the    message posting server: 
  148.  
  149.    - secured environment    - port number assignment    - handling of idle client    - local/remote password database    - message queuing    - handling of message delivery failure 
  150.  
  151. 3.1  Secured Environment 
  152.  
  153.    The message posting server is responsible for authenticating message    senders and submitting mail to the message delivery system.  Hence,    it should be running in a secured environment, such as running on a    system (UNIX, VMS, MS-DOS) with well restricted physical and network    access. 
  154.  
  155. 3.2  Port Number Assignment 
  156.  
  157.    Port 218 is assigned for the Netix Message Posting Protocol. 
  158.  
  159. 3.3  Handling of Idle Client 
  160.  
  161.    The message posting server should terminate a session if the client    has been idle for too long, to release the resource allocated for the    session. 
  162.  
  163. 3.4  Local/Remote Password Database 
  164.  
  165.    To take advantage of existing password databases, such as the passwd    file in UNIX, the message posting server can use FTP and POP3 to    perform the username and password checking with the appropriate    server. 
  166.  
  167.    For network that does not have any password database, the message    posting server should let the system administrator specify a local    password file on the host that the message posting server is running. 
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175. Yeh & Lee                                                       [Page 5] 
  176.  RFC 1204                          MPP                      February 1991 
  177.  
  178.  3.5  Message Queuing 
  179.  
  180.    The message posting server should attempt to submit accepted messages    to the message delivery system as soon as possible. 
  181.  
  182. 3.6  Handling of Message Delivery Failure 
  183.  
  184.    Failure in delivering messages should be handled by the message    delivery system and the message posting server should not interfere. 
  185.  
  186. 4. REFERENCES 
  187.  
  188.    [1] Postel, J., "Simple Mail Transfer Protocol", RFC 821,        USC/Information Sciences Institute, August 1982. 
  189.  
  190.    [2] Postel, J., and J. Reynolds, "File Transfer Protocol", RFC 959,        USC/Information Sciences Institute, October 1985. 
  191.  
  192. Security Considerations 
  193.  
  194.    Security issues are discussed in section 3.1. 
  195.  
  196. Authors' Addresses 
  197.  
  198.    Shannon Yeh    Netix Communications, Inc.    15375 Barranca Parkway, Suite A-215    Irvine, CA 92718 
  199.  
  200.    Phone: (714) 727-9335 
  201.  
  202.    Email: yeh@netix.com 
  203.  
  204.     David Lee    Netix Communications, Inc.    15375 Barranca Parkway, Suite A-215    Irvine, CA 92718 
  205.  
  206.    Phone: (714) 727-9335 
  207.  
  208.    EMail: dlee@netix.com 
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218. Yeh & Lee                                                       [Page 6] 
  219.  
  220.