README revision 80785
138032Speter
238032Speter			SENDMAIL RELEASE 8
338032Speter
438032SpeterThis directory has the latest sendmail(TM) software from Sendmail, Inc.
538032Speter
638032SpeterReport any bugs to sendmail-bugs@sendmail.ORG
738032Speter
864562SgshapiroThere is a web site at http://WWW.Sendmail.ORG/ -- see that site for
938032Speterthe latest updates.
1038032Speter
1164562Sgshapiro+--------------+
1264562Sgshapiro| INTRODUCTION |
1364562Sgshapiro+--------------+
1438032Speter
1564562Sgshapiro0. The vast majority of queries to <sendmail-questions@sendmail.org>
1664562Sgshapiro   are answered in the README files noted below.
1764562Sgshapiro
1864562Sgshapiro1. Read this README file, especially this introduction, and the DIRECTORY
1964562Sgshapiro   PERMISSIONS sections.
2064562Sgshapiro
2180785Sgshapiro2. Read the INSTALL file in this directory.
2280785Sgshapiro
2380785Sgshapiro3. Read sendmail/README, especially:
2464562Sgshapiro   a. the introduction
2564562Sgshapiro   b. the BUILDING SENDMAIL section
2664562Sgshapiro   c. the relevant part(s) of the OPERATING SYSTEM AND COMPILE QUIRKS section
2764562Sgshapiro
2864562Sgshapiro   You may also find these useful:
2964562Sgshapiro
3064562Sgshapiro   d. devtools/README
3164562Sgshapiro   e. devtools/Site/README
3280785Sgshapiro   f. mail.local/README
3380785Sgshapiro   g. smrsh/README
3464562Sgshapiro
3580785Sgshapiro4. Read cf/README.
3664562Sgshapiro
3738032SpeterSendmail is a trademark of Sendmail, Inc.
3838032Speter
3938032Speter+-----------------------+
4038032Speter| DIRECTORY PERMISSIONS |
4138032Speter+-----------------------+
4238032Speter
4338032SpeterSendmail often gets blamed for many problems that are actually the
4438032Speterresult of other problems, such as overly permissive modes on directories.
4538032SpeterFor this reason, sendmail checks the modes on system directories and
4664562Sgshapirofiles to determine if they can be trusted.  For sendmail to run without
4764562Sgshapirocomplaining, you MUST execute the following command:
4838032Speter
4938032Speter	chmod go-w / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue
5038032Speter	chown root / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue
5138032Speter
5238032SpeterYou will probably have to tweak this for your environment (for example,
5338032Spetersome systems put the spool directory into /usr/spool instead of
5464562Sgshapiro/var/spool).  If you set the RunAsUser option in your sendmail.cf, the
5564562Sgshapiro/var/spool/mqueue directory will have to be owned by the RunAsUser user.
5664562SgshapiroAs a general rule, after you have compiled sendmail, run the command
5738032Speter
5838032Speter	sendmail -v -bi
5938032Speter
6038032Speterto initialize the alias database.  If it gives messages such as
6138032Speter
6238032Speter	WARNING: writable directory /etc
6364562Sgshapiro	WARNING: writable directory /var/spool/mqueue
6438032Speter
6538032Speterthen the directories listed have inappropriate write permissions and
6638032Spetershould be secured to avoid various possible security attacks.
6738032Speter
6838032SpeterBeginning with sendmail 8.9, these checks have become more strict to
6938032Speterprevent users from being able to access files they would normally not
7038032Speterbe able to read.  In particular, .forward and :include: files in unsafe
7138032Speterdirectory paths (directory paths which are group or world writable) will
7238032Speterno longer be allowed.  This would mean that if user joe's home directory
7338032Speterwas writable by group staff, sendmail would not use his .forward file.
7438032SpeterThis behavior can be altered, at the expense of system security, by
7538032Spetersetting the DontBlameSendmail option.  For example, to allow .forward
7638032Speterfiles in group writable directories:
7738032Speter
7838032Speter	O DontBlameSendmail=forwardfileingroupwritabledirpath
7938032Speter
8038032SpeterOr to allow them in both group and world writable directories:
8138032Speter
8238032Speter	O DontBlameSendmail=forwardfileinunsafedirpath
8338032Speter
8438032SpeterItems from these unsafe .forward and :include: files will be marked
8538032Speteras unsafe addresses -- the items can not be deliveries to files or
8638032Speterprograms.  This behavior can also be altered via DontBlameSendmail:
8738032Speter
8838032Speter	O DontBlameSendmail=forwardfileinunsafedirpath,
8938032Speter		forwardfileinunsafedirpathsafe
9038032Speter
9138032SpeterThe first flag allows the .forward file to be read, the second allows
9238032Speterthe items in the file to be marked as safe for file and program
9338032Speterdelivery.
9438032Speter
9538032SpeterOther files affected by this strengthened security include class
9664562Sgshapirofiles (i.e. Fw /etc/mail/local-host-names), persistent host status files,
9764562Sgshapiroand the files specified by the ErrorHeader and HelpFile options.  Similar
9838032SpeterDontBlameSendmail flags are available for the class, ErrorHeader, and
9938032SpeterHelpFile files.
10038032Speter
10138032SpeterIf you have an unsafe configuration of .forward and :include:
10238032Speterfiles, you can make it safe by finding all such files, and doing
10338032Spetera "chmod go-w $FILE" on each.  Also, do a "chmod go-w $DIR" for
10438032Spetereach directory in the file's path.
10538032Speter
10638032Speter
10738032Speter+-----------------------+
10838032Speter| RELATED DOCUMENTATION |
10938032Speter+-----------------------+
11038032Speter
11138032SpeterThere are other files you should read.  Rooted in this directory are:
11238032Speter
11338032Speter  FAQ
11480785Sgshapiro	The FAQ (frequently answered questions) is no longer maintained
11580785Sgshapiro	with the sendmail release.  It is available at
11680785Sgshapiro	http://www.sendmail.org/faq/ .  The file FAQ is a reminder of
11780785Sgshapiro	this and a pointer to the web page.
11864562Sgshapiro  INSTALL
11964562Sgshapiro	Installation instructions for building and installing sendmail.
12038032Speter  KNOWNBUGS
12164562Sgshapiro	Known bugs in the current release.
12238032Speter  RELEASE_NOTES
12338032Speter	A detailed description of the changes in each version.  This
12438032Speter	is quite long, but informative.
12564562Sgshapiro  sendmail/README
12638032Speter	Details on compiling and installing sendmail.
12738032Speter  cf/README
12838032Speter	Details on configuring sendmail.
12938032Speter  doc/op/op.me
13038032Speter	The sendmail Installation & Operations Guide.  Be warned: if
13138032Speter	you are running this off on SunOS or some other system with an
13238032Speter	old version of -me, you need to add the following macro to the
13338032Speter	macros:
13438032Speter
13538032Speter		.de sm
13638032Speter		\s-1\\$1\\s0\\$2
13738032Speter		..
13838032Speter
13938032Speter	This sets a word in a smaller pointsize.
14038032Speter
14138032Speter
14238032Speter+--------------+
14338032Speter| RELATED RFCS |
14438032Speter+--------------+
14538032Speter
14638032SpeterThere are several related RFCs that you may wish to read -- they are
14764562Sgshapiroavailable via anonymous FTP to several sites.  For a list of the
14864562Sgshapiroprimary repositories see:
14938032Speter
15038032Speter	http://www.isi.edu/in-notes/rfc-retrieval.txt
15138032Speter
15238032SpeterThey are also online at:
15338032Speter
15438032Speter	http://www.ietf.org/
15538032Speter
15638032SpeterThey can also be retrieved via electronic mail by sending
15738032Speteremail to one of:
15838032Speter
15938032Speter	mail-server@nisc.sri.com
16038032Speter		Put "send rfcNNN" in message body
16138032Speter	nis-info@nis.nsf.net
16238032Speter		Put "send RFCnnn.TXT-1" in message body
16338032Speter	sendrfc@jvnc.net
16438032Speter		Put "RFCnnn" as Subject: line
16538032Speter
16638032SpeterFor further instructions see:
16738032Speter
16838032Speter	http://www.isi.edu/in-notes/rfc-editor/rfc-info
16938032Speter
17038032SpeterImportant RFCs for electronic mail are:
17138032Speter
17238032Speter	RFC821	SMTP protocol
17338032Speter	RFC822	Mail header format
17438032Speter	RFC974	MX routing
17538032Speter	RFC976	UUCP mail format
17638032Speter	RFC1123	Host requirements (modifies 821, 822, and 974)
17738032Speter	RFC1413	Identification server
17838032Speter	RFC1869	SMTP Service Extensions (ESMTP spec)
17938032Speter	RFC1652	SMTP Service Extension for 8bit-MIMEtransport
18038032Speter	RFC1870	SMTP Service Extension for Message Size Declaration
18138032Speter	RFC2045	Multipurpose Internet Mail Extensions (MIME) Part One:
18238032Speter		Format of Internet Message Bodies
18338032Speter	RFC1344	Implications of MIME for Internet Mail Gateways
18438032Speter	RFC1428	Transition of Internet Mail from Just-Send-8 to
18538032Speter		8-bit SMTP/MIME
18638032Speter	RFC1891	SMTP Service Extension for Delivery Status Notifications
18738032Speter	RFC1892	Multipart/Report Content Type for the Reporting of
18838032Speter		Mail System Administrative Messages
18938032Speter	RFC1893	Enhanced Mail System Status Codes
19038032Speter	RFC1894	An Extensible Message Format for Delivery Status
19138032Speter		Notifications
19238032Speter	RFC1985	SMTP Service Extension for Remote Message Queue Starting
19364562Sgshapiro	RFC2033 Local Mail Transfer Protocol (LMTP)
19464562Sgshapiro	RFC2034 SMTP Service Extension for Returning Enhanced Error Codes
19564562Sgshapiro	RFC2476 Message Submission
19664562Sgshapiro	RFC2487 SMTP Service Extension for Secure SMTP over TLS
19764562Sgshapiro	RFC2554 SMTP Service Extension for Authentication
19838032Speter
19938032SpeterOther standards that may be of interest (but which are less directly
20038032Speterrelevant to sendmail) are:
20138032Speter
20238032Speter	RFC987	Mapping between RFC822 and X.400
20338032Speter	RFC1049	Content-Type header field (extension to RFC822)
20438032Speter
20538032SpeterWarning to AIX users: this version of sendmail does not implement
20638032SpeterMB, MR, or MG DNS resource records, as defined (as experiments) in
20738032SpeterRFC1035.
20838032Speter
20938032Speter
21064562Sgshapiro+---------+
21164562Sgshapiro| WARNING |
21264562Sgshapiro+---------+
21364562Sgshapiro
21464562SgshapiroSince sendmail 8.11 and later includes hooks to cryptography, the
21564562Sgshapirofollowing information from OpenSSL applies to sendmail as well.
21664562Sgshapiro
21764562SgshapiroPLEASE REMEMBER THAT EXPORT/IMPORT AND/OR USE OF STRONG CRYPTOGRAPHY
21864562SgshapiroSOFTWARE, PROVIDING CRYPTOGRAPHY HOOKS OR EVEN JUST COMMUNICATING
21964562SgshapiroTECHNICAL DETAILS ABOUT CRYPTOGRAPHY SOFTWARE IS ILLEGAL IN SOME
22064562SgshapiroPARTS OF THE WORLD.  SO, WHEN YOU IMPORT THIS PACKAGE TO YOUR
22164562SgshapiroCOUNTRY, RE-DISTRIBUTE IT FROM THERE OR EVEN JUST EMAIL TECHNICAL
22264562SgshapiroSUGGESTIONS OR EVEN SOURCE PATCHES TO THE AUTHOR OR OTHER PEOPLE
22364562SgshapiroYOU ARE STRONGLY ADVISED TO PAY CLOSE ATTENTION TO ANY EXPORT/IMPORT
22464562SgshapiroAND/OR USE LAWS WHICH APPLY TO YOU. THE AUTHORS ARE NOT LIABLE FOR
22564562SgshapiroANY VIOLATIONS YOU MAKE HERE. SO BE CAREFUL, IT IS YOUR RESPONSIBILITY.
22664562Sgshapiro
22764562SgshapiroIf you use OpenSSL then make sure you read their README file which
22864562Sgshapirocontains information about patents etc.
22964562Sgshapiro
23064562Sgshapiro
23138032Speter+-------------------+
23238032Speter| DATABASE ROUTINES |
23338032Speter+-------------------+
23438032Speter
23538032SpeterIF YOU WANT TO RUN THE NEW BERKELEY DB SOFTWARE:  ****  DO NOT  ****
23638032Speteruse the version that was on the Net2 tape -- it has a number of
23738032Speternefarious bugs that were bad enough when I got them; you shouldn't have
23838032Speterto go through the same thing.  Instead, get a new version via the web at
23938032Speterhttp://www.sleepycat.com/.  This software is highly recommended; it gets
24038032Speterrid of several stupid limits, it's much faster, and the interface is
24138032Speternicer to animals and plants.  If the Berkeley DB include files
24238032Speterare installed in a location other than those which your compiler searches,
24338032Speteryou will need to provide that directory when building:
24438032Speter
24538032Speter	Build -I/path/to/include/directory
24638032Speter
24738032SpeterIf you are using Berkeley DB versions 1.85 or 1.86, you are *strongly*
24864562Sgshapirourged to upgrade to DB version 2 or later, available from
24964562Sgshapirohttp://www.sleepycat.com/.  Berkeley DB versions 1.85 and 1.86 are known to
25064562Sgshapirobe broken in various nasty ways (see http://www.sleepycat.com/db.185.html),
25164562Sgshapiroand can cause sendmail to dump core.  In addition, the newest versions of
25264562Sgshapirogcc and the Solaris compilers perform optimizations in those versions that
25364562Sgshapiromay cause fairly random core dumps.
25438032Speter
25538032SpeterIf you have no choice but to use Berkeley DB 1.85 or 1.86, and you are
25638032Speterusing both Berkeley DB and files in the UNIX ndbm format, remove ndbm.h
25738032Speterand ndbm.o from the DB library after building it.  You should also apply
25838032Speterall of the patches for DB 1.85 and 1.86 found at the Sleepycat web site
25938032Speter(see http://www.sleepycat.com/db.185.html), as they fix some of the known
26038032Speterproblems.
26138032Speter
26238032SpeterIf you are using a version of Berkeley DB 2 previous to 2.3.15, and you
26338032Speterare using both Berkeley DB and files in the UNIX ndbm format, remove dbm.o
26438032Speterfrom the DB library after building it.  No other changes are necessary.
26538032Speter
26638032SpeterIf you are using Berkeley DB version 2.3.15 or greater, no changes are
26738032Speternecessary.
26838032Speter
26938032SpeterThe underlying database file formats changed between Berkeley DB versions
27064562Sgshapiro1.85 and 1.86, again between DB 1.86 and version 2.0, and finally between
27164562SgshapiroDB 2.X and 3.X.  If you are upgrading from one of those versions, you must
27264562Sgshapirorecreate your database file(s).  Do this by rebuilding all maps with
27364562Sgshapiromakemap and rebuilding the alias file with newaliases.
27438032Speter
27538032Speter
27638032Speter+--------------------+
27738032Speter| HOST NAME SERVICES |
27838032Speter+--------------------+
27938032Speter
28038032SpeterIf you are using NIS or /etc/hosts, it is critical that you
28138032Speterlist the long (fully qualified) name somewhere (preferably first) in
28238032Speterthe /etc/hosts file used to build the NIS database.  For example, the
28338032Speterline should read
28438032Speter
28538032Speter	128.32.149.68   mastodon.CS.Berkeley.EDU mastodon
28638032Speter
28738032Speter**** NOT ****
28838032Speter
28938032Speter	128.32.149.68   mastodon
29038032Speter
29138032SpeterIf you do not include the long name, sendmail will complain loudly
29238032Speterabout ``unable to qualify my own domain name (mastodon) -- using
29338032Spetershort name'' and conclude that your canonical name is the short
29438032Speterversion and use that in messages.  The name "mastodon" doesn't mean
29538032Spetermuch outside of Berkeley, and so this creates incorrect and unreplyable
29638032Spetermessages.
29738032Speter
29838032Speter
29938032Speter+-------------+
30038032Speter| USE WITH MH |
30138032Speter+-------------+
30238032Speter
30338032SpeterThis version of sendmail notices and reports certain kinds of SMTP
30438032Speterprotocol violations that were ignored by older versions.  If you
30538032Speterare running MH you may wish to install the patch in contrib/mh.patch
30638032Speterthat will prevent these warning reports.  This patch also works
30738032Speterwith the old version of sendmail, so it's safe to go ahead and
30838032Speterinstall it.
30938032Speter
31038032Speter
31138032Speter+----------------+
31238032Speter| USE WITH IDENT |
31338032Speter+----------------+
31438032Speter
31538032SpeterSendmail 8 supports the IDENT protocol, as defined by RFC 1413.
31664562SgshapiroNote that the RFC states a client should wait at least 30 seconds
31764562Sgshapirofor a response.  As of 8.10.0, the default Timeout.ident is 5 seconds
31864562Sgshapiroas many sites have adopted the practice of dropping IDENT queries.
31964562SgshapiroThis has lead to delays processing mail.
32038032Speter
32164562SgshapiroNo ident server is included with this distribution.  It is available
32264562Sgshapirofrom:
32338032Speter
32464562Sgshapiro  ftp://ftp.lysator.liu.se/pub/ident/servers/
32564562Sgshapiro  http://sf.www.lysator.liu.se/~pen/pidentd/
32638032Speter
32743730Speter+-------------------------+
32843730Speter| INTEROPERATION PROBLEMS |
32943730Speter+-------------------------+
33043730Speter
33143730SpeterMicrosoft Exchange Server 5.0
33243730Speter	We have had a report that ``about 7% of messages from Sendmail
33343730Speter	to Exchange were not being delivered with status messages of
33443730Speter	"connection reset" and "I/O error".''  Upgrading Exchange from
33543730Speter	Version 5.0 to Version 5.5 Service Pack 2 solved this problem.
33643730Speter
33764562SgshapiroCommuniGate Pro
33864562Sgshapiro	CommuniGate Pro 3.2.4 does not accept the AUTH= -parameter on
33964562Sgshapiro	the MAIL FROM command if the client is not authenticated.  Use
34043730Speter
34164562Sgshapiro		define(`confAUTH_OPTIONS', `A')
34264562Sgshapiro
34364562Sgshapiro	in .mc file if you have compiled sendmail with Cyrus SASL
34464562Sgshapiro	and you communicate with CommuniGate Pro servers.
34564562Sgshapiro
34638032Speter+---------------------+
34738032Speter| DIRECTORY STRUCTURE |
34838032Speter+---------------------+
34938032Speter
35038032SpeterThe structure of this directory tree is:
35138032Speter
35238032Spetercf		Source for sendmail configuration files.  These are
35338032Speter		different than what you've seen before.  They are a
35438032Speter		fairly dramatic rewrite, requiring the new sendmail
35538032Speter		(since they use new features).
35638032Spetercontrib		Some contributed tools to help with sendmail.  THESE
35738032Speter		ARE NOT SUPPORTED by sendmail -- contact the original
35838032Speter		authors if you have problems.  (This directory is not
35938032Speter		on the 4.4BSD tape.)
36064562Sgshapirodevtools	Build environment.  See devtools/README.
36138032Speterdoc		Documentation.  If you are getting source, read
36238032Speter		op.me -- it's long, but worth it.
36364562Sgshapiroinclude		Include files used by multiple programs in the distribution.
36464562Sgshapirolibsmdb		sendmail database library with support for Berkeley DB 1.X,
36564562Sgshapiro		Berkeley DB 2.X, Berkeley DB 3.X, and NDBM.
36664562Sgshapirolibsmutil	sendmail utility library with functions used by different
36764562Sgshapiro		programs.
36838032Spetermail.local	The source for the local delivery agent used for 4.4BSD.
36938032Speter		THIS IS NOT PART OF SENDMAIL! and may not compile
37038032Speter		everywhere, since it depends on some 4.4-isms.  Warning:
37138032Speter		it does mailbox locking differently than other systems.
37264562Sgshapiromailstats	Statistics printing program.
37338032Spetermakemap		A program that creates the keyed maps used by the $( ... $)
37438032Speter		construct in sendmail.  It is primitive but effective.
37538032Speter		It takes a very simple input format, so you will probably
37638032Speter		expect to preprocess must human-convenient formats
37738032Speter		using sed scripts before this program will like them.
37838032Speter		But it should be functionally complete.
37938032Speterpraliases	A program to print the DBM or NEWDB version of the
38038032Speter		aliases file.
38138032Speterrmail		Source for rmail(8).  This is used as a delivery
38238032Speter		agent for for UUCP, and could presumably be used by
38338032Speter		other non-socket oriented mailers.  Older versions of
38438032Speter		rmail are probably deficient.  RMAIL IS NOT PART OF
38538032Speter		SENDMAIL!!!  The 4.4BSD source is included for you to
38664562Sgshapiro		look at or try to port to your system.  There is no
38764562Sgshapiro		guarantee it will even compile on your operating system.
38838032Spetersmrsh		The "sendmail restricted shell", which can be used as
38938032Speter		a replacement for /bin/sh in the prog mailer to provide
39038032Speter		increased security control.  NOT PART OF SENDMAIL!
39164562Sgshapirosendmail	Source for the sendmail program itself.
39238032Spetertest		Some test scripts (currently only for compilation aids).
39364562Sgshapirovacation	Source for the vacation program.  NOT PART OF SENDMAIL!
39464562Sgshapiro
39580785Sgshapiro$Revision: 8.71.4.8 $, Last updated $Date: 2001/07/31 22:42:46 $
396