source: server/mail/courier.xml@ aa8ef3bc

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 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 aa8ef3bc was aa8ef3bc, checked in by Guy Dalziel <gdalziel@…>, 15 years ago

Updated to GPL Ghostscript-8.64. Removed EPS Ghostscript.

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

  • Property mode set to 100644
File size: 41.7 KB
RevLine 
[0931098]1<?xml version="1.0" encoding="ISO-8859-1"?>
[6732c094]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[0931098]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[0aeb696]7 <!-- Inserted as a reminder to do this. The mention of a test suite
8 is usually right before the root user installation commands. Please
9 delete these 12 (including one blank) lines after you are done.-->
10
11 <!-- Use one of the two mentions below about a test suite,
12 delete the line that is not applicable. Of course, if the
13 test suite uses syntax other than "make check", revise the
14 line to reflect the actual syntax to run the test suite -->
15
16 <!-- <para>This package does not come with a test suite.</para> -->
17 <!-- <para>To test the results, issue: <command>make check</command>.</para> -->
18
[fce275e]19 <!ENTITY courier-download-http "&sourceforge-repo;/courier/courier-&courier-version;.tar.bz2">
[7a20758]20 <!ENTITY courier-download-ftp " ">
21 <!ENTITY courier-md5sum "639bb3b236914e3b86f287ce3f55264e">
22 <!ENTITY courier-size "4.3 MB">
23 <!ENTITY courier-buildsize "102 MB">
24 <!ENTITY courier-time "2.62 SBU">
[0931098]25]>
26
[5db3785e]27<sect1 id="courier" xreflabel="Courier-&courier-version;">
[7a20758]28 <?dbhtml filename="courier.html"?>
29
30 <sect1info>
31 <othername>$LastChangedBy$</othername>
32 <date>$Date$</date>
33 </sect1info>
34
35 <title>Courier-&courier-version;</title>
36
37 <indexterm zone="courier">
38 <primary sortas="a-Courier">Courier MTA</primary>
39 </indexterm>
40
41 <sect2 role="package">
42 <title>Introduction to Courier</title>
43
44 <para>The <application>Courier</application> package contains a Mail
45 Transport Agent (MTA). This is useful for sending email to other users
46 of your host machine. It can also be configured to be a central mail
47 server for your domain or a mail relay agent. The
48 <application>Courier</application> packages also includes a web-based
49 email interface, IMAP, IMAP-SSL, POP3, and POP3-SSL.</para>
50
51 <bridgehead renderas="sect3">Package Information</bridgehead>
52 <itemizedlist spacing="compact">
53 <listitem>
54 <para>Download (HTTP): <ulink url="&courier-download-http;"/></para>
55 </listitem>
56 <listitem>
57 <para>Download (FTP): <ulink url="&courier-download-ftp;"/></para>
58 </listitem>
59 <listitem>
60 <para>Download MD5 sum: &courier-md5sum;</para>
61 </listitem>
62 <listitem>
63 <para>Download size: &courier-size;</para>
64 </listitem>
65 <listitem>
66 <para>Estimated disk space required: &courier-buildsize;</para>
67 </listitem>
68 <listitem>
69 <para>Estimated build time: &courier-time;</para>
70 </listitem>
71 </itemizedlist>
72
73 <bridgehead renderas="sect3">Courier Dependencies</bridgehead>
74
[7bff1b2]75 <!-- <bridgehead renderas="sect4">Required</bridgehead>
76 <para role="required"><xref linkend="gdbm"/></para> -->
[7a20758]77
78 <bridgehead renderas="sect4">Optional</bridgehead>
[a6ac43b]79 <para role="optional"><xref linkend="mysql"/> or <xref linkend="postgresql"/>,
[6603f8b]80 <xref linkend="linux-pam"/>,
[7a20758]81 <xref linkend="openssl"/>,
[b7ea972]82 <xref linkend="gamin"/>,
[7a20758]83 <xref linkend="openldap"/>,
84 <xref linkend="apache"/>,
[b02921f]85 <!-- <xref linkend="ispell"/> or <xref linkend="aspell"/>, -->
86 <xref linkend="aspell"/>,
[7a20758]87 <xref linkend="gnupg"/>,
88 <xref linkend="expect"/>,
[aa8ef3bc]89 <xref linkend="gs"/><!-- or <xref linkend="espgs"/> -->,
[7a20758]90 <ulink url="http://netpbm.sourceforge.net/">Netpbm</ulink> and
91 <ulink url="http://alpha.greenie.net/mgetty/">Mgetty+Sendfax</ulink></para>
92
[3cb0c57]93 <para condition="html" role="usernotes">User Notes:
94 <ulink url="&blfs-wiki;/courier"/></para>
95
[7a20758]96 </sect2>
97
98 <sect2 role="installation">
99 <title>Installation of Courier</title>
100
101 <note>
[e540c04]102 <para><application>Courier</application>'s tarball must be extracted
103 as an unprivileged user or the <command>configure</command> script will
104 fail.</para>
[7a20758]105 </note>
106
107 <para>Before you compile the program, you need to create the
108 <systemitem class="username">courier</systemitem> user and group
[e540c04]109 that is expected to be in place during installation.
[7a20758]110 As the <systemitem class="username">root</systemitem> user, add
111 the <systemitem class="username">courier</systemitem> user and
112 group with the following commands:</para>
113
[b785ab29]114<screen role="root"><userinput>groupadd -g 30 courier &amp;&amp;
[7ee9849]115useradd -c 'Courier Mail Server' -d /dev/null \
[b785ab29]116 -g courier -s /bin/false -u 30 courier</userinput></screen>
[0931098]117
[7a20758]118 <para>The install script also expects a <systemitem
119 class="username">bin</systemitem> user. If you already have a
120 user named <systemitem class="username">bin</systemitem>, this
[e540c04]121 step can be safely ignored. If necessary, create the user by
122 issuing the following command as the
123 <systemitem class="username">root</systemitem> user:</para>
[0931098]124
[7a20758]125<screen role="root"><userinput>useradd -c 'bin' -d /dev/null -g bin -u 1 bin</userinput></screen>
[0931098]126
[7a20758]127 <para><application>Courierfilter</application> requires the directory
128 <filename class="directory">/var/run/courier</filename> to store
[e540c04]129 all the <application>Courier</application> PID and lock files.
[7a20758]130 <filename class="directory">/var/lock/subsys</filename> also must exist
131 for the master lock file for <application>Courier</application>. Issue
[e540c04]132 the following commands as the
133 <systemitem class="username">root</systemitem> user to create these
134 directories:</para>
[0931098]135
[7a20758]136<screen role="root"><userinput>install -v -d /var/run/courier -o courier -g courier -m755 &amp;&amp;
137install -v -d /var/lock/subsys -o root -g root -m755</userinput></screen>
[0931098]138
[7a20758]139 <para>Build <application>Courier</application> as an unprivileged user
140 with the following commands:</para>
[0931098]141
[7a20758]142<screen><userinput>./configure --prefix=/usr --libexecdir=/usr/lib/courier \
[0931098]143 --datadir=/usr/share/courier --sysconfdir=/etc/courier \
144 --localstatedir=/var/lib/courier --with-piddir=/var/run/courier \
145 --with-paranoid-smtpext --disable-autorenamesent \
146 --enable-workarounds-for-imap-client-bugs --with-db=gdbm &amp;&amp;
[7a20758]147make</userinput></screen>
[0931098]148
[7a20758]149 <para>Once again, become the <systemitem class="username">root</systemitem>
150 user and install <application>Courier</application> with the following
151 commands:</para>
152
153<screen role="root"><userinput>make install &amp;&amp;
154make install-configure</userinput></screen>
155
156 </sect2>
157
158 <sect2 role="commands">
159 <title>Command Explanations</title>
160
161 <para><parameter>--libexecdir=/usr/lib/courier</parameter>: Specifies
[e540c04]162 the directory which contains programs and libraries that should not be
[7a20758]163 directly executed from the command-line.</para>
164
165 <para><parameter>--datadir=/usr/share/courier</parameter>: Specifies the
166 directory where miscellaneous shell scripts,
167 <application>Perl</application> scripts, and data files will be
168 installed.</para>
169
170 <para><parameter>--localstatedir=/var/spool/courier</parameter>:
171 Specifies the directory that will hold the mail queue, and other
172 temporary data.</para>
173
174 <para><parameter>--with-piddir=/var/run/courier</parameter>: Specifies
175 the directory where <application>Courier</application>'s
[e540c04]176 PID files are stored when
[7a20758]177 <application>Courier</application> is active.</para>
178
179 <para><parameter>--with-paranoid-smtpext</parameter>: Be paranoid when
180 negotiating Courier-specific ESMTP extensions with remote servers.
181 The <application>Courier</application> mail server defines and implements
182 certain experimental ESMTP extensions: XVERP and XEXDATA. Problems may
183 result in the event that someone else uses the same name to implement
184 some other extension. If this option is specified,
[e540c04]185 <application>Courier</application>'s ESMTP server will also advertise a
[7a20758]186 dummy ESMTP capability called XCOURIEREXTENSIONS, and will not recognize
187 any Courier-specific extensions unless the remote mail server also
188 advertises this dummy ESMTP capability.</para>
189
190 <para><parameter>--disable-autorenamesent</parameter>: Do not rename the
191 Sent folder every month. This option can also be controlled by the
192 <envar>SQWEBMAIL_AUTORENAMESENT</envar> environment variable.</para>
193
194 <para><parameter>--enable-workarounds-for-imap-client-bugs</parameter>:
195 There are several confirmed bugs in some IMAP clients that do not properly
196 implement the IMAP4rev1 protocol. This option enables some workarounds for
197 those buggy IMAP clients. NOTE: <command>make check</command> will fail if
198 this option is used. You should first configure without this option, and
[e540c04]199 if all post-configuration tests succeed, rerun <command>configure</command>
200 with this option and recompile.</para>
[7a20758]201
202 <para><parameter>--with-db=gdbm</parameter>:
203 <application>Courier</application> requires either the
204 <application>GDBM</application> or the <application>DB</application>
205 database library. <application>GDBM</application> is used if both are
206 present. This option forces the selection of
207 <application>GDBM</application> as <application>Courier</application>
208 is currently broken when used with <application>DB</application>.</para>
209
210 <!-- # Note - Courier will build fine with <xref linkend="db"/>, but all
211 the database files will not be created correctly -->
212
213 <para><option>--with-ispell=/usr/bin/aspell</option>:
214 <application>Courier</application>'s webmail server can use spell
215 checking, if <command>configure</command> finds
216 <application>ispell</application> or if you explicitly set the location
[e540c04]217 of <application>Aspell</application>.</para>
[7a20758]218
[3cb0c57]219 <para><option>--enable-mimetypes=<replaceable>&lt;location of mime.types
220 file&gt;</replaceable></option>: Use this switch if you receive an error
[7a20758]221 saying that the <filename>mime.types</filename> file could not be
222 found.</para>
223
224 </sect2>
225
226 <sect2 role="configuration">
227 <title>Configuring Courier</title>
228
229 <sect3 id="courier-config">
230 <title>Configuration Files</title>
231
232 <para><filename>/etc/courier/*</filename></para>
233
234 <indexterm zone="courier courier-config">
235 <primary sortas="e-etc-courier-star">/etc/courier/*</primary>
236 </indexterm>
237
238 </sect3>
239
240 <sect3>
241 <title>Configuration Information</title>
242
243 <para>While still as <systemitem class="username">root</systemitem>,
244 you will need to create the following files with the contents
245 specified.</para>
246
247 <para><filename>/etc/courier/defaultdomain</filename></para>
248
249<screen role="root"><userinput>cat &gt; /etc/courier/defaultdomain &lt;&lt; "EOF"
[3cb0c57]250<literal><replaceable>&lt;yourdomain&gt;</replaceable></literal>
[7a20758]251EOF</userinput></screen>
252
253 <para><filename>/etc/courier/me</filename></para>
254
255<screen role="root"><userinput>cat &gt; /etc/courier/me &lt;&lt; "EOF"
[3cb0c57]256<literal><replaceable>&lt;servername.yourdomain&gt;</replaceable></literal>
[7a20758]257EOF</userinput></screen>
258
259 <para><filename>/etc/courier/locals</filename></para>
260
261<screen role="root"><userinput>cat &gt; /etc/courier/locals &lt;&lt; "EOF"
262<literal>localhost
[3cb0c57]263<replaceable>&lt;yourdomain&gt;</replaceable></literal>
[7a20758]264EOF</userinput></screen>
265
266 <para><filename>/etc/courier/esmtpacceptmailfor.dir/system</filename></para>
267
268<screen role="root"><userinput>cat &gt; /etc/courier/esmtpacceptmailfor.dir/system &lt;&lt; "EOF"
269<literal>localhost
[3cb0c57]270<replaceable>&lt;yourdomain&gt;</replaceable></literal>
[7a20758]271EOF</userinput></screen>
272
273 <para>You will also need to edit the
274 <filename>/etc/courier/aliases/system</filename> file and change the
275 following entry.</para>
276
[3cb0c57]277<screen><literal>postmaster: <replaceable>&lt;your administrator email&gt;</replaceable></literal></screen>
[7a20758]278
279 <para>If you want to deny access from some hosts from sending mail,
280 you will need to edit the
281 <filename>/etc/courier/smtpaccess/default</filename> file.</para>
282
[e540c04]283 <para>If you wish to host mail for non-local domains including virtual
[7a20758]284 domains, you must add them to
285 <filename>/etc/courier/hosteddomains</filename>. This file should exist
286 whether you need a hosted domain list or not:</para>
287
288<screen role="root"><userinput>touch /etc/courier/hosteddomains</userinput></screen>
289
290 <para>After the above steps are completed you will need to run the
291 following commands:</para>
292
293<screen role="root"><userinput>makesmtpaccess &amp;&amp;
[0931098]294makehosteddomains &amp;&amp;
[7a20758]295makealiases</userinput></screen>
[0931098]296
[7a20758]297 <para>For each user, you will need to create a
298 <filename class="directory">Maildir</filename> directory:</para>
[0931098]299
[3cb0c57]300<screen role="root"><userinput>cd /home/<replaceable>&lt;username&gt;</replaceable> &amp;&amp;
[ebe1291]301maildirmake Maildir &amp;&amp;
[3cb0c57]302chown <replaceable>&lt;username&gt;</replaceable>.<replaceable>&lt;username&gt;</replaceable> Maildir -R</userinput></screen>
[0931098]303
[7a20758]304 <para>If you wish to use SSL with <application>Courier</application>,
305 you should obtain certificates and store them in
[e540c04]306 <filename class='directory'>/usr/share/courier</filename>. You can
307 optionally create self-signed, test certificates with the following
308 commands:</para>
[0931098]309
[7a20758]310<screen role="root"><userinput>mkesmtpdcert &amp;&amp;
[ebe1291]311mkimapdcert &amp;&amp;
[7a20758]312mkpop3dcert</userinput></screen>
[0931098]313
[7a20758]314 <para>All of <application>Courier</application>'s configuration files reside
315 in the directory <filename class="directory">/etc/courier/</filename>. For
316 each service SMTP, POP3 and IMAP, you will have a standard config file, and
317 an SSL config file. For each service that you wish to utilize, you will
318 need to edit the configuration file, and change the
[3cb0c57]319 <replaceable>&lt;DAEMON&gt;</replaceable>START variable from 'NO' to 'YES'. For
[7a20758]320 example, to use SMTP with SSL, you'll need to edit
321 <filename>/etc/courier/esmtpd-ssl</filename> and change the value of
322 'ESMTPDSSLSTART' to 'YES'. Make the same change for each service
323 configuration that you wish to use with
324 <application>Courier</application>.</para>
[0931098]325
[7a20758]326 <para>If you wish to use LDAP, an LDAP configuration file should be
327 created:</para>
[0931098]328
[7a20758]329<screen role="root"><userinput>echo "LDAPALIASDSTART=YES" > /etc/courier/ldapaliasd</userinput></screen>
[0931098]330
[7a20758]331 <para>Similarly, if you wish to use webmail, you should create the webmail
332 configuration file:</para>
[0931098]333
[7a20758]334<screen role="root"><userinput>echo "WEBMAILDSTART=YES" > /etc/courier/webmaild</userinput></screen>
[0931098]335
[7a20758]336 <para>You will also need to copy the <filename>webmail</filename> file
337 from <filename>/usr/lib/courier/courier/webmail</filename> to the
338 <filename class='directory'>cgi-bin</filename> directory of your
339 <application>Apache</application> server.</para>
[0931098]340
[7a20758]341<screen role="root"><userinput>cp -v -a /usr/lib/courier/courier/webmail/webmail /srv/www/cgi-bin</userinput></screen>
[0931098]342
[7a20758]343 <para>You will then need to copy the images to a directory under your
344 <filename class='directory'>htdocs</filename> directory of your
345 <application>Apache</application> server. The directory needs to be named
346 <filename class='directory'>webmail</filename> or you need to specify it
347 during the configure phase with
[3cb0c57]348 <option>--enable-imageurl=<replaceable>&lt;URL&gt;</replaceable></option>.</para>
[0931098]349
[7a20758]350<screen role="root"><userinput>cp -v -a /usr/share/courier/sqwebmail/images /srv/www/htdocs/webmail</userinput></screen>
[0931098]351
[bfb7882]352 <para>If you wish to utilize the webadmin utility, you will need to copy
[7a20758]353 the <filename>webadmin</filename> file from
354 <filename class="directory">/usr/lib/courier/courier/webmail</filename>
355 to your <filename class="directory">cgi-bin</filename> directory of your
356 <application>Apache</application> server.</para>
[0931098]357
[7a20758]358<screen role="root"><userinput>cp -v -a /usr/lib/courier/courier/webmail/webadmin /srv/www/cgi-bin</userinput></screen>
[0931098]359
[7a20758]360 <para>You also need to put the password into the file
361 <filename>/etc/courier/webadmin/password</filename>:</para>
[0931098]362
[7a20758]363<screen role="root"><userinput>cat &gt; /etc/courier/webadmin/password &lt;&lt; "EOF"
[3cb0c57]364<literal><replaceable>&lt;password&gt;</replaceable></literal>
[7a20758]365EOF</userinput></screen>
[0931098]366
[7a20758]367 <para>If you are not using SSL on your <application>Apache</application>
368 server, you will also need to add
369 <filename>/etc/courier/webadmin/unsecureok</filename>, so you will be
370 able to use your web based administration tool.</para>
[0931098]371
[7a20758]372<screen role="root"><userinput>touch /etc/courier/webadmin/unsecureok</userinput></screen>
[0931098]373
[7a20758]374 <para>If you use <application>Linux-PAM</application> on your system,
375 you will need to create the PAM configuration files:</para>
[0931098]376
[7a20758]377<screen role="root"><userinput>cat &gt; /etc/pam.d/esmtp &lt;&lt; "EOF"
378<literal># Begin /etc/pam.d/esmtp
[0931098]379
[ebe1291]380auth required pam_unix.so try_first_pass
381account required pam_unix.so
382session required pam_unix.so
[0931098]383
[7a20758]384# End /etc/pam.d/esmtp</literal>
385EOF
386<literal>cat &gt; /etc/pam.d/pop3 &lt;&lt; "EOF"
[ebe1291]387# Begin /etc/pam.d/pop3
[0931098]388
[ebe1291]389auth required pam_unix.so try_first_pass
390account required pam_unix.so
391session required pam_unix.so
392
[7a20758]393# End /etc/pam.d/pop3</literal>
394EOF
395cat &gt; /etc/pam.d/imap &lt;&lt; "EOF"
396<literal># Begin /etc/pam.d/imap
[ebe1291]397
398auth required pam_unix.so try_first_pass
399account required pam_unix.so
400session required pam_unix.so
401
[7a20758]402# End /etc/pam.d/imap</literal>
403EOF
404cat &gt; /etc/pam.d/webmail &lt;&lt; "EOF"
405<literal># Begin /etc/pam.d/webmail
[ebe1291]406
407auth required pam_unix.so try_first_pass
408account required pam_unix.so
409session required pam_unix.so
410
[7a20758]411# End /etc/pam.d/webmail</literal>
412EOF</userinput></screen>
[ebe1291]413
[7a20758]414 </sect3>
[ebe1291]415
[7a20758]416 <sect3 id="courier-init">
417 <title>Boot Script</title>
[ebe1291]418
[7a20758]419 <para>Finally, if you wish to start the
420 <application>Courier</application> server at boot, install the
421 <filename>/etc/rc.d/init.d/courier</filename> bootscript included
[5254d12]422 in the <xref linkend="bootscripts"/> package.</para>
[ebe1291]423
[7a20758]424 <indexterm zone="courier courier-init">
425 <primary sortas="f-courier-init">courier</primary>
426 </indexterm>
[ebe1291]427
[7a20758]428<screen role="root"><userinput>make install-courier</userinput></screen>
[ebe1291]429
[7a20758]430 </sect3>
[ebe1291]431
[7a20758]432<!-- Begin virtual user setup * To be removed once added to the hint. -->
433
434 <sect3>
435 <title>Configuring for Virtual Users</title>
436
437 <para>These instructions will configure <application>Courier</application>
438 to lookup virtual users in a <application>MySQL</application> database.
439 Begin by making the following changes to
440 <filename>/etc/courier/authmysqlrc</filename>:</para>
[ebe1291]441
[7a20758]442<screen><literal>MYSQL_SERVER localhost
[ebe1291]443MYSQL_USERNAME courier
[3cb0c57]444MYSQL_PASSWORD <replaceable>&lt;your choice&gt;</replaceable>
[5926202a]445MYSQL_SOCKET /var/run/mysql/mysql.sock
[ebe1291]446MYSQL_PORT 3306
447MYSQL_DATABASE courier_mail
448MYSQL_USER_TABLE users
449MYSQL_CLEAR_PWFIELD clear
[3cb0c57]450DEFAULT DOMAIN <replaceable>&lt;your domain&gt;</replaceable>
[7a20758]451MYSQL_QUOTA_FIELD quota</literal></screen>
[ebe1291]452
[7a20758]453 <para>Connect to <application>MySQL</application>:</para>
[ebe1291]454
[7a20758]455<screen role="root"><userinput>mysql -p</userinput></screen>
[ebe1291]456
[7a20758]457 <para>Create the <filename>courier_mail</filename> database and setup
458 the users table:</para>
[ebe1291]459
[7a20758]460<screen role="root"><userinput>CREATE DATABASE courier_mail;
[ebe1291]461USE courier_mail
462CREATE TABLE users (
463id char(128) DEFAULT '' NOT NULL,
464crypt char(128) DEFAULT '' NOT NULL,
465clear char(128) DEFAULT '' NOT NULL,
466name char(128) DEFAULT '' NOT NULL,
467uid int(10) unsigned DEFAULT '65534' NOT NULL,
468gid int(10) unsigned DEFAULT '65534' NOT NULL,
469home char(255) DEFAULT '' NOT NULL,
470quota char(255) DEFAULT '' NOT NULL,
471KEY id (id(128))
[7a20758]472);</userinput></screen>
[0931098]473
[e540c04]474 <para>Grant all privileges to the <systemitem
[7a20758]475 class="username">courier</systemitem> user created earlier:</para>
[0931098]476
[7a20758]477<screen role="root"><userinput>GRANT ALL PRIVILEGES ON *.* TO courier@localhost \
[3cb0c57]478 IDENTIFIED BY '<replaceable>&lt;password&gt;</replaceable>' WITH GRANT OPTION;
[7a20758]479QUIT</userinput></screen>
[0931098]480
[7a20758]481 <para>Create a virtual mailman user and group:</para>
[0931098]482
[b785ab29]483<screen role="root"><userinput>groupadd -g 35 vmailman &amp;&amp;
484useradd -c 'Virtual Mailman' -g vmailman -m -k /dev/null -u 35 vmailman</userinput></screen>
[0931098]485
[7a20758]486 <para>Create a mail directory for a new virtual user:</para>
487
488<screen role="root"><userinput>cd /home/vmailman &amp;&amp;
[3cb0c57]489mkdir -v <replaceable>&lt;virtual_user&gt;</replaceable> &amp;&amp;
490cd <replaceable>&lt;virtual_user&gt;</replaceable> &amp;&amp;
[0931098]491maildirmake Maildir &amp;&amp;
[e540c04]492chown -v vmailman.vmailman Maildir -R</userinput></screen>
[0931098]493
[e540c04]494 <para>Now, connect to the <application>MySQL</application> database as
[7a20758]495 the <systemitem class="username">courier</systemitem> user:</para>
[0931098]496
[7a20758]497<screen role="root"><userinput>mysql -u courier -p</userinput></screen>
[ebe1291]498
[7a20758]499 <para>To add the virtual user you need to enter at least one version of the
[e540c04]500 password; either clear text or encrypted.</para>
[ebe1291]501
[7a20758]502 <para>Add the first virtual user with the following commands:</para>
[0931098]503
[7a20758]504<screen><userinput>USE courier_mail
[0931098]505INSERT INTO users VALUES (
[3cb0c57]506'<replaceable>&lt;virtual_users&gt;</replaceable>@<replaceable>&lt;domain.com&gt;</replaceable>,
507'<replaceable>&lt;encrypted password or blank&gt;</replaceable>',
508'<replaceable>&lt;clear text password or blank&gt;</replaceable>',
509'<replaceable>&lt;User's Name&gt;</replaceable>',
[0931098]5109000,
5119000,
[3cb0c57]512'<replaceable>&lt;location of Maildir&gt;</replaceable>',
513'<replaceable>&lt;Quota in Bytes'&gt;</replaceable>
[0931098]514);
[7a20758]515QUIT</userinput></screen>
[0931098]516
[7a20758]517 <para>For example:</para>
[0931098]518
[7a20758]519<screen><userinput>INSERT INTO users VALUES (
[4e88613]520'blfsuser@&lfs-domainname;',
[0931098]521'',
522'password',
523'BLFS User',
5249000,
5259000,
526'/home/vmailman/blfsuser',
527''
[7a20758]528);</userinput></screen>
[0931098]529
[7a20758]530 </sect3>
[0931098]531
[ebe1291]532<!-- End of Virtual user setup -->
[0931098]533
[7a20758]534 </sect2>
535
536 <sect2 role="content">
537 <title>Contents</title>
538
539 <segmentedlist>
540 <segtitle>Installed Programs</segtitle>
541 <segtitle>Installed Libraries</segtitle>
542 <segtitle>Installed Directories</segtitle>
543
544 <seglistitem>
545 <seg>addcr, authenumerate, cancelmsg, courier, courier-config,
546 courieresmtpd, courierfilter, courierlogger, couriermlm, couriertcpd,
547 couriertls, deliverquota, dotforward, esmtpd, esmtpd-msa, esmtpd-ssl,
548 filterctl, imapd, imapd-ssl, lockmail, mailbot, maildiracl, maildirkw,
549 maildirmake, maildrop, mailq, makeacceptmailfor, makealiases, makedat,
550 makehosteddomains, makemime, makepercentrelay, makesmtpaccess,
551 makesmtpaccess-msa, makeuserdb, makeuucpneighbors, mimegpg,
552 mkesmtpdcert, mkimapdcert, mkpop3dcert, pop3d, pop3d-ssl, preline,
553 pw2userdb, reformail, reformime, rmail, sendmail, sharedindexinstall,
554 sharedindexsplit, showconfig, showmodules, testmxlookup, userdb,
555 userdbpw, vchkpw2userdb, webgpg, and webmaild</seg>
556 <seg>None</seg>
557 <seg>/etc/courier, /usr/lib/courier, /usr/share/courier, /var/lib/courier,
558 /var/lock/subsys, /var/run/courier, and /var/spool/courier</seg>
559 </seglistitem>
560 </segmentedlist>
561
562 <variablelist>
563 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
564 <?dbfo list-presentation="list"?>
565 <?dbhtml list-presentation="table"?>
566
567 <varlistentry id="cancelmsg">
568 <term><command>cancelmsg</command></term>
569 <listitem>
570 <para>removes a message from the mail queue.</para>
571 <indexterm zone="courier cancelmsg">
572 <primary sortas="b-cancelmsg">cancelmsg</primary>
573 </indexterm>
574 </listitem>
575 </varlistentry>
576
577 <varlistentry id="courier-prog">
578 <term><command>courier</command></term>
579 <listitem>
580 <para>is an administrative command used to control the
581 <application>Courier</application> scheduling engine.</para>
582 <indexterm zone="courier courier-prog">
583 <primary sortas="b-courier">courier</primary>
584 </indexterm>
585 </listitem>
586 </varlistentry>
587
588 <varlistentry id="courierfax">
589 <term><command>courierfax</command></term>
590 <listitem>
591 <para>sends email messages by fax.</para>
592 <indexterm zone="courier courierfax">
593 <primary sortas="b-courierfax">courierfax</primary>
594 </indexterm>
595 </listitem>
596 </varlistentry>
597
598 <varlistentry id="courierfilter">
599 <term><command>courierfilter</command></term>
600 <listitem>
601 <para>starts and stops all mail filters installed by
602 <command>filterctl</command>.</para>
603 <indexterm zone="courier courierfilter">
604 <primary sortas="b-courierfilter">courierfilter</primary>
605 </indexterm>
606 </listitem>
607 </varlistentry>
608
609 <varlistentry id="courierldapaliasd">
610 <term><command>courierldapaliasd</command></term>
611 <listitem>
612 <para>supports mail address aliasing using an LDAP directory.</para>
613 <indexterm zone="courier courierldapaliasd">
614 <primary sortas="b-courierldapaliasd">courierldapaliasd</primary>
615 </indexterm>
616 </listitem>
617 </varlistentry>
618
619 <varlistentry id="courierlogger">
620 <term><command>courierlogger</command></term>
621 <listitem>
622 <para>captures error messages from other
623 <application>Courier</application> applications and forwards them
624 to the system logger.</para>
625 <indexterm zone="courier courierlogger">
626 <primary sortas="b-courierlogger">courierlogger</primary>
627 </indexterm>
628 </listitem>
629 </varlistentry>
630
631 <varlistentry id="couriermlm">
632 <term><command>couriermlm</command></term>
633 <listitem>
634 <para>sets up, maintains, and manages mailing lists.</para>
635 <indexterm zone="courier couriermlm">
636 <primary sortas="b-couriermlm">couriermlm</primary>
637 </indexterm>
638 </listitem>
639 </varlistentry>
640
641 <varlistentry id="courierperlfilter">
642 <term><command>courierperlfilter</command></term>
643 <listitem>
644 <para>is a sample filter written in
645 <application>Perl</application>.</para>
646 <indexterm zone="courier courierperlfilter">
647 <primary sortas="b-courierperlfilter">courierperlfilter</primary>
648 </indexterm>
649 </listitem>
650 </varlistentry>
651
652 <varlistentry id="courierpop3d">
653 <term><command>courierpop3d</command></term>
654 <listitem>
655 <para>is a <application>Courier</application>
656 POP3 server.</para>
657 <indexterm zone="courier courierpop3d">
658 <primary sortas="b-courierpop3d">courierpop3d</primary>
659 </indexterm>
660 </listitem>
661 </varlistentry>
662
663 <varlistentry id="courierpop3login">
664 <term><command>courierpop3login</command></term>
665 <listitem>
666 <para>reads the POP3 userid and password and
667 passes them to the authentication modules.</para>
668 <indexterm zone="courier courierpop3login">
669 <primary sortas="b-courierpop3login">courierpop3login</primary>
670 </indexterm>
671 </listitem>
672 </varlistentry>
673
674 <varlistentry id="couriertcpd">
675 <term><command>couriertcpd</command></term>
676 <listitem>
677 <para>accepts incoming network connections, and runs other
678 <application>Courier</application> programs after establishing each
679 network connection.</para>
680 <indexterm zone="courier couriertcpd">
681 <primary sortas="b-couriertcpd">couriertcpd</primary>
682 </indexterm>
683 </listitem>
684 </varlistentry>
685
686 <varlistentry id="couriertls">
687 <term><command>couriertls</command></term>
688 <listitem>
689 <para>is used by applications to encrypt a network connection
690 using SSL/TLS.</para>
691 <indexterm zone="courier couriertls">
692 <primary sortas="b-couriertls">couriertls</primary>
693 </indexterm>
694 </listitem>
695 </varlistentry>
696
697 <varlistentry id="dotforward">
698 <term><command>dotforward</command></term>
699 <listitem>
700 <para>is a compatibility module that reads forwarding
701 instructions in <filename>$HOME/.forward</filename>.</para>
702 <indexterm zone="courier dotforward">
703 <primary sortas="b-dotforward">dotforward</primary>
704 </indexterm>
705 </listitem>
706 </varlistentry>
707
708 <varlistentry id="dupfilter">
709 <term><command>dupfilter</command></term>
710 <listitem>
711 <para>is a threaded filter that tries to block junk E-mail by
712 attempting to detect multiple copies of the same message, which
713 are rejected.</para>
714 <indexterm zone="courier dupfilter">
715 <primary sortas="b-dupfilter">dupfilter</primary>
716 </indexterm>
717 </listitem>
718 </varlistentry>
719
720 <varlistentry id="esmtpd">
721 <term><command>esmtpd</command></term>
722 <listitem>
723 <para>is a control script for courieresmtpd.</para>
724 <indexterm zone="courier esmtpd">
725 <primary sortas="b-esmtpd">esmtpd</primary>
726 </indexterm>
727 </listitem>
728 </varlistentry>
729
730 <varlistentry id="esmtpd-msa">
731 <term><command>esmtpd-msa</command></term>
732 <listitem>
733 <para>is a control script for courieresmtpd, but adds message
734 submission port 587 for the MSA protocol.</para>
735 <indexterm zone="courier esmtpd-msa">
736 <primary sortas="b-esmtpd-msa">esmtpd-msa</primary>
737 </indexterm>
738 </listitem>
739 </varlistentry>
740
741 <varlistentry id="filterctl">
742 <term><command>filterctl</command></term>
743 <listitem>
744 <para>installs or uninstalls global mail filters.</para>
745 <indexterm zone="courier filterctl">
746 <primary sortas="b-filterctl">filterctl</primary>
747 </indexterm>
748 </listitem>
749 </varlistentry>
750
751 <varlistentry id="imapd">
752 <term><command>imapd</command></term>
753 <listitem>
754 <para>is the <application>Courier</application>-IMAP server.</para>
755 <indexterm zone="courier imapd">
756 <primary sortas="b-imapd">imapd</primary>
757 </indexterm>
758 </listitem>
759 </varlistentry>
760
761 <varlistentry id="lockmail">
762 <term><command>lockmail</command></term>
763 <listitem>
764 <para>is a helper utility for locking mailbox files.</para>
765 <indexterm zone="courier lockmail">
766 <primary sortas="b-lockmail">lockmail</primary>
767 </indexterm>
768 </listitem>
769 </varlistentry>
770
771 <varlistentry id="mailbot">
772 <term><command>mailbot</command></term>
773 <listitem>
774 <para>is a MIME-aware autoresponder utility.</para>
775 <indexterm zone="courier mailbot">
776 <primary sortas="b-mailbot">mailbot</primary>
777 </indexterm>
778 </listitem>
779 </varlistentry>
780
781 <varlistentry id="maildiracl">
782 <term><command>maildiracl</command></term>
783 <listitem>
784 <para>manages access control lists.</para>
785 <indexterm zone="courier maildiracl">
786 <primary sortas="b-maildiracl">maildiracl</primary>
787 </indexterm>
788 </listitem>
789 </varlistentry>
790
791 <varlistentry id="maildirkw">
792 <term><command>maildirkw</command></term>
793 <listitem>
794 <para>modifies <application>Courier</application>-IMAP compatible
795 maildir message keywords.</para>
796 <indexterm zone="courier maildirkw">
797 <primary sortas="b-maildirkw">maildirkw</primary>
798 </indexterm>
799 </listitem>
800 </varlistentry>
801
802 <varlistentry id="maildirmake">
803 <term><command>maildirmake</command></term>
804 <listitem>
805 <para>creates maildirs, and maildir folders.</para>
806 <indexterm zone="courier maildirmake">
807 <primary sortas="b-maildirmake">maildirmake</primary>
808 </indexterm>
809 </listitem>
810 </varlistentry>
811
812 <varlistentry id="maildrop">
813 <term><command>maildrop</command></term>
814 <listitem>
815 <para>is a replacement local mail delivery agent that includes a
816 mail filtering language.</para>
817 <indexterm zone="courier maildrop">
818 <primary sortas="b-maildrop">maildrop</primary>
819 </indexterm>
820 </listitem>
821 </varlistentry>
822
823 <varlistentry id="mailq-courier">
824 <term><command>mailq</command></term>
825 <listitem>
826 <para>displays a list of all messages that have not been
827 delivered yet.</para>
828 <indexterm zone="courier mailq-courier">
829 <primary sortas="b-mailq">mailq</primary>
830 </indexterm>
831 </listitem>
832 </varlistentry>
833
834 <varlistentry id="makeacceptmailfor">
835 <term><command>makeacceptmailfor</command></term>
836 <listitem>
837 <para>builds a list of domains to accept mail for, from the
838 <filename class="directory">/etc/courier/esmtpacceptmailfor.dir</filename>
839 directory.</para>
840 <indexterm zone="courier makeacceptmailfor">
841 <primary sortas="b-makeacceptmailfor">makeacceptmailfor</primary>
842 </indexterm>
843 </listitem>
844 </varlistentry>
845
846 <varlistentry id="makealiases">
847 <term><command>makealiases</command></term>
848 <listitem>
849 <para>builds an alias database from one or more plain text
850 source files.</para>
851 <indexterm zone="courier makealiases">
852 <primary sortas="b-makealiases">makealiases</primary>
853 </indexterm>
854 </listitem>
855 </varlistentry>
856
857 <varlistentry id="makedat">
858 <term><command>makedat</command></term>
859 <listitem>
860 <para>is a utility to create <application>GDBM</application> or
861 <application>DB</application> files from plain text files.</para>
862 <indexterm zone="courier makedat">
863 <primary sortas="b-makedat">makedat</primary>
864 </indexterm>
865 </listitem>
866 </varlistentry>
867
868 <varlistentry id="makehosteddomains">
869 <term><command>makehosteddomains</command></term>
870 <listitem>
871 <para>rebuilds the contents of the hosteddomains database from the
872 contents of <filename>/etc/courier/hosteddomains</filename>.</para>
873 <indexterm zone="courier makehosteddomains">
874 <primary sortas="b-makehosteddomains">makehosteddomains</primary>
875 </indexterm>
876 </listitem>
877 </varlistentry>
878
879 <varlistentry id="makemime">
880 <term><command>makemime</command></term>
881 <listitem>
882 <para>creates MIME-formatted messages from one
883 or more files.</para>
884 <indexterm zone="courier makemime">
885 <primary sortas="b-makemime">makemime</primary>
886 </indexterm>
887 </listitem>
888 </varlistentry>
889
890 <varlistentry id="makepercentrelay">
891 <term><command>makepercentrelay</command></term>
892 <listitem>
893 <para>builds a list of %-relayed domains from the
894 <filename class="directory">percentrelay.dir</filename> directory.</para>
895 <indexterm zone="courier makepercentrelay">
896 <primary sortas="b-makepercentrelay">makepercentrelay</primary>
897 </indexterm>
898 </listitem>
899 </varlistentry>
900
901 <varlistentry id="makesmtpaccess">
902 <term><command>makesmtpaccess</command></term>
903 <listitem>
904 <para>builds ESMTP server access files from the
905 <filename class="directory">/etc/courier/smtpaccess</filename>
906 directory.</para>
907 <indexterm zone="courier makesmtpaccess">
908 <primary sortas="b-makesmtpaccess">makesmtpaccess</primary>
909 </indexterm>
910 </listitem>
911 </varlistentry>
912
913 <varlistentry id="makesmtpaccess-msa">
914 <term><command>makesmtpaccess-msa</command></term>
915 <listitem>
916 <para>builds ESMTP server access files from the
917 <filename class="directory">/etc/courier/smtpaccess</filename>
918 directory. This esmtp list is for the MSA protocol.</para>
919 <indexterm zone="courier makesmtpaccess-msa">
920 <primary sortas="b-makesmtpaccess-msa">makesmtpaccess-msa</primary>
921 </indexterm>
922 </listitem>
923 </varlistentry>
924
925 <varlistentry id="makeuserdb">
926 <term><command>makeuserdb</command></term>
927 <listitem>
928 <para>builds a user/password db from the contents of <filename
929 class="directory">/etc/courier/userdb</filename>.</para>
930 <indexterm zone="courier makeuserdb">
931 <primary sortas="b-makeuserdb">makeuserdb</primary>
932 </indexterm>
933 </listitem>
934 </varlistentry>
935
936 <varlistentry id="mimegpg">
937 <term><command>mimegpg</command></term>
938 <listitem>
939 <para>signs, encrypts, or decrypts MIME-formatted
940 email messages using <application>GnuPG</application>.</para>
941 <indexterm zone="courier mimegpg">
942 <primary sortas="b-mimegpg">mimegpg</primary>
943 </indexterm>
944 </listitem>
945 </varlistentry>
946
947 <varlistentry id="mkesmtpdcert">
948 <term><command>mkesmtpdcert</command></term>
949 <listitem>
950 <para>creates a secure SMTP test certificate.</para>
951 <indexterm zone="courier mkesmtpdcert">
952 <primary sortas="b-mkesmtpdcert">mkesmtpdcert</primary>
953 </indexterm>
954 </listitem>
955 </varlistentry>
956
957 <varlistentry id="mkimapdcert">
958 <term><command>mkimapdcert</command></term>
959 <listitem>
960 <para>creates a secure IMAP test certificate.</para>
961 <indexterm zone="courier mkimapdcert">
962 <primary sortas="b-mkimapdcert">mkimapdcert</primary>
963 </indexterm>
964 </listitem>
965 </varlistentry>
966
967 <varlistentry id="mkpop3dcert">
968 <term><command>mkpop3dcert</command></term>
969 <listitem>
970 <para>creates a secure POP3 test certificate.</para>
971 <indexterm zone="courier mkpop3dcert">
972 <primary sortas="b-mkpop3dcert">mkpop3dcert</primary>
973 </indexterm>
974 </listitem>
975 </varlistentry>
976
977 <varlistentry id="pop3d">
978 <term><command>pop3d</command></term>
979 <listitem>
980 <para>is a wrapper script for <command>couriertcpd</command> to
981 start and stop the POP3 service.</para>
982 <indexterm zone="courier pop3d">
983 <primary sortas="b-pop3d">pop3d</primary>
984 </indexterm>
985 </listitem>
986 </varlistentry>
987
988 <varlistentry id="pop3d-ssl">
989 <term><command>pop3d-ssl</command></term>
990 <listitem>
991 <para>is a wrapper script for <command>couriertcpd</command> to
992 start and stop the POP3 over SSL service.</para>
993 <indexterm zone="courier pop3d-ssl">
994 <primary sortas="b-pop3d-ssl">pop3d-ssl</primary>
995 </indexterm>
996 </listitem>
997 </varlistentry>
998
999 <varlistentry id="preline">
1000 <term><command>preline</command></term>
1001 <listitem>
1002 <para>prepends legacy <filename>mbox</filename> headers to mail
1003 messages.</para>
1004 <indexterm zone="courier preline">
1005 <primary sortas="b-preline">preline</primary>
1006 </indexterm>
1007 </listitem>
1008 </varlistentry>
1009
1010 <varlistentry id="reformail">
1011 <term><command>reformail</command></term>
1012 <listitem>
1013 <para>reads a message on standard input, reformats it in some
1014 way, and writes the message to standard output.</para>
1015 <indexterm zone="courier reformail">
1016 <primary sortas="b-reformail">reformail</primary>
1017 </indexterm>
1018 </listitem>
1019 </varlistentry>
1020
1021 <varlistentry id="reformime">
1022 <term><command>reformime</command></term>
1023 <listitem>
1024 <para>is a utility for reformatting MIME messages.</para>
1025 <indexterm zone="courier reformime">
1026 <primary sortas="b-reformime">reformime</primary>
1027 </indexterm>
1028 </listitem>
1029 </varlistentry>
1030
1031 <varlistentry id="sendmail-courier">
1032 <term><command>sendmail</command></term>
1033 <listitem>
1034 <para>reads an email message and delivers the message to its
1035 recipients.</para>
1036 <indexterm zone="courier sendmail-courier">
1037 <primary sortas="b-sendmail">sendmail</primary>
1038 </indexterm>
1039 </listitem>
1040 </varlistentry>
1041
1042 <varlistentry id="submit">
1043 <term><command>submit</command></term>
1044 <listitem>
1045 <para>submits messages to <application>Courier</application> for
1046 processing.</para>
1047 <indexterm zone="courier submit">
1048 <primary sortas="b-submit">submit</primary>
1049 </indexterm>
1050 </listitem>
1051 </varlistentry>
1052
1053 <varlistentry id="testmxlookup">
1054 <term><command>testmxlookup</command></term>
1055 <listitem>
1056 <para>lists the names and IP addresses of mail
1057 relays that receive mail for the domain.</para>
1058 <indexterm zone="courier testmxlookup">
1059 <primary sortas="b-testmxlookup">testmxlookup</primary>
1060 </indexterm>
1061 </listitem>
1062 </varlistentry>
1063
1064 <varlistentry id="userdb">
1065 <term><command>userdb</command></term>
1066 <listitem>
1067 <para>is a script to individually manipulate entries in
1068 <filename>/etc/courier/userdb.</filename></para>
1069 <indexterm zone="courier userdb">
1070 <primary sortas="b-userdb">userdb</primary>
1071 </indexterm>
1072 </listitem>
1073 </varlistentry>
1074
1075 <varlistentry id="userdbpw">
1076 <term><command>userdbpw</command></term>
1077 <listitem>
1078 <para>reads a single line of text on standard input, encrypts
1079 it, and prints the encrypted result to standard output.</para>
1080 <indexterm zone="courier userdbpw">
1081 <primary sortas="b-userdbpw">userdbpw</primary>
1082 </indexterm>
1083 </listitem>
1084 </varlistentry>
1085
1086 </variablelist>
1087
1088 </sect2>
[7ee9849]1089
[f45b1953]1090</sect1>
Note: See TracBrowser for help on using the repository browser.