source: server/mail/sendmail.xml@ 7b769ad

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.3 6.3-rc1 6.3-rc2 6.3-rc3 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 7b769ad was 7b769ad, checked in by Randy McMurchy <randy@…>, 17 years ago

Updated to Sendmail-8.14.1

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@6880 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 14.5 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY sendmail-download-http "http://www.sendmail.org/ftp/sendmail.&sendmail-version;.tar.gz">
8 <!ENTITY sendmail-download-ftp "ftp://ftp.sendmail.org/pub/sendmail/sendmail.&sendmail-version;.tar.gz">
9 <!ENTITY sendmail-md5sum "462bc9e00fdbef3a71b046b967c9a157">
10 <!ENTITY sendmail-size "2.0 MB">
11 <!ENTITY sendmail-buildsize "19 MB">
12 <!ENTITY sendmail-time "0.3 SBU">
13]>
14
15<sect1 id="sendmail" xreflabel="Sendmail-&sendmail-version;">
16 <?dbhtml filename="sendmail.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Sendmail-&sendmail-version;</title>
24
25 <indexterm zone="sendmail">
26 <primary sortas="a-Sendmail">Sendmail</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Sendmail</title>
31
32 <para>The <application>Sendmail</application> package contains a Mail
33 Transport Agent (MTA).</para>
34
35 <bridgehead renderas="sect3">Package Information</bridgehead>
36 <itemizedlist spacing="compact">
37 <listitem>
38 <para>Download (HTTP): <ulink url="&sendmail-download-http;"/></para>
39 </listitem>
40 <listitem>
41 <para>Download (FTP): <ulink url="&sendmail-download-ftp;"/></para>
42 </listitem>
43 <listitem>
44 <para>Download MD5 sum: &sendmail-md5sum;</para>
45 </listitem>
46 <listitem>
47 <para>Download size: &sendmail-size;</para>
48 </listitem>
49 <listitem>
50 <para>Estimated disk space required: &sendmail-buildsize;</para>
51 </listitem>
52 <listitem>
53 <para>Estimated build time: &sendmail-time;</para>
54 </listitem>
55 </itemizedlist>
56
57 <bridgehead renderas="sect3">Sendmail Dependencies</bridgehead>
58
59 <bridgehead renderas="sect4">Required</bridgehead>
60 <para role="required"><xref linkend="procmail"/></para>
61 <!-- <xref linkend="db"/> -->
62
63 <bridgehead renderas="sect4">Optional</bridgehead>
64 <para role="optional"><xref linkend="openssl"/>,
65 <xref linkend="openldap"/>,
66 <xref linkend="tcpwrappers"/>,
67 <xref linkend="cyrus-sasl"/>,
68 <ulink url="http://www.feep.net/nph/">nph</ulink>, and
69 <xref linkend="gs"/> or <xref linkend="espgs"/> (for creating
70 PDF documentation)</para>
71
72 <para condition="html" role="usernotes">User Notes:
73 <ulink url="&blfs-wiki;/sendmail"/></para>
74
75 </sect2>
76
77 <sect2 role="installation">
78 <title>Installation of Sendmail</title>
79
80 <para>Before building <application>Sendmail</application>, create the
81 required user, group and directory with the following commands issued as
82 the <systemitem class="username">root</systemitem> user:</para>
83
84<screen role="root"><userinput>groupadd -g 26 smmsp &amp;&amp;
85useradd -c "Sendmail Daemon" -g smmsp -d /dev/null \
86 -s /bin/false -u 26 smmsp &amp;&amp;
87chmod -v 1777 /var/mail &amp;&amp;
88install -v -m700 -d /var/spool/mqueue</userinput></screen>
89
90 <para><emphasis>Note:</emphasis> See the source tree
91 <filename>sendmail/README</filename> file for information on linking
92 optional packages into the build. Use the example below, which adds
93 support for <application>tcpwrappers</application>, SASL, StartTLS
94 (<application>OpenSSL</application>) and
95 <application>OpenLDAP</application>, as a starting point.
96 Of course, modify it to suit your particular needs.</para>
97
98<screen><userinput>cat &gt;&gt; devtools/Site/site.config.m4 &lt;&lt; "EOF"
99<literal>APPENDDEF(`confENVDEF',`-DSTARTTLS -DTCPWRAPPERS -DSASL -DLDAPMAP')
100APPENDDEF(`confLIBS', `-lssl -lcrypto -lwrap -lsasl2 -lldap -llber')
101APPENDDEF(`confINCDIRS', `-I/usr/include/sasl')</literal>
102EOF</userinput></screen>
103
104 <para>Install <application>Sendmail</application> with the following
105 commands:</para>
106
107<screen><userinput>cat &gt;&gt; devtools/Site/site.config.m4 &lt;&lt; "EOF"
108<literal>define(`confMANGRP',`root')
109define(`confMANOWN',`root')
110define(`confSBINGRP',`root')
111define(`confUBINGRP',`root')
112define(`confUBINOWN',`root')</literal>
113EOF
114cd sendmail &amp;&amp;
115sh Build &amp;&amp;
116cd ../cf/cf &amp;&amp;
117cp generic-linux.mc sendmail.mc &amp;&amp;
118sh Build sendmail.cf</userinput></screen>
119
120 <para>This package does not come with a test suite.</para>
121
122 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
123
124<screen role="root"><userinput>install -v -d -m755 /etc/mail &amp;&amp;
125sh Build install-cf &amp;&amp;
126
127cd ../.. &amp;&amp;
128sh Build install &amp;&amp;
129
130install -v -m644 cf/cf/{submit,sendmail}.mc /etc/mail &amp;&amp;
131cp -v -R cf/* /etc/mail &amp;&amp;
132
133install -v -m755 -d /usr/share/doc/sendmail-&sendmail-version;/{cf,sendmail} &amp;&amp;
134install -v -m644 \
135 CACerts FAQ KNOWNBUGS LICENSE PGPKEYS README RELEASE_NOTES \
136 /usr/share/doc/sendmail-&sendmail-version; &amp;&amp;
137install -v -m644 sendmail/{README,SECURITY,TRACEFLAGS,TUNING} \
138 /usr/share/doc/sendmail-&sendmail-version;/sendmail &amp;&amp;
139install -v -m644 cf/README /usr/share/doc/sendmail-&sendmail-version;/cf &amp;&amp;
140
141for manpage in sendmail editmap mailstats makemap praliases smrsh
142do
143 install -v -m444 $manpage/$manpage.8 /usr/share/man/man8
144done &amp;&amp;
145install -v -m444 sendmail/aliases.5 /usr/share/man/man5 &amp;&amp;
146install -v -m444 sendmail/mailq.1 /usr/share/man/man1 &amp;&amp;
147install -v -m444 sendmail/newaliases.1 /usr/share/man/man1 &amp;&amp;
148install -v -m444 vacation/vacation.1 /usr/share/man/man1</userinput></screen>
149
150 <para>Install the <application>Sendmail</application> Installation and
151 Operations Guide with the following commands:</para>
152
153<screen><userinput>cd doc/op &amp;&amp;
154sed -i 's/groff/GROFF_NO_SGR=1 groff/' Makefile &amp;&amp;
155make op.txt op.pdf</userinput></screen>
156
157 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
158
159<screen role="root"><userinput>install -v -d -m755 /usr/share/doc/sendmail-&sendmail-version; &amp;&amp;
160install -v -m644 op.ps op.txt op.pdf /usr/share/doc/sendmail-&sendmail-version; &amp;&amp;
161cd ../..</userinput></screen>
162
163 <para><emphasis>Note:</emphasis> remove <filename>op.pdf</filename> from
164 the <command>make</command> and <command>install</command> commands if
165 you don't have <application>Ghostscript</application> installed.</para>
166
167 </sect2>
168
169 <sect2 role="commands">
170 <title>Command Explanations</title>
171
172 <para><command>cat &gt; devtools/Site/site.config.m4 &lt;&lt; "EOF"</command>:
173 This creates a configuration file changing some of the default settings.</para>
174
175 <para><command>sh Build; sh Build sendmail.cf; sh Build install-cf;
176 sh Build install</command>: <application>Sendmail</application> uses an
177 <application>m4</application> based build script to create the various
178 <filename>Makefile</filename>s. These commands build and install the
179 package.</para>
180
181 <para><command>for manpage in...;do...;done; install ...</command>: The man
182 pages are installed already formatted and <command>man</command> displays
183 them somewhat garbled. These commands replace the formatted pages with
184 pages <command>man</command> can display properly.</para>
185
186 </sect2>
187
188 <sect2 role="configuration">
189 <title>Configuring Sendmail</title>
190
191 <sect3 id="sendmail-config">
192 <title>Config Files</title>
193
194 <para><filename>/etc/mail/*</filename></para>
195
196 <indexterm zone="sendmail sendmail-config">
197 <primary sortas="e-etc-mail">/etc/mail/*</primary>
198 </indexterm>
199
200 </sect3>
201
202 <sect3>
203 <title>Configuration Information</title>
204
205 <para>Create the <filename>/etc/mail/local-host-names</filename> and
206 <filename>/etc/mail/aliases</filename> files using the following
207 commands as the <systemitem class="username">root</systemitem>
208 user:</para>
209
210<screen role="root"><userinput>echo $(hostname) > /etc/mail/local-host-names
211cat &gt; /etc/mail/aliases &lt;&lt; "EOF"
212<literal>postmaster: root
213MAILER-DAEMON: root</literal>
214
215EOF
216newaliases -v</userinput></screen>
217
218 <para><application>Sendmail</application>'s primary configuration file,
219 <filename>/etc/mail/sendmail.cf</filename>, is complex and not meant to be
220 directly edited. The recommended method for changing it is to modify
221 <filename>/etc/mail/sendmail.mc</filename> and various
222 <application>m4</application> files, then run the <command>m4</command>
223 macro processor from within
224 <filename class='directory'>/etc/mail</filename> as follows:</para>
225
226<screen role="root"><userinput>m4 m4/cf.m4 sendmail.mc > sendmail.cf</userinput></screen>
227
228 <para>A full explanation of the files to modify, and the available
229 parameters can be found in <filename>/etc/mail/README</filename>.</para>
230
231 </sect3>
232
233 <sect3 id="sendmail-init">
234 <title>Boot Script</title>
235
236 <para>To automate the running of <application>Sendmail</application>
237 at startup, install the <filename>/etc/rc.d/init.d/sendmail</filename>
238 init script included in the
239 <xref linkend="bootscripts"/> package.</para>
240
241 <indexterm zone="sendmail sendmail-init">
242 <primary sortas="f-sendmail-init">sendmail</primary>
243 </indexterm>
244
245<screen role="root"><userinput>make install-sendmail</userinput></screen>
246
247 <note>
248 <para>The -qNm option to <command>sendmail</command>, where N is number
249 of minutes, controls how often <application>Sendmail</application> will
250 process the mail queue. A default of 5 minutes is used in the init
251 script. Individual workstation users may want to set this as low as 1
252 minute, large installations handling more mail may want to set it
253 higher.</para>
254 </note>
255
256 </sect3>
257
258 </sect2>
259
260 <sect2 role="content">
261 <title>Contents</title>
262
263 <segmentedlist>
264 <segtitle>Installed Programs</segtitle>
265 <segtitle>Installed Libraries</segtitle>
266 <segtitle>Installed Directories</segtitle>
267
268 <seglistitem>
269 <seg>editmap, hoststat, mailstats, mailq, makemap, newaliases,
270 praliases, purgestat, sendmail, smrsh, and vacation</seg>
271 <seg>None</seg>
272 <seg>/etc/mail, /usr/share/doc/sendmail-&sendmail-version;,
273 /var/spool/mqueue, and /var/spool/clientmqueue</seg>
274 </seglistitem>
275 </segmentedlist>
276
277 <variablelist>
278 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
279 <?dbfo list-presentation="list"?>
280 <?dbhtml list-presentation="table"?>
281
282 <varlistentry id="editmap">
283 <term><command>editmap</command></term>
284 <listitem>
285 <para>queries and edits <application>Sendmail</application> map
286 files.</para>
287 <indexterm zone="sendmail editmap">
288 <primary sortas="b-editmap">editmap</primary>
289 </indexterm>
290 </listitem>
291 </varlistentry>
292
293 <varlistentry id="hoststat">
294 <term><command>hoststat</command></term>
295 <listitem>
296 <para>prints <application>Sendmail</application>'s persistent host
297 status.</para>
298 <indexterm zone="sendmail hoststat">
299 <primary sortas="b-hoststat">hoststat</primary>
300 </indexterm>
301 </listitem>
302 </varlistentry>
303
304 <varlistentry id="mailstats">
305 <term><command>mailstats</command></term>
306 <listitem>
307 <para>displays <application>Sendmail</application> statistics.</para>
308 <indexterm zone="sendmail mailstats">
309 <primary sortas="b-mailstats">mailstats</primary>
310 </indexterm>
311 </listitem>
312 </varlistentry>
313
314 <varlistentry id="mailq-sendmail">
315 <term><command>mailq</command></term>
316 <listitem>
317 <para>prints a summary of outbound mail messages waiting for
318 delivery.</para>
319 <indexterm zone="sendmail mailq-sendmail">
320 <primary sortas="b-mailq">mailq</primary>
321 </indexterm>
322 </listitem>
323 </varlistentry>
324
325 <varlistentry id="makemap">
326 <term><command>makemap</command></term>
327 <listitem>
328 <para>creates <application>Sendmail</application> map files.</para>
329 <indexterm zone="sendmail makemap">
330 <primary sortas="b-makemap">makemap</primary>
331 </indexterm>
332 </listitem>
333 </varlistentry>
334
335 <varlistentry id="newaliases-sendmail">
336 <term><command>newaliases</command></term>
337 <listitem>
338 <para>rebuilds <filename>/etc/mail/aliases.db</filename> from the
339 contents of <filename>/etc/mail/aliases</filename>.</para>
340 <indexterm zone="sendmail newaliases-sendmail">
341 <primary sortas="b-newaliases">newaliases</primary>
342 </indexterm>
343 </listitem>
344 </varlistentry>
345
346 <varlistentry id="praliases">
347 <term><command>praliases</command></term>
348 <listitem>
349 <para>displays current <application>Sendmail</application>
350 aliases.</para>
351 <indexterm zone="sendmail praliases">
352 <primary sortas="b-praliases">praliases</primary>
353 </indexterm>
354 </listitem>
355 </varlistentry>
356
357 <varlistentry id="purgestat">
358 <term><command>purgestat</command></term>
359 <listitem>
360 <para> causes <application>Sendmail</application> to clear (purge)
361 all its host-status information.</para>
362 <indexterm zone="sendmail purgestat">
363 <primary sortas="b-purgestat">purgestat</primary>
364 </indexterm>
365 </listitem>
366 </varlistentry>
367
368 <varlistentry id="sendmail-prog-sendmail">
369 <term><command>sendmail</command></term>
370 <listitem>
371 <para>is the <application>Sendmail</application> mail transport
372 agent.</para>
373 <indexterm zone="sendmail sendmail-prog-sendmail">
374 <primary sortas="b-sendmail">sendmail</primary>
375 </indexterm>
376 </listitem>
377 </varlistentry>
378
379 <varlistentry id="smrsh">
380 <term><command>smrsh</command></term>
381 <listitem>
382 <para>is a restricted shell for
383 <application>Sendmail</application>.</para>
384 <indexterm zone="sendmail smrsh">
385 <primary sortas="b-smrsh">smrsh</primary>
386 </indexterm>
387 </listitem>
388 </varlistentry>
389
390 <varlistentry id="vacation-sendmail">
391 <term><command>vacation</command></term>
392 <listitem>
393 <para>is an email auto responder.</para>
394 <indexterm zone="sendmail vacation-sendmail">
395 <primary sortas="b-vacation">vacation</primary>
396 </indexterm>
397 </listitem>
398 </varlistentry>
399
400 </variablelist>
401
402 </sect2>
403
404</sect1>
Note: See TracBrowser for help on using the repository browser.