source: server/mail/sendmail.xml@ 2f62a072

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 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 2f62a072 was 2f62a072, checked in by Fernando de Oliveira <fernando@…>, 10 years ago

Some tags anfixes, thanks to Armin K.

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

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