home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 15 / CD_ASCQ_15_070894.iso / vrac / how_to.zip / EMAIL.HOW < prev    next >
Text File  |  1994-04-29  |  17KB  |  447 lines

  1. Archive-name: linux/howto/mail
  2. Last-modified: 19 Apr 94
  3.  
  4.   The Linux Electronic Mail HOWTO
  5.   Vince Skahan, <vince@victrola.wa.com>
  6.   v1.5, Last modified 26 March 1994
  7.  
  8.   This  document describes the setup and care+feeding of Electronic Mail
  9.   (e-mail) under Linux. You need to read this if you plan to communicate
  10.   locally  or to remote sites via electronic mail. You probably do *not*
  11.   need to read this document if  don't  exchange  electronic  mail  with
  12.   other users on your system or with other sites.
  13.  
  14.   1.  Introduction
  15.  
  16.   The  intent  of  this  document is to answer some of the questions and
  17.   comments that appear to  meet  the  definition  of  'frequently  asked
  18.   questions' about e-mail software under Linux.
  19.  
  20.   This  document  and  the corresponding UUCP and News 'HOWTO' documents
  21.   collectively supersede the UUCP-NEWS-MAIL-FAQ that has previously been
  22.   posted to comp.os.linux.announce.
  23.  
  24.  
  25.   1.1.  New versions of this document
  26.  
  27.   New   versions  of  this  document  will  be  periodically  posted  to
  28.   comp.os.linux.announce, comp.answers,  and  news.answers.   They  will
  29.   also  be  added  to  the  various anonymous ftp sites who archive such
  30.   information including sunsite.unc.edu:/pub/Linux/docs/HOWTO.
  31.  
  32.  
  33.   1.2.  Feedback
  34.  
  35.   I am interested in any feedback, positive or negative,  regarding  the
  36.   content  of  this  document  via e-mail.  Definitely contact me if you
  37.   find errors or obvious omissions.
  38.  
  39.   I read, but do not necessarily  respond  to,  all  e-mail  I  receive.
  40.   Requests  for  enhancements will be considered and acted upon based on
  41.   that day's combination of available time, merit of  the  request,  and
  42.   daily blood pressure :-)
  43.  
  44.   Flames will quietly go to /dev/null so don't bother.
  45.  
  46.   Feedback concerning the actual format of the document should go to the
  47.   HOWTO coordinator - Matt Welsh (mdw@sunsite.unc.edu).
  48.  
  49.  
  50.   1.3.  Copyright Information
  51.  
  52.   The Mail-HOWTO is copyrighted (c)1994 Vince Skahan.
  53.  
  54.   A verbatim copy  may  be  reproduced  or  distributed  in  any  medium
  55.   physical or electronic without permission of the author.  Translations
  56.   are similarly permitted without express permission if  it  includes  a
  57.   notice on who translated it.
  58.  
  59.   Short  quotes  may  be  used  without  prior  consent  by  the author.
  60.   Derivative work and partial distributions of the  Mail-HOWTO  must  be
  61.   accompanied  with  either a verbatim copy of this file or a pointer to
  62.   the verbatim copy.
  63.  
  64.   Commercial redistribution is  allowed  and  encouraged;  however,  the
  65.   author would like to be notified of any such distributions.
  66.  
  67.   In short, we wish to promote dissemination of this information through
  68.   as many channels as possible. However, we do wish to retain  copyright
  69.   on  the HOWTO documents, and would like to be notified of any plans to
  70.   redistribute the HOWTOs.
  71.  
  72.   We further want  that  ALL  information  provided  in  the  HOWTOS  is
  73.   disseminated.   If  you have questions, please contact Matt Welsh, the
  74.   Linux HOWTO coordinator, at mdw@sunsite.unc.edu, or +1 607 256 7372.
  75.  
  76.  
  77.   1.4.  Standard Disclaimer
  78.  
  79.   Of course, I disavow any potential liability for the contents of  this
  80.   document.  Use of the concepts, examples, and/or other content of this
  81.   document is entirely at your own risk.
  82.  
  83.  
  84.   1.5.  Other sources of information
  85.  
  86.  
  87.   1.5.1.  LINUX HOWTO Documents:
  88.  
  89.   There is plenty of exceptional material provided in  the  other  Linux
  90.   HOWTO  documents  and  from the Linux DOC project.  In particular, you
  91.   might want to take a look at the following:
  92.  
  93.   o  the serial communications HOWTO
  94.  
  95.   o  the ethernet HOWTO
  96.  
  97.   o  the Linux Networking Guide
  98.  
  99.   1.5.2.  USENET:
  100.  
  101.  
  102.              comp.mail.elm           the ELM mail system.
  103.              comp.mail.mh            The Rand Message Handling system.
  104.              comp.mail.mime          Multipurpose Internet Mail Extensions.
  105.              comp.mail.misc          General discussions about computer mail.
  106.              comp.mail.multi-media   Multimedia Mail.
  107.              comp.mail.mush          The Mail User's Shell (MUSH).
  108.              comp.mail.sendmail      the BSD sendmail agent.
  109.              comp.mail.uucp          Mail in the uucp environment.
  110.  
  111.  
  112.  
  113.   1.5.3.  Mailing Lists:
  114.  
  115.   There is a smail-3.1 mailing list.  To join (or  get  off)  the  list,
  116.   send mail to
  117.  
  118.           smail3-users-request@cs.athabascau.ca
  119.  
  120.  
  121.  
  122.   Make  sure  that  you include the address at which you want to receive
  123.   mail in the text of the message.  To send a message to the list,  send
  124.   it to
  125.  
  126.           smail3-users@cs.athabascau.ca.
  127.  
  128.  
  129.  
  130.   1.5.4.  Books
  131.  
  132.   The following is a non-inclusive set of books that will help...
  133.  
  134.   o  "Managing  UUCP  and  USENET" from O'Reilly and Associates is in my
  135.      opinion the best book out there for figuring out the  programs  and
  136.      protocols involved in being a USENET site.
  137.  
  138.   o  "Unix   Communications"  from  The  Waite  Group  contains  a  nice
  139.      description of all the pieces (and more) and how they fit together.
  140.  
  141.   o  "Sendmail"   from   O'Reilly  and  Associates  looks  to  like  the
  142.      definitive reference on sendmail-v8 and sendmail+IDA.  It's a "must
  143.      have"  for  anybody  hoping  to  make sense out of sendmail without
  144.      bleeding in the process.
  145.  
  146.   o  "The Internet Complete Reference" from Osborne is a fine  reference
  147.      book  that  explains the various services available on Internet and
  148.      is a great "one-stop-shopping"  source  for  information  on  news,
  149.      mail, and various other Internet resources.
  150.  
  151.   1.6.  Where *NOT* to look for help
  152.  
  153.   There  is  nothing  "special" about configuring and running mail under
  154.   Linux (any more).  Accordingly, you almost certainly do *NOT* want  to
  155.   be  posting  generic  mail-related  questions  to  the comp.os.linux.*
  156.   newsgroups.
  157.  
  158.   Unless your posting is truly Linux-specific (ie, "please tell me  what
  159.   routers are already compiled into the SLS1.03 version of smail3.1.28")
  160.   you should be asking your  questions  in  one  of  the  newsgroups  or
  161.   mailing lists referenced above.
  162.  
  163.   Let me repeat that.
  164.  
  165.   There  is  virtually  no  reason  to post anything mail-related in the
  166.   comp.os.linux hierarchy any more.  There are  existing  newsgroups  in
  167.   the comp.mail.* hierarchy to handle *ALL* your questions.
  168.  
  169.   IF  YOU  POST TO COMP.OS.LINUX.* FOR NON-LINUX-SPECIFIC QUESTIONS, YOU
  170.   ARE LOOKING IN THE WRONG PLACE FOR HELP.  THE ELECTRONIC MAIL  EXPERTS
  171.   HANG OUT IN THE PLACES INDICATED ABOVE AND GENERALLY DO NOT RUN LINUX.
  172.  
  173.   POSTING TO THE LINUX HIERARCHY FOR NON-LINUX-SPECIFIC QUESTIONS WASTES
  174.   YOUR  TIME  AND  EVERYBODY  ELSE'S...AND IT FREQUENTLY DELAYS YOU FROM
  175.   GETTING THE ANSWER TO YOUR QUESTION.
  176.  
  177.  
  178.   2.  Hardware Requirements
  179.  
  180.  
  181.   There are no specific hardware requirements for mail under Linux.
  182.  
  183.   You'll need some sort of 'transport' software  to  connect  to  remote
  184.   systems, which means either tcp-ip or uucp.   This could mean that you
  185.   need a modem or ethernet card (depending on your setup).
  186.  
  187.  
  188.   3.  Getting the software
  189.  
  190.   In general, I grab my sources  from  ftp.uu.net  and  the  other  fine
  191.   archive  sites  on Internet.  In addition, Linux-specific binary ports
  192.   are found in the usual Linux  distrbutions  and  on  the  usual  Linux
  193.   anonymous   ftp   sites   (sunsite.unc.edu   and   tsx-11.mit.edu   in
  194.   particular).
  195.  
  196.   The newspak-2.1.tar.z distribution contains config  files  and  readme
  197.   files  related  to  building uucp, news, and mail software under Linux
  198.   from the various freely-available sources.  It can usually be found on
  199.   sunsite.unc.edu in the directory /pub/Linux/system/Mail.
  200.  
  201.  
  202.   4.  Mail 'Transport Agents'
  203.  
  204.   This section contains information related to 'transport agents', which
  205.   means the underlying software  that  connects  your  local  system  to
  206.   remote systems.
  207.  
  208.  
  209.   4.1.  Smail v3.1
  210.  
  211.   Smail3.1 seems to be a de-facto standard transport agent for uucp-only
  212.   sites and for some smtp sites.  It compiles without patching from  the
  213.   sources.   In  addition,  smail  is provided in binary form in the SLS
  214.   distribution of Linux.
  215.  
  216.   The newspak distribution contains config files for  smail3.1.28  under
  217.   Linux that you can use to start with.
  218.  
  219.   If   you're   building   smail   from   sources,   you  need  to  have
  220.   CASE_NO_NEWLINES=true in your os/linux file so that  'sed'  gives  you
  221.   shell scripts that work properly.
  222.  
  223.   For  a  uucp-only  system  that  has  a  MX-record  and  that  wants a
  224.   domainized header (who goes  through  a  smart-host  for  everything),
  225.   these are the entire config files you'll need:
  226.  
  227.  
  228.   o  replace 'subdomain.domain' with your domain name
  229.  
  230.   o  replace 'myhostname' with you un-domainized hostname
  231.  
  232.   o  replace 'my_uucp_neighbor' with the uucp name of your upstream site
  233.  
  234.  
  235.              #-------- /usr/local/lib/smail/config -----------------
  236.              #
  237.              # domains we belong to
  238.              visible_domain=subdomain.domain:uucp
  239.              #
  240.              # who we're known as (fully-qualified-site-name)
  241.              visible_name=myhostname.subdomain.domain
  242.              #
  243.              # who we go through
  244.              smart_path=my_uucp_neighbor
  245.              #
  246.              #---------- /usr/local/lib/smail/paths --------------
  247.              #
  248.              # we're a domainized site, make sure we accept mail to both names
  249.              myhostname        %s
  250.              myhostname.subdomain.domain      %s
  251.              #
  252.             
  253. #-------------------------------------------------------------------
  254.  
  255.  
  256.   To run smail as a smtp daemon, add the following  to  /etc/inetd.conf:
  257.   smtp stream tcp nowait  root  /usr/bin/smtpd smtpd
  258.  
  259.   Outgoing  mail  gets  sent  automatically,  when  using  elm.  If your
  260.   internet link is down when you  send  mail,  then  the  mail  sits  in
  261.   "/usr/spool/smail/input".   When the link next comes up, "runq" is run
  262.   which causes the mail to be sent.
  263.  
  264.  
  265.   4.2.  Sendmail+IDA
  266.  
  267.   I run  a  uucp-only  site  and  use  sendmail5.65b+IDA1.5  instead  of
  268.   smail3.1.28  due  to  the  incredible  ease of use.  There is a binary
  269.   distribution on sunsite.unc.edu in pub/Linux/system/Mail
  270.  
  271.   To install it...
  272.  
  273.  
  274.   o  you'll probably want to remove (or rename) all the files from smail
  275.      (see the /install/installed directory if you are SLS) to be safe.
  276.  
  277.   o  cd  to  /  then "gunzip -c sendmail5.65b+IDA1.5.tpz | tar xvf -" If
  278.      you have a "modern" tar from a recent Slackware (for  example)  you
  279.      can  probably  just  do a "tar -zxvf filename.tgz" and get the same
  280.      results.
  281.  
  282.   o  cd to /usr/local/lib/mail/CF and copy the sample.m4  local.m4  file
  283.      to  "yourhostname.m4".  Edit out the distributed hostname, aliases,
  284.      and smarthost and put in  the  correct  one  for  your  site.   The
  285.      default file is for a uucp-only site who has domainized headers and
  286.      who talks to a smart host.  Then "make  yourhostname.cf"  and  move
  287.      the resulting file to /etc/sendmail.cf
  288.  
  289.   o  if you are uucp-only, you do *NOT* need to create any of the tables
  290.      mentioned in the README.linux file.  You'll just have to touch  the
  291.      files  so  that  the  Makefile works.  Just edit the .m4 file, make
  292.      sendmail.cf, and start testing it.
  293.  
  294.   o  if you're uucp-only and you talk  to  sites  in  addition  to  your
  295.      "smart-host",  you'll  need  to add uucpxtable entries for each (or
  296.      mail to them will also go through  the  smart  host)  and  run  dbm
  297.      against the revised uucpxtable.
  298.  
  299.   o  if  you use my sendmail5.67b+IDA1.5 distribution you should not use
  300.      a "freeze file".
  301.  
  302.   o  If you run Rich Braun's  original  binary  distribution  of  5.67a,
  303.      you'll need to freeze the configuration if you change your .cf file
  304.      with "/usr/lib/sendmail -bz" to make the changes take effect.   You
  305.      should  also update your version to at least 5.67b since there is a
  306.      nasty security hole in 5.67a and earlier.
  307.  
  308.   Another nice thing is that if you have  mail.debug  set  and  you  run
  309.   syslogd,  your  incoming  and  outgoing mail messages will get logged.
  310.   See the /etc/syslog.conf file for details.
  311.  
  312.   The sources for sendmail+IDA may be found at  uxc.cso.uiuc.edu.   They
  313.   require no patching to run under Linux.
  314.  
  315.   If  you're  going  to run sendmail+IDA, I strongly recommend you go to
  316.   the sendmail5.67b+IDA1.5 version  since  all  required  Linux-specific
  317.   patches are now in the vanilla sources and several security holes have
  318.   been plugged that WERE (!!!) in the older version you may have grabbed
  319.   or built before about December 1st, 1993.
  320.  
  321.  
  322.   4.3.  Sendmail 8.6
  323.  
  324.   Sendmail  8.6.x  from  Berkeley  is  the  latest  major revision after
  325.   sendmail5.  It has  wonderful  built-in  support  for  building  under
  326.   Linux.  Just "make linux" and you'll be all set.
  327.  
  328.  
  329.   4.4.  Other "transport agents"
  330.  
  331.   The following also are known to run under Linux.  Consult "archie" for
  332.   details regarding how to find them...
  333.  
  334.  
  335.   o  smail2.5 - very simple UUCP-based smail
  336.  
  337.   4.5.  Local Delivery Agents
  338.  
  339.   Unlike most operating systems, Linux does not  have  mail  "built-in".
  340.   You'll need a program to deliver the local mail.
  341.  
  342.   One good program is Rich Braun's "lmail" program, but I've switched to
  343.   using the more commonly available "deliver" program.
  344.  
  345.   Documentation for how to use either  for  local  delivery  is  in  the
  346.   sendmail5.67b+IDA1.5 binary release (on sunsite) mentioned above.
  347.  
  348.  
  349.   5.  Mail "User Agents"
  350.  
  351.  
  352.   This  section  contains  information  related  to "user agents", which
  353.   means the software the user sees and uses.  This  software  relies  on
  354.   the "transport agents" mentioned above.
  355.  
  356.  
  357.   5.1.  Elm
  358.  
  359.   Elm  compiles,  installs,  and  runs flawlessly under Linux.  For more
  360.   information, see the elm sources and installation instructions.
  361.  
  362.   The only thing to know is that Elm's Configure script incorrectly sets
  363.   the  "ranlib"  variable  in  config.sh.   When Configure gives you the
  364.   chance to edit config.sh before  proceeding,  please  do  so  and  set
  365.   "ranlib='ranlib'"  or the binaries will compile but not link.  The Elm
  366.   Development Team has been informed of this little problem,  so  please
  367.   don't bother them with it (again).
  368.  
  369.   Elm  and filter need to be mode 2755 (group mail) with /usr/spool/mail
  370.   mode 775 and group mail.
  371.  
  372.   If  you  use  a  binary  distribution,  you'll  need   to   create   a
  373.   /usr/local/lib/elm/elm.rc  file  to  override the compiled-in hostname
  374.   and domain information:
  375.  
  376.  
  377.   o  replace "subdomain.domain" with your domain name replace
  378.  
  379.   o  "myhostname" with you un-domainized hostname replace
  380.  
  381.   o  "my_uucp_neighbor" with the uucp name of your upstream site
  382.  
  383.  
  384.              #---------- /usr/local/lib/elm/elm.rc ------------------
  385.              #
  386.              # this is the unqualified hostname
  387.              hostname = myhostname
  388.              #
  389.              # this is the local domain
  390.              hostdomain = subdomain.domain
  391.              #
  392.              # this is the fully qualified hostname
  393.              hostfullname = myhostname.subdomain.domain
  394.              #
  395.              #--------------------------------------------------------
  396.  
  397.  
  398.   One thing you want to be aware of is that if you have Elm compiled  to
  399.   be MIME-able, you need metamail installed and in your path or Elm will
  400.   not be able to read MIME mail you've received.  Metamail is  available
  401.   on thumper.bellcore.com and of course via "archie".
  402.  
  403.  
  404.   5.2.  Mailx
  405.  
  406.   There  is a fine binary implementation of mailx located on the various
  407.   Linux archive sites.  Make sure you grab version 5.3b or  later  since
  408.   there are security problems in v5.3a.
  409.  
  410.   The  only  potential  problem  I'm  aware  of  is  that it seems to be
  411.   compiled  in  a  way  that   requires   /usr/lib/smail   rather   than
  412.   /usr/lib/sendmail  as  a transport agent.  You probably need a link if
  413.   you run sendmail on your system.
  414.  
  415.   I strongly recommend removing the old "edmail" stuff from SLS1.00  and
  416.   replacing it with mailx.
  417.  
  418.  
  419.   5.3.  Other user agents
  420.  
  421.   The following also are known to run under Linux.  Consult "archie" for
  422.   details regarding how to find them...
  423.  
  424.   o  Pine      - from the Univ. of Washington
  425.  
  426.   o  Metamail  - allows MIME support
  427.  
  428.   o  mh        - yet another way to handle mail
  429.  
  430.   o  deliver   - file/process mail based on rules
  431.  
  432.   o  procmail  - file/process mail based on rules
  433.  
  434.   o  Majordomo - manages e-mail lists
  435.  
  436.   o  Mserv     - provide files-by-mail
  437.  
  438.   6.  Acknowledgements
  439.  
  440.   The following people have helped in the assembly  of  the  information
  441.   (and experience) that helped make this document possible:
  442.  
  443.   Steve Robbins, Ian Kluft, Rich Braun, Ian Jackson, Syd Weinstein, Ralf
  444.   Sauther, Martin White, Matt Welsh, Ralph Sims, Phil Hughes
  445.  
  446.   If I forgot anybody, my apologies...
  447.