source: server/mail/postfix.xml@ e7ff049a

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.0 6.1 6.2 6.2.0 6.2.0-rc1 6.2.0-rc2 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 e7ff049a was e7ff049a, checked in by Archaic <archaic@…>, 20 years ago

Added pcre as optional dep for postfix.

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

  • Property mode set to 100644
File size: 9.9 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
3 "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7<!ENTITY postfix-download-http "http://www.mirrorspace.org/postfix/official/postfix-&postfix-version;.tar.gz">
8<!ENTITY postfix-download-ftp "ftp://ftp.porcupine.org/mirrors/postfix-release/official/postfix-&postfix-version;.tar.gz">
9<!ENTITY postfix-size "1.9 MB">
10<!ENTITY postfix-buildsize "81 MB">
11<!ENTITY postfix-time "0.29 SBU">
12
13]>
14
15<sect1 id="postfix" xreflabel="Postfix-&postfix-version;">
16<?dbhtml filename="postfix.html"?>
17<title>Postfix-&postfix-version;</title>
18
19<sect2>
20<title>Introduction to Postfix</title>
21
22<para>The <application>Postfix</application> package contains a Mail
23Transport Agent (<acronym>MTA</acronym>). This is useful for sending email
24to other users of your host machine. It can also be configured to be a
25central mail server for your domain, a mail relay agent or simply a mail
26delivery agent to your local Internet Service Provider
27(<acronym>ISP</acronym>).</para>
28
29<sect3><title>Package information</title>
30<itemizedlist spacing='compact'>
31<listitem><para>Download (HTTP): <ulink
32url="&postfix-download-http;"/></para></listitem>
33<listitem><para>Download (FTP): <ulink
34url="&postfix-download-ftp;"/></para></listitem>
35<listitem><para>Download size: &postfix-size;</para></listitem>
36<listitem><para>Estimated Disk space required:
37&postfix-buildsize;</para></listitem>
38<listitem><para>Estimated build time:
39&postfix-time;</para></listitem></itemizedlist>
40</sect3>
41
42<sect3><title><application>Postfix</application> dependencies</title>
43<sect4><title>Required</title>
44<para><xref linkend="db"/></para></sect4>
45<sect4><title>Optional</title>
46<para><xref linkend="pcre"/>, <xref linkend="cyrus-sasl"/> and <xref linkend="mysql"/></para></sect4>
47</sect3>
48
49</sect2>
50
51<sect2>
52<title>Installation of <application>Postfix</application></title>
53
54<para>Before you compile the program, you need to create users and groups that
55will be expected to be in place when the install script executes. Add the
56users and groups with the following commands:</para>
57
58<screen><userinput><command>groupadd postfix &amp;&amp;
59groupadd postdrop &amp;&amp;
60groupadd -g 65534 nogroup &amp;&amp;
61useradd -c postfix -d /dev/null -g postfix -s /bin/false postfix &amp;&amp;
62useradd -c nobody -d /home -g nogroup -s /bin/bash -u 65534 nobody &amp;&amp;
63chown postfix:postfix /var/mail</command></userinput></screen>
64
65<para>Install <application>postfix</application> by running the following commands:</para>
66
67<screen><userinput><command>make &amp;&amp;
68sh postfix-install daemon_directory=/usr/sbin \
69 manpage_directory=/usr/share/man \
70 sample_directory=/usr/share/doc/postfix \
71 -non-interactive</command></userinput></screen>
72
73<para>The final installation step is to install the program's documentation with
74the following commands:</para>
75
76<screen><userinput><command>install -d /usr/share/doc/postfix &amp;&amp;
77cp -rf html/* /usr/share/doc/postfix</command></userinput></screen>
78
79</sect2>
80
81<sect2>
82<title>Command explanations</title>
83
84<para><command>sh postfix-install ... -non-interactive</command> : This keeps
85the install script from asking any questions, thereby accepting default
86destination directories in all but the three cases explicitly mention.</para>
87
88<para><command>make CCARGS="$CCARGS -DHAS_MYSQL
89-I/usr/include/mysql" \</command></para>
90<para><command>AUXLIBS="$AUXLIBS -L/usr/lib/mysql -lmysqlclient -lz
91-l"</command> : This will allow you to build postfix with MySQL
92support.</para>
93
94</sect2>
95
96<sect2>
97<title>Configuring <application>Postfix</application></title>
98
99<sect3><title>Config files</title>
100<para><filename>/etc/aliases</filename>,
101<filename>/etc/postfix/main.cf</filename> and
102<filename>/etc/postfix/master.cf</filename></para>
103</sect3>
104
105<sect3><title>Configuration Information</title>
106
107<screen><userinput><command>cat &gt;&gt; /etc/aliases &lt;&lt; "EOF"</command>
108# Begin /etc/aliases
109
110MAILER-DAEMON: postmaster
111postmaster: root
112
113root: LOGIN
114# End /etc/aliases
115<command>EOF</command></userinput></screen>
116
117<note><para>To protect an existing <filename>/etc/aliases</filename> file, the
118above command appends these aliases to it if it exists. This file should be
119checked and duplicate aliases removed, if present.</para></note>
120
121<para>The <filename>/etc/aliases</filename> file that was just created or
122appended, the <filename>main.cf</filename> and the
123<filename>master.cf</filename> must be personalized for your system. The
124<filename>aliases</filename> file needs your non-root login identity so mail
125addressed to root can be forwarded to you at the user level. The
126<filename>main.cf</filename> file needs your fully qualified hostname. All of
127these edits can be done with sed commands entered into the console with
128appropriate substitutions of your non-root login name for
129<replaceable>[user]</replaceable> and your fully qualified hostname for
130<replaceable>[localhost.localdomain]</replaceable>. You will find the
131<filename>main.cf</filename> file is self documenting, so load it into your
132editor to make the changes you need for your situation.</para>
133
134<screen><userinput><command>sed -i "s/LOGIN/<replaceable>[user]</replaceable>/" /etc/aliases &amp;&amp;
135sed -i "s/#myhostname = host.domain.tld/myhostname = \
136 <replaceable>[localhost.localdomain]</replaceable>/" /etc/postfix/main.cf &amp;&amp;
137/usr/bin/newaliases &amp;&amp;
138/usr/sbin/postfix start</command></userinput></screen></sect3>
139
140<sect3><title>Postfix init.d script</title>
141
142<para>To automate the running of Postfix at startup, install the <filename>/etc/rc.d/init.d/postfix</filename>
143init script included in the <xref linkend="intro-important-bootscripts"/> package.</para>
144
145<screen><userinput><command>make install-postfix</command></userinput></screen>
146
147</sect3>
148
149</sect2>
150
151<sect2>
152<title>Contents</title>
153
154<para>The <application>Postfix</application> package contains
155<command>bounce</command>, <command>cleanup</command>,
156<command>error</command>, <command>flush</command>,
157<command>lmtp</command>, <command>local</command>,
158<command>mailq</command>, <command>master</command>,
159<command>newaliases</command>, <command>nqmgr</command>,
160<command>pickup</command>, <command>pipe</command>,
161<command>postalias</command>, <command>postcat</command>,
162<command>postconf</command>, <command>postdrop</command>,
163<command>postfix</command>, <command>postkick</command>,
164<command>postlock</command>, <command>postlog</command>,
165<command>postmap</command>, <command>postqueue</command>,
166<command>postsuper</command>, <command>qmgr</command>,
167<command>qmqpd</command>, <command>sendmail</command>,
168<command>showq</command>, <command>smtp</command>,
169<command>smtpd</command>, <command>spawn</command>,
170<command>trivial-rewrite</command>, and <command>virtual</command>.</para>
171
172</sect2>
173
174<sect2><title>Description</title>
175
176<sect3><title>postfix</title>
177<para><command>postfix</command> is the program that starts and stops the mail delivery system.</para></sect3>
178
179<sect3><title>master</title>
180<para><command>master</command> is the resident process that runs
181<filename>bounce</filename>, <filename>cleanup</filename>,
182<filename>error</filename>, <filename>flush</filename>,
183<filename>lmtp</filename>, <filename>local</filename>,
184<filename>nqmgr</filename>, <filename>pickup</filename>,
185<filename>pipe</filename>, <filename>qmgr</filename>,
186<filename>qmqpd</filename>, <filename>showq</filename>,
187<filename>smtp</filename>, <filename>smtpd</filename>,
188<filename>spawn</filename>, <filename>trivial-rewrite</filename> and
189<filename>virtual</filename> on demand. These programs are not designed to
190work as user commands.</para></sect3>
191
192<sect3><title>postqueue</title>
193<para><command>postqueue</command> implements the
194<application>Postfix</application> user interface for
195queue management. It implements all the operations that are traditionally
196available via the <command>sendmail</command> command.</para></sect3>
197
198<sect3><title>sendmail</title>
199<para><command>sendmail</command> implements the
200<application>Postfix</application> to
201<application>Sendmail</application> compatibility interface.
202<filename class="symlink">mailq</filename> and <filename
203class="symlink">newaliases</filename> are symlinks to
204<command>sendmail</command>.</para></sect3>
205
206<sect3><title>showq</title>
207<para><command>showq</command> will emulate the <filename
208class="symlink">mailq</filename> command when the
209<application>Postfix</application> mail system is
210not running.</para></sect3>
211
212<sect3><title>postsuper</title>
213<para><command>postsuper</command> does maintenance jobs on the
214<application>Postfix</application> queue.</para></sect3>
215
216<sect3><title>postalias</title>
217<para><command>postalias</command> creates, queries or updates
218<application>Postfix</application> alias
219databases.</para></sect3>
220
221<sect3><title>postcat</title>
222<para><command>postcat</command> prints the contents of a
223<application>Postfix</application> queue file in human-readable
224form.</para></sect3>
225
226<sect3><title>postconf</title>
227<para><command>postconf</command> prints or changes the value of configuration
228parameters.</para></sect3>
229
230<sect3><title>postdrop</title>
231<para><command>postdrop</command> creates a file in the maildrop directory and
232copies its standard input to the file.</para></sect3>
233
234<sect3><title>postkick</title>
235<para><command>postkick</command> makes the mail system private
236<acronym>IPC</acronym> accessible for use in shell
237scripts.</para></sect3>
238
239<sect3><title>postlock</title>
240<para><command>postlock</command> locks a file for exclusive access and
241executes a command on that file.</para></sect3>
242
243<sect3><title>postlog</title>
244<para><command>postlog</command> implements a logging interface for use in
245shell scripts.</para></sect3>
246
247<sect3><title>postmap</title>
248<para><command>postmap</command> creates, queries or updates
249<application>Postfix</application> lookup tables.</para></sect3>
250
251</sect2>
252
253</sect1>
254
Note: See TracBrowser for help on using the repository browser.