summaryrefslogtreecommitdiff
path: root/READ_ME
blob: 08b5affb04f932a4dd8e55c3ebf426636b8ef7f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
/*-
 *	@(#)READ_ME	8.32 (Berkeley) 7/6/97
 */

			SENDMAIL RELEASE 8

This directory has the latest sendmail software from Berkeley.  See
doc/changes/changes.me for a summary of changes since 5.67.

Report any bugs to sendmail-bugs@sendmail.ORG

There is a web site at http://WWW.Sendmail.ORG -- see that site for
the latest updates.

******************************************************************
**  DO NOT USE MAKE to compile sendmail.  Instead, cd src and	**
**  use the "makesendmail" shell script.  On many environments	**
**  this will do everything for you, no fuss, no muss.  See	**
**  src/READ_ME for more details of compilation.  See cf/README	**
**  for details about building a runtime configuration file.	**
******************************************************************


+--------------+
| MANUAL PAGES |
+--------------+

The sendmail manual pages use contemporary Berkeley troff macros.  If
your system does not process these manual pages, you can pick up the
new macros in a BSD Net/2 FTP site (e.g.  on FTP.UU.NET, the files
/systems/unix/bsd-sources/share/tmac/me/strip.sed and
/systems/unix/bsd-sources/share/tmac/*).

The strip.sed file is only used in installation.

After installation, edit tmac.doc and tmac.andoc to reflect the
installation path of the tmac files.  Those files contain pointers to
/usr/share/tmac/, and those pointers are not changed by the `make
install` process.  There's also a bug in those files -- make the
following patch:

*** tmac.an~    Tue Jul 12 14:29:09 1994
--- tmac.an     Fri Jul 15 13:17:54 1994
***************
*** 50,55 ****
  .de TH
  .rn TH xX
  .so /usr/share/lib/tmac/tmac.an.old
! .TH \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8
  .rm xX
  ..
--- 50,55 ----
  .de TH
  .rn TH xX
  .so /usr/share/lib/tmac/tmac.an.old
! .TH "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7" "\\$8"
  .rm xX
  ..

Rename the existing tmac.an to be tmac.an.old, and rename tmac.andoc
to be tmac.an.

tmac.an will choose between tmac.an.old, your old macros, or tmac.doc,
which are the new macros, so that both the new man pages and the
existing man pages will be translated properly.

I'm also told that the groff distribution from MIT has a tmac.doc
macro set that is compatible with these macros.


+-----------------------+
| RELATED DOCUMENTATION |
+-----------------------+

There are other files you should read.  Rooted in this directory are:

  CHANGES-R5-R8
	Describes changes between Release 5 and Release 8 of sendmail.
	There are some things that may behave somewhat differently.
	For example, the rules governing when :include: files will
	be read have been tightened up for security reasons.
  FAQ
	Answers to Frequently Asked Questions.
  KNOWNBUGS
	Known bugs in the current release.  I try to keep this up
	to date -- get the latest version from FTP.CS.Berkeley.EDU
	in /ucb/sendmail/KNOWNBUGS.
  RELEASE_NOTES
	A detailed description of the changes in each version.  This
	is quite long, but informative.
  src/READ_ME
	Details on compiling and installing sendmail.
  cf/README
	Details on configuring sendmail.
  doc/op/op.me
	The sendmail Installation & Operations Guide.  Be warned: if
	you are running this off on SunOS or some other system with an
	old version of -me, you need to add the following macro to the
	macros:

		.de sm
		\s-1\\$1\\s0\\$2
		..

	This sets a word in a smaller pointsize.


+--------------+
| RELATED RFCS |
+--------------+

There are several related RFCs that you may wish to read -- they are
available via anonymous FTP to several sites, including nic.ddn.mil
(directory rfc), ftp.nisc.sri.com (rfc), nis.nsf.net (RFC),
nisc.jvnc.net (rfc), venera.isi.edu (in-notes), and wuarchive.wustl.edu
(info/rfc).  They can also be retrieved via electronic mail by sending
email to one of:

	mail-server@nisc.sri.com
		Put "send rfcNNN" in message body
	nis-info@nis.nsf.net
		Put "send RFCnnn.TXT-1" in message body
	sendrfc@jvnc.net
		Put "RFCnnn" as Subject: line

Important RFCs for electronic mail are:

	RFC821	SMTP protocol
	RFC822	Mail header format
	RFC974	MX routing
	RFC976	UUCP mail format
	RFC1123	Host requirements (modifies 821, 822, and 974)
	RFC1413	Identification server
	RFC1869	SMTP Service Extensions (ESMTP spec)
	RFC1652	SMTP Service Extension for 8bit-MIMEtransport
	RFC1870	SMTP Service Extension for Message Size Declaration
	RFC1521	MIME: Multipurpose Internet Mail Extensions
	RFC1344	Implications of MIME for Internet Mail Gateways
	RFC1428	Transition of Internet Mail from Just-Send-8 to
		8-bit SMTP/MIME
	RFC1891	SMTP Service Extension for Delivery Status Notifications
	RFC1892	Multipart/Report Content Type for the Reporting of
		Mail System Administrative Messages
	RFC1893	Enhanced Mail System Status Codes
	RFC1894	An Extensible Message Format for Delivery Status
		Notifications
	RFC1985	SMTP Service Extension for Remote Message Queue Starting

Other standards that may be of interest (but which are less directly
relevant to sendmail) are:

	RFC987	Mapping between RFC822 and X.400
	RFC1049	Content-Type header field (extension to RFC822)

Warning to AIX users: this version of sendmail does not implement
MB, MR, or MG DNS resource records, as defined (as experiments) in
RFC1035.


+-------------------+
| DATABASE ROUTINES |
+-------------------+

IF YOU WANT TO RUN THE NEW BERKELEY DB SOFTWARE:  ****  DO NOT  ****
use the version that was on the Net2 tape -- it has a number of
nefarious bugs that were bad enough when I got them; you shouldn't have
to go through the same thing.  Instead, get a new version via the web at
http://www.sleepycat.com/packages/db.1.85.tar.gz.  This software is
highly recommended; it gets rid of several stupid limits, it's much
faster, and the interface is nicer to animals and plants.  You will
also probably find that you have to add -I/where/you/put/db/include
to the sendmail makefile to get db.h to work properly.

Be sure you remove ndbm.h and ndbm.o from the db distribution.  These
will cause problems with sendmail because sendmail already understands
about NEWDB and NDBM coexisting.


+--------------------+
| HOST NAME SERVICES |
+--------------------+

If you are using NIS or /etc/hosts, it is critical that you
list the long (fully qualified) name somewhere (preferably first) in
the /etc/hosts file used to build the NIS database.  For example, the
line should read

	128.32.149.68   mastodon.CS.Berkeley.EDU mastodon

**** NOT ****

	128.32.149.68   mastodon

If you do not include the long name, sendmail will complain loudly
about ``unable to qualify my own domain name (mastodon) -- using
short name'' and conclude that your canonical name is the short
version and use that in messages.  The name "mastodon" doesn't mean
much outside of Berkeley, and so this creates incorrect and unreplyable
messages.


+-------------+
| USE WITH MH |
+-------------+

This version of sendmail notices and reports certain kinds of SMTP
protocol violations that were ignored by older versions.  If you
are running MH you may wish to install the patch in contrib/mh.patch
that will prevent these warning reports.  This patch also works
with the old version of sendmail, so it's safe to go ahead and
install it.


+----------------+
| USE WITH IDENT |
+----------------+

Sendmail 8 supports the IDENT protocol, as defined by RFC 1413.
No ident server is included with this distribution.  I have found
copies available on:

  ftp.lysator.liu.se		/pub/ident/servers
  romulus.ucs.uoknor.edu	/networking/ident/servers
  ftp.cyf-kr.edu.pl		/agh/uciagh/network/ident

If you want to run an IDENT server, I suggest getting a copy from
one of those sites.  Versions are available for several different
systems, including Apollo, BSD, NeXT, AIX, TOPS20, and VMS.


+-----------+
| MAKEFILES |
+-----------+

The Makefiles in this release use the new Berkeley "make" that is
available in BSD Net/2 and 4.4BSD.  If you are using this version
of make, you may notice one or two places where the Makefile includes
"../../Makefile.inc".  This file is not included with the sendmail
distribution because it's not part of sendmail.  However, it is,
in toto:

	#	@(#)Makefile.inc	8.1 (Berkeley) 6/6/93

	BINDIR?=	/usr/sbin

The other directories should all have Makefile.dist files that work
on the old make, albeit without all the niceties included.

You can also get a new Berkeley make from the Net2 release (available
on many public FTP archives).  This version should also interpret old
Makefiles, so you could drop it in as your default make.

For more details, see src/READ_ME.


+-----------------------+
| DIRECTORY PERMISSIONS |
+-----------------------+

Sendmail often gets blamed for many problems that are actually the
result of other problems, such as overly permissive modes on directories.
For this reason, sendmail checks the modes on system directories and
files to determine if they have been trusted.  For sendmail to run
without complaining, you MUST execute the following command:

	chmod go-w / /etc /usr /var /var/spool /var/spool/mqueue

You will probably have to tweak this for your environment (for example,
some systems put the spool directory into /usr/spool instead of
/var/spool).  As a general rule, after you have compiled sendmail,
run the command

	sendmail -v -bi

to initialize the alias database.  If it gives messages such as

	WARNING: writable directory /etc
	WARNING: writable directory /usr/spool/mqueue

then the directories listed have inappropriate write permissions and
should be secured to avoid various possible security attacks.


+---------------------+
| DIRECTORY STRUCTURE |
+---------------------+

The structure of this directory tree is:

cf		Source for Berkeley configuration files.  These are
		different than what you've seen before.  They are a
		fairly dramatic rewrite, requiring the new sendmail
		(since they use new features).
contrib		Some contributed tools to help with sendmail.  THESE
		ARE NOT SUPPORTED by Berkeley -- contact the original
		authors if you have problems.  (This directory is not
		on the 4.4BSD tape.)
doc		Documentation.  If you are getting source, read
		op.me -- it's long, but worth it.
mail.local	The source for the local delivery agent used for 4.4BSD.
		THIS IS NOT PART OF SENDMAIL! and may not compile
		everywhere, since it depends on some 4.4-isms.  Warning:
		it does mailbox locking differently than other systems.
mailstats	Statistics printing program.  It has the pathname of
		sendmail.st compiled in, so if you've changed that,
		beware.  This isn't all that useful.
makemap		A program that creates the keyed maps used by the $( ... $)
		construct in sendmail.  It is primitive but effective.
		It takes a very simple input format, so you will probably
		expect to preprocess must human-convenient formats
		using sed scripts before this program will like them.
		But it should be functionally complete.
praliases	A program to print the DBM or NEWDB version of the
		aliases file.
rmail		Source for rmail(8).  This is used as a delivery
		agent for for UUCP, and could presumably be used by
		other non-socket oriented mailers.  Older versions of
		rmail are probably deficient.  RMAIL IS NOT PART OF
		SENDMAIL!!!  The 4.4BSD source is included for you to
		look at or try to port to your system.  I know it doesn't
		compile on {SunOS, HP-UX, OSF/1, other} (pick one).
smrsh		The "sendmail restricted shell", which can be used as
		a replacement for /bin/sh in the prog mailer to provide
		increased security control.  NOT PART OF SENDMAIL!
src		Source for the sendmail program itself.
test		Some test scripts (currently only for compilation aids).