[0931098] | 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 courier-download-http "http://prdownloads.sourceforge.net/courier/courier-&courier-version;.tar.bz2">
|
---|
| 8 | <!ENTITY courier-download-ftp " ">
|
---|
| 9 | <!ENTITY courier-size "4.2 MB">
|
---|
| 10 | <!ENTITY courier-buildsize "114 MB">
|
---|
| 11 | <!ENTITY courier-time "3.00 SBU">
|
---|
| 12 |
|
---|
| 13 | ]>
|
---|
| 14 |
|
---|
[1a1da48] | 15 | <sect1 id="courier" xreflabel="Courier-&courier-version;">
|
---|
[a0f03b0] | 16 | <sect1info>
|
---|
[5cd0959d] | 17 | <othername>$LastChangedBy$</othername>
|
---|
| 18 | <date>$Date$</date>
|
---|
[a0f03b0] | 19 | </sect1info>
|
---|
[00bb024c] | 20 | <?dbhtml filename="courier.html"?>
|
---|
[1a1da48] | 21 | <title>Courier-&courier-version;</title>
|
---|
[f45b1953] | 22 |
|
---|
[0931098] | 23 | <sect2>
|
---|
| 24 | <title>Introduction to <application>Courier</application></title>
|
---|
| 25 |
|
---|
| 26 | <para>The <application>Courier</application> package contains a Mail Transport
|
---|
| 27 | Agent (<acronym>MTA</acronym>). This is useful for sending email to other users
|
---|
| 28 | of your host machine. It can also be configured to be a central mail server for
|
---|
| 29 | your domain or a mail relay agent. The <application>Courier</application>
|
---|
| 30 | packages also includes a web-based email interface, <acronym>IMAP</acronym>,
|
---|
| 31 | <acronym>IMAP</acronym>-<acronym>SSL</acronym>, <acronym>POP</acronym>3, and
|
---|
| 32 | <acronym>POP</acronym>3-<acronym>SSL</acronym>.</para>
|
---|
| 33 |
|
---|
| 34 | <!--
|
---|
| 35 | The configuration
|
---|
| 36 | listed below will allow users with <acronym>PAM</acronym> and virtual-users in
|
---|
| 37 | a <application>My<acronym>SQL</acronym></application> Database access to email.</para>
|
---|
| 38 | -->
|
---|
| 39 |
|
---|
| 40 | <sect3><title>Package information</title>
|
---|
| 41 | <itemizedlist spacing='compact'>
|
---|
| 42 | <listitem><para>Download (HTTP): <ulink url="&courier-download-http;"/></para></listitem>
|
---|
| 43 | <listitem><para>Download (FTP): <ulink url="&courier-download-ftp;"/></para></listitem>
|
---|
| 44 | <listitem><para>Download size: &courier-size;</para></listitem>
|
---|
| 45 | <listitem><para>Estimated Disk space required: &courier-buildsize;</para></listitem>
|
---|
| 46 | <listitem><para>Estimated build time: &courier-time;</para></listitem></itemizedlist>
|
---|
| 47 | </sect3>
|
---|
| 48 |
|
---|
| 49 | <sect3><title><application>Courier</application> dependencies</title>
|
---|
| 50 | <sect4><title>Required</title>
|
---|
| 51 | <para><xref linkend="gdbm"/><!-- or <xref linkend="db"/> --></para></sect4>
|
---|
| 52 | <sect4><title>Optional</title>
|
---|
| 53 | <para>
|
---|
| 54 | <xref linkend="mysql"/> or <xref linkend="postgresql"/>,
|
---|
| 55 | <xref linkend="Linux_PAM"/>,
|
---|
| 56 | <xref linkend="openssl"/>,
|
---|
| 57 | <xref linkend="fam"/>,
|
---|
| 58 | <xref linkend="openldap"/>,
|
---|
| 59 | <xref linkend="apache"/>,
|
---|
| 60 | <xref linkend="ispell"/> or <xref linkend="aspell"/>,
|
---|
| 61 | <xref linkend="gnupg"/>,
|
---|
[216ef4f] | 62 | <xref linkend="expect"/>,
|
---|
[0931098] | 63 | <ulink url="http://netpbm.sourceforge.net/">Netpbm</ulink> and
|
---|
| 64 | <ulink url="http://alpha.greenie.net/mgetty/">Mgetty+Sendfax</ulink>
|
---|
| 65 | </para></sect4>
|
---|
| 66 | </sect3>
|
---|
| 67 |
|
---|
| 68 | </sect2>
|
---|
| 69 |
|
---|
| 70 | <sect2>
|
---|
| 71 | <title>Installation of <application>Courier</application></title>
|
---|
| 72 |
|
---|
| 73 | <para> Before you compile the program, you need to create users and groups that
|
---|
| 74 | will be expected to be in place when the install script executes. Add the users
|
---|
| 75 | and groups with the following commands:</para>
|
---|
| 76 |
|
---|
| 77 | <screen><userinput><command>groupadd courier &&
|
---|
| 78 | useradd -c 'Courier Mail Server' -d /dev/null -g courier -s /bin/false courier</command></userinput></screen>
|
---|
| 79 |
|
---|
| 80 | <para> You also need to create a bin user. If you already have a user
|
---|
| 81 | named bin, this step can be safely ignored.</para>
|
---|
| 82 |
|
---|
| 83 | <screen><userinput><command>useradd -c 'bin' -d /dev/null -g bin -u 1 bin</command></userinput></screen>
|
---|
| 84 |
|
---|
| 85 | <para>This creates a
|
---|
| 86 | <filename class="directory">/var/run/courier</filename> directory where
|
---|
| 87 | all the <application>Courier</application> <acronym>MTA</acronym> pid
|
---|
| 88 | files will exist. This will allow <filename>courierfilter.pid</filename>
|
---|
| 89 | to be created. Without the <command>courierfilter</command> running, the
|
---|
| 90 | <application>Courier</application> MTA will not work. Issue the
|
---|
| 91 | following commands to create
|
---|
| 92 | <filename class="directory">/var/run/courier</filename>:</para>
|
---|
| 93 |
|
---|
| 94 | <screen><userinput><command>mkdir /var/run/courier &&
|
---|
| 95 | chown courier:courier /var/run/courier</command></userinput></screen>
|
---|
| 96 |
|
---|
| 97 | <para>Install <application>courier</application> by running the following commands:</para>
|
---|
| 98 |
|
---|
| 99 | <screen><userinput><command>./configure --prefix=/usr --libexecdir=/usr/lib/courier \
|
---|
| 100 | --datadir=/usr/share/courier --sysconfdir=/etc/courier \
|
---|
| 101 | --localstatedir=/var/lib/courier --with-piddir=/var/run/courier \
|
---|
| 102 | --disable-root-check --with-mailuser=courier --with-mailgroup=courier \
|
---|
| 103 | --with-paranoid-smtpext --disable-autorenamesent \
|
---|
| 104 | --enable-workarounds-for-imap-client-bugs --with-db=gdbm &&
|
---|
| 105 | make &&
|
---|
| 106 | make install &&
|
---|
| 107 | make install-configure</command></userinput></screen>
|
---|
| 108 |
|
---|
| 109 | </sect2>
|
---|
| 110 |
|
---|
| 111 | <sect2>
|
---|
| 112 | <title>Command explanations</title>
|
---|
| 113 |
|
---|
| 114 | <para><parameter>--libexecdir=/usr/lib/courier</parameter>: Specifies
|
---|
| 115 | the directory which contains programs and libraries that cannot be
|
---|
| 116 | directly executed from the command-line.</para>
|
---|
| 117 |
|
---|
| 118 | <para><parameter>--datadir=/usr/share/courier</parameter>: Specifies the
|
---|
| 119 | directory where miscellaneous shell scripts,
|
---|
| 120 | <application>Perl</application> scripts, and data files will be
|
---|
| 121 | installed.</para>
|
---|
| 122 |
|
---|
| 123 | <para><parameter>--localstatedir=/var/spool/courier</parameter>:
|
---|
| 124 | Specifies the directory that will hold the mail queue, and other
|
---|
| 125 | temporary data.</para>
|
---|
| 126 |
|
---|
| 127 | <para><parameter>--with-piddir=/var/run/courier</parameter>: Specifies
|
---|
| 128 | the directory where <application>Courier</application>'s
|
---|
| 129 | <filename>PID</filename> files are stored when
|
---|
| 130 | <application>Courier</application> is active.</para>
|
---|
| 131 |
|
---|
| 132 | <para><option>--disable-root-check</option>: Allows
|
---|
| 133 | <application>Courier</application> to be built as the root user.</para>
|
---|
| 134 |
|
---|
| 135 | <para><parameter>--with-mailuser=courier</parameter>: All except two
|
---|
| 136 | <application>Courier</application> daemons run as a non-privileged user.
|
---|
| 137 | This option specifies the userid that <application>Courier</application>
|
---|
| 138 | will install and run as.</para>
|
---|
| 139 |
|
---|
| 140 | <para><parameter>--with-mailgroup=courier</parameter>: like
|
---|
| 141 | <option>--with-mailuser</option>, but specifies the group
|
---|
| 142 | <acronym>ID</acronym>.</para>
|
---|
| 143 |
|
---|
| 144 | <para><option>--with-paranoid-smtpext</option>: Be paranoid when
|
---|
| 145 | negotiating Courier-specific <acronym>ESMTP</acronym> extensions with
|
---|
| 146 | remote servers. The <application>Courier</application> mail server
|
---|
| 147 | defines and implements certain experimental <acronym>ESMTP</acronym>
|
---|
| 148 | extensions: XVERP and XEXDATA. Problems may result in the event that
|
---|
| 149 | someone else uses the same name to implement some other extension. If
|
---|
| 150 | this option is specified, <application>Courier's</application>
|
---|
| 151 | <acronym>ESMTP</acronym> server will also advertise a dummy
|
---|
| 152 | <acronym>ESMTP</acronym> capability called XCOURIEREXTENSIONS, and will
|
---|
| 153 | not recognize any Courier-specific extensions unless the remote mail
|
---|
| 154 | server also advertises this dummy <acronym>ESMTP</acronym>
|
---|
| 155 | capability.</para>
|
---|
| 156 |
|
---|
| 157 | <para><option>--disable-autorenamesent</option>: Do not rename the Sent
|
---|
| 158 | folder every month. This option can also be controlled by the
|
---|
| 159 | <envar>SQWEBMAIL_AUTORENAMESENT</envar> environment variable.</para>
|
---|
| 160 |
|
---|
| 161 | <para><option>--enable-workarounds-for-imap-client-bugs</option>: There
|
---|
| 162 | are several confirmed bugs in some <acronym>IMAP</acronym> clients that
|
---|
| 163 | do not properly implement the <acronym>IMAP</acronym>4rev1 protocol.
|
---|
| 164 | This option enables some workarounds for those buggy
|
---|
| 165 | <acronym>IMAP</acronym> clients. NOTE: <command>make check</command>
|
---|
| 166 | will fail if this option is used. You should first configure without
|
---|
| 167 | this option, and if all post-configuration tests succeed, rerun
|
---|
| 168 | configure with this option and recompile.</para>
|
---|
| 169 |
|
---|
| 170 | <para><parameter>--with-db=gdbm</parameter>:
|
---|
| 171 | <application>Courier</application> requires either the
|
---|
| 172 | <application><acronym>GDBM</acronym></application> or the
|
---|
| 173 | <application>DB</application> database library.
|
---|
| 174 | <application><acronym>GDBM</acronym></application> is used if both are
|
---|
| 175 | present. This option forces the selection of the GDBM database
|
---|
| 176 | library since support for DB is broken at the current state.</para>
|
---|
| 177 |
|
---|
| 178 | <!-- # Note - Courier will build fine with <xref linkend="db"/>, but all
|
---|
| 179 | the database files will not be created correctly -->
|
---|
| 180 |
|
---|
| 181 | <para><parameter>--with-ispell=/usr/bin/aspell</parameter>:
|
---|
| 182 | <application>Courier</application>'s webmail server can use spell
|
---|
| 183 | checking, if <command>configure</command> finds
|
---|
| 184 | <application>ispell</application> or if you explicitly set the location
|
---|
| 185 | of <application>aspell</application>.</para>
|
---|
| 186 |
|
---|
| 187 | <para><parameter>--enable-mimetypes=<replaceable>[location of mime.types file]</replaceable></parameter>:
|
---|
| 188 | Use this switch if you receive an error saying that the
|
---|
| 189 | <filename>mime.types</filename> file could not be found.</para>
|
---|
| 190 |
|
---|
| 191 | </sect2>
|
---|
| 192 |
|
---|
| 193 | <sect2>
|
---|
| 194 | <title>Configuring <application>Courier</application></title>
|
---|
| 195 |
|
---|
| 196 | <sect3><title>Config files</title>
|
---|
| 197 | <para><filename>/etc/courier/*</filename></para>
|
---|
| 198 | </sect3>
|
---|
| 199 |
|
---|
| 200 | <sect3><title>Configuration Information</title>
|
---|
| 201 |
|
---|
| 202 | <para>Make the following changes in
|
---|
| 203 | <filename>/etc/courier/authmysqlrc</filename> file if you are utilizing
|
---|
| 204 | <application>My<acronym>SQL</acronym></application>:</para>
|
---|
| 205 |
|
---|
| 206 | <screen><userinput>MYSQL_SERVER localhost
|
---|
| 207 | MYSQL_USERNAME courier
|
---|
| 208 | MYSQL_PASSWORD <replaceable>[your choice]</replaceable>
|
---|
| 209 | MYSQL_SOCKET /tmp/mysql.sock
|
---|
| 210 | MYSQL_PORT 3306
|
---|
| 211 | MYSQL_DATABASE courier_mail
|
---|
| 212 | MYSQL_USER_TABLE users
|
---|
| 213 | MYSQL_CLEAR_PWFIELD clear
|
---|
| 214 | DEFAULT DOMAIN <replaceable>[your domain]</replaceable>
|
---|
| 215 | MYSQL_QUOTA_FIELD quota</userinput></screen>
|
---|
| 216 |
|
---|
| 217 | <para>If you utilize <application>PAM</application>:</para>
|
---|
| 218 |
|
---|
| 219 | <screen><userinput><command>cat > /etc/pam.d/esmtp << "EOF"</command>
|
---|
| 220 | # Begin /etc/pam.d/esmtp
|
---|
| 221 |
|
---|
| 222 | auth required pam_unix.so try_first_pass
|
---|
| 223 | account required pam_unix.so
|
---|
| 224 | session required pam_unix.so
|
---|
| 225 |
|
---|
| 226 | # End /etc/pam.d/esmtp
|
---|
| 227 | <command>EOF
|
---|
| 228 | cat > /etc/pam.d/pop3 << "EOF"</command>
|
---|
| 229 | # Begin /etc/pam.d/pop3
|
---|
| 230 |
|
---|
| 231 | auth required pam_unix.so try_first_pass
|
---|
| 232 | account required pam_unix.so
|
---|
| 233 | session required pam_unix.so
|
---|
| 234 |
|
---|
| 235 | # End /etc/pam.d/pop3
|
---|
| 236 | <command>EOF
|
---|
| 237 | cat > /etc/pam.d/imap << "EOF"</command>
|
---|
| 238 | # Begin /etc/pam.d/imap
|
---|
| 239 |
|
---|
| 240 | auth required pam_unix.so try_first_pass
|
---|
| 241 | account required pam_unix.so
|
---|
| 242 | session required pam_unix.so
|
---|
| 243 |
|
---|
| 244 | # End /etc/pam.d/imap
|
---|
| 245 | <command>EOF
|
---|
| 246 | cat > /etc/pam.d/webmail << "EOF"</command>
|
---|
| 247 | # Begin /etc/pam.d/webmail
|
---|
| 248 |
|
---|
| 249 | auth required pam_unix.so try_first_pass
|
---|
| 250 | account required pam_unix.so
|
---|
| 251 | session required pam_unix.so
|
---|
| 252 |
|
---|
| 253 | # End /etc/pam.d/webmail
|
---|
| 254 | <command>EOF</command></userinput></screen>
|
---|
| 255 |
|
---|
| 256 | <para>Connect to the <application>My<acronym>SQL</acronym></application>
|
---|
| 257 | database:</para>
|
---|
| 258 |
|
---|
| 259 | <screen><userinput><command>mysql -p</command></userinput></screen>
|
---|
| 260 |
|
---|
| 261 | <para>This command will create the database for authentication:</para>
|
---|
| 262 |
|
---|
| 263 | <screen><userinput><command>CREATE DATABASE courier_mail;
|
---|
| 264 | USE courier_mail</command></userinput></screen>
|
---|
| 265 |
|
---|
| 266 | <para>This command will setup the table users for the courier_mail
|
---|
| 267 | database:</para>
|
---|
| 268 |
|
---|
| 269 | <screen><userinput><command>CREATE TABLE users (
|
---|
| 270 | id char(128) DEFAULT '' NOT NULL,
|
---|
| 271 | crypt char(128) DEFAULT '' NOT NULL,
|
---|
| 272 | clear char(128) DEFAULT '' NOT NULL,
|
---|
| 273 | name char(128) DEFAULT '' NOT NULL,
|
---|
| 274 | uid int(10) unsigned DEFAULT '65534' NOT NULL,
|
---|
| 275 | gid int(10) unsigned DEFAULT '65534' NOT NULL,
|
---|
| 276 | home char(255) DEFAULT '' NOT NULL,
|
---|
| 277 | quota char(255) DEFAULT '' NOT NULL,
|
---|
| 278 | KEY id (id(128))
|
---|
| 279 | );</command></userinput></screen>
|
---|
| 280 |
|
---|
| 281 | <para>This will add the courier user that we specified earlier in the
|
---|
| 282 | <filename>/etc/courier/authmysqlrc</filename> file:</para>
|
---|
| 283 |
|
---|
| 284 | <screen><userinput><command>GRANT ALL PRIVILEGES ON *.* TO courier@localhost IDENTIFIED BY '<replaceable>[password]</replaceable>' WITH GRANT OPTION;
|
---|
| 285 | QUIT</command></userinput></screen>
|
---|
| 286 |
|
---|
| 287 | <para><emphasis>General Settings for Mail</emphasis></para>
|
---|
| 288 |
|
---|
| 289 | <para>You will need to create the following files with the contents
|
---|
| 290 | specified.</para>
|
---|
| 291 |
|
---|
| 292 | <para><filename>/etc/courier/defaultdomain</filename></para>
|
---|
| 293 |
|
---|
| 294 | <screen><userinput><command>cat > /etc/courier/defaultdomain << "EOF"</command>
|
---|
| 295 | <replaceable>[yourdomain]</replaceable>
|
---|
| 296 | <command>EOF</command></userinput></screen>
|
---|
| 297 |
|
---|
| 298 | <para><filename>/etc/courier/me</filename></para>
|
---|
| 299 |
|
---|
| 300 | <screen><userinput><command>cat > /etc/courier/me << "EOF"</command>
|
---|
| 301 | <replaceable>[servername.yourdomain]</replaceable>
|
---|
| 302 | <command>EOF</command></userinput></screen>
|
---|
| 303 |
|
---|
| 304 | <para><filename>/etc/courier/locals</filename></para>
|
---|
| 305 |
|
---|
| 306 | <screen><userinput><command>cat > /etc/courier/locals << "EOF"</command>
|
---|
| 307 | localhost
|
---|
| 308 | <replaceable>[yourdomain]</replaceable>
|
---|
| 309 | <command>EOF</command></userinput></screen>
|
---|
| 310 |
|
---|
| 311 | <para><filename>/etc/courier/esmtpacceptmailfor.dir/system</filename></para>
|
---|
| 312 |
|
---|
| 313 | <screen><userinput><command>cat >/etc/courier/esmtpacceptmailfor.dir/system << "EOF"</command>
|
---|
| 314 | localhost
|
---|
| 315 | <replaceable>[yourdomain]</replaceable>
|
---|
| 316 | <command>EOF</command></userinput></screen>
|
---|
| 317 |
|
---|
| 318 | <para>You will also need to edit the aliases file and change the
|
---|
| 319 | following entry.</para>
|
---|
| 320 |
|
---|
| 321 | <para><filename>/etc/courier/aliases/system</filename></para>
|
---|
| 322 |
|
---|
| 323 | <screen><userinput>postmaster: <replaceable>[your administrator email]</replaceable></userinput></screen>
|
---|
| 324 |
|
---|
| 325 | <para>If you want to deny access from some hosts from sending mail, you
|
---|
| 326 | will need to edit the
|
---|
| 327 | <filename>/etc/courier/smtpaccess/default</filename> file.</para>
|
---|
| 328 |
|
---|
| 329 | <para>After the above steps are completed you will need to run the
|
---|
| 330 | following commands:</para>
|
---|
| 331 |
|
---|
| 332 | <screen><userinput><command>makesmtpaccess &&
|
---|
| 333 | makehosteddomains &&
|
---|
| 334 | makealiases</command></userinput></screen>
|
---|
| 335 |
|
---|
| 336 | <para><emphasis><acronym>SMTP</acronym>/<acronym>SMTMP</acronym>-<acronym>SSL
|
---|
| 337 | </acronym> Configuration</emphasis></para>
|
---|
| 338 |
|
---|
| 339 | <para>This section will enable the <acronym>SMTP</acronym> Server from Courier</para>
|
---|
| 340 |
|
---|
| 341 | <para><filename>/etc/courier/esmtpd</filename></para>
|
---|
| 342 |
|
---|
| 343 | <screen><userinput>ESMTPDSTART=YES</userinput></screen>
|
---|
| 344 |
|
---|
| 345 | <para><filename>/etc/courier/esmtpd-ssl</filename></para>
|
---|
| 346 |
|
---|
| 347 | <screen><userinput>ESMTPDSSLSTART=YES</userinput></screen>
|
---|
| 348 |
|
---|
| 349 | <para><emphasis><acronym>POP</acronym>3/<acronym>POP</acronym>3-<acronym>SSL
|
---|
| 350 | </acronym> Configuration</emphasis></para>
|
---|
| 351 |
|
---|
| 352 | <para>This section will enable the <acronym>POP</acronym>3 Server from
|
---|
| 353 | Courier</para>
|
---|
| 354 |
|
---|
| 355 |
|
---|
| 356 | <para><filename>/etc/courier/pop3d</filename></para>
|
---|
| 357 |
|
---|
| 358 | <screen><userinput>POP3DSTART=YES</userinput></screen>
|
---|
| 359 |
|
---|
| 360 | <para><filename>/etc/courier/pop3d-ssl</filename></para>
|
---|
| 361 |
|
---|
| 362 | <screen><userinput>POP3DSLLSTART=YES</userinput></screen>
|
---|
| 363 |
|
---|
| 364 | <para><emphasis><acronym>IMAP</acronym>/<acronym>IMAP</acronym>-<acronym>SSL
|
---|
| 365 | </acronym> Configuration</emphasis></para>
|
---|
| 366 |
|
---|
| 367 | <para>This section will enable the <acronym>IMAP</acronym> Server from
|
---|
| 368 | Courier</para>
|
---|
| 369 |
|
---|
| 370 | <para><filename>/etc/courier/imapd</filename></para>
|
---|
| 371 |
|
---|
| 372 |
|
---|
| 373 | <screen><userinput>IMAPDSTART=YES</userinput></screen>
|
---|
| 374 |
|
---|
| 375 | <para><filename>/etc/courierd/imapd-ssl</filename></para>
|
---|
| 376 |
|
---|
| 377 | <screen><userinput>IMAPDSSLSTART=YES</userinput></screen>
|
---|
| 378 |
|
---|
| 379 | <para><emphasis>Creating Mail directories for System Users</emphasis></para>
|
---|
| 380 |
|
---|
| 381 |
|
---|
| 382 | <para>This section will explain how to create MailDirs for
|
---|
| 383 | your system users.</para>
|
---|
| 384 |
|
---|
| 385 | <screen><userinput><command>cd /home/<replaceable>[username]</replaceable> &&
|
---|
| 386 | maildirmake Maildir &&
|
---|
| 387 | chown <replaceable>[username]</replaceable>.<replaceable>[username]</replaceable> Maildir -R</command></userinput></screen>
|
---|
| 388 |
|
---|
| 389 | <para><emphasis>Setup for Virtual users</emphasis></para>
|
---|
| 390 |
|
---|
| 391 | <para>This section will explain how to setup Maildir for your virtual
|
---|
| 392 | users.</para>
|
---|
| 393 |
|
---|
| 394 | <screen><userinput><command>groupadd -g 9000 vmailman &&
|
---|
| 395 | useradd -c 'Virtual Mailman' -g vmailman -m -k /dev/null -u 9000 vmailman</command></userinput></screen>
|
---|
| 396 |
|
---|
| 397 | <para>Now to setup the Maildir for these virtual users.</para>
|
---|
| 398 |
|
---|
| 399 | <screen><userinput><command>cd /home/vmailman &&
|
---|
| 400 | mkdir <replaceable>[virtual_user]</replaceable> &&
|
---|
| 401 | cd <replaceable>[virtual_user]</replaceable> &&
|
---|
| 402 | maildirmake Maildir &&
|
---|
| 403 | chown vmailman.vmailman Maildir -R</command></userinput></screen>
|
---|
| 404 |
|
---|
| 405 | <para>Connect to the <application>My<acronym>SQL</acronym></application>
|
---|
| 406 | database.</para>
|
---|
| 407 |
|
---|
| 408 | <screen><userinput><command>mysql -u courier -p</command></userinput></screen>
|
---|
| 409 |
|
---|
| 410 | <para>To add the virtual user you need to enter at
|
---|
| 411 | least one version of the password either clear text or encrypted.</para>
|
---|
| 412 |
|
---|
| 413 | <screen><userinput><command>USE courier_mail
|
---|
| 414 | INSERT INTO users VALUES (
|
---|
| 415 | '<replaceable>[virtual_users]</replaceable>@<replaceable>[domain.com]</replaceable>,
|
---|
| 416 | '<replaceable>[encrypted password or blank]</replaceable>',
|
---|
| 417 | '<replaceable>[clear text password or blank]</replaceable>',
|
---|
| 418 | '<replaceable>[User's Name]</replaceable>',
|
---|
| 419 | 9000,
|
---|
| 420 | 9000,
|
---|
| 421 | '<replaceable>[location of Maildir]</replaceable>',
|
---|
| 422 | '<replaceable>[Quota in Bytes']</replaceable>
|
---|
| 423 | );
|
---|
| 424 | QUIT</command></userinput></screen>
|
---|
| 425 |
|
---|
| 426 | <para>For example:</para>
|
---|
| 427 |
|
---|
| 428 | <screen><userinput><command>INSERT INTO users VALUES (
|
---|
| 429 | 'blfsuser@linuxfromscratch.org',
|
---|
| 430 | '',
|
---|
| 431 | 'password',
|
---|
| 432 | 'BLFS User',
|
---|
| 433 | 9000,
|
---|
| 434 | 9000,
|
---|
| 435 | '/home/vmailman/blfsuser',
|
---|
| 436 | ''
|
---|
| 437 | );</command></userinput></screen>
|
---|
| 438 |
|
---|
| 439 | <para><emphasis>Setup for Web-based Email</emphasis></para>
|
---|
| 440 |
|
---|
| 441 | <para>This section will explain how to setup Courier Web-based email
|
---|
| 442 | system.</para>
|
---|
| 443 |
|
---|
| 444 | <para>You will need to copy the <filename>webmail</filename> file from
|
---|
| 445 | <filename>/usr/lib/courier/courier/webmail</filename> to your <filename>cgi-bin
|
---|
| 446 | </filename> directory of your <application>Apache</application>
|
---|
| 447 | server.</para>
|
---|
| 448 |
|
---|
| 449 | <screen><userinput><command>cp -a /usr/lib/courier/courier/webmail/webmail /var/www/cgi-bin</command></userinput></screen>
|
---|
| 450 |
|
---|
| 451 | <para>You will then need to copy the images to a directory under your
|
---|
| 452 | <filename>htdocs</filename> directory of your
|
---|
| 453 | <application>Apache</application> server. The directory needs to be named
|
---|
| 454 | <filename>webmail</filename> or you need to specify it during the configure
|
---|
| 455 | phase with <parameter>--enable-imageurl=<replaceable>[URL]</replaceable></parameter>.</para>
|
---|
| 456 |
|
---|
| 457 | <screen><userinput><command>cp -a /usr/share/courier/sqwebmail/images /var/www/htdocs/webmail</command></userinput></screen>
|
---|
| 458 | <para><emphasis>Setup for Web-based Email</emphasis></para>
|
---|
| 459 |
|
---|
| 460 | <para>This section will explain how to setup Courier Web-based administration
|
---|
| 461 | system.</para>
|
---|
| 462 |
|
---|
| 463 | <para>You will need to copy the <filename>webadmin</filename> file from
|
---|
| 464 | <filename class="directory">/usr/lib/courier/courier/webmail</filename>
|
---|
| 465 | to your <filename class="directory">cgi-bin</filename> directory of your
|
---|
| 466 | <application>Apache</application> server.</para>
|
---|
| 467 |
|
---|
| 468 | <screen><userinput><command>cp -a /usr/lib/courier/courier/webmail/webadmin /var/www/cgi-bin</command></userinput></screen>
|
---|
| 469 |
|
---|
| 470 | <para><filename>/etc/courier/webadmin/password</filename></para>
|
---|
| 471 |
|
---|
| 472 | <screen><userinput><command>cat > /etc/courier/webadmin/password << "EOF"</command>
|
---|
| 473 | <replaceable>[password]</replaceable>
|
---|
| 474 | <command>EOF</command></userinput></screen>
|
---|
| 475 |
|
---|
| 476 | <para>If you are not using <acronym>SSL</acronym> on your <application>Apache
|
---|
| 477 | </application> server, you will need to add
|
---|
| 478 | <filename>/etc/courier/webadmin/unsecureok</filename>, so you will be able
|
---|
| 479 | to use your web based administration tool.</para>
|
---|
| 480 |
|
---|
| 481 | <screen><userinput><command>touch /etc/courier/webadmin/unsecureok</command></userinput></screen>
|
---|
| 482 | </sect3>
|
---|
| 483 |
|
---|
| 484 | <sect3><title>Courier init.d script</title>
|
---|
| 485 |
|
---|
| 486 | <para>The startup script from the <application>Courier</application> package is
|
---|
| 487 | the easiest to use. It will automatically create missing data files, and
|
---|
| 488 | <acronym>SSL</acronym> certificates if they are missing. To install the
|
---|
| 489 | init.d file for <application>Courier</application>, you will need to use the
|
---|
| 490 | following commands:</para>
|
---|
| 491 |
|
---|
| 492 | <screen><userinput><command>cp /usr/src/courier-&courier-version;/courier.sysvinit /etc/rc.d/init.d/courier &&
|
---|
| 493 | chmod 754 /etc/rc.d/init.d/courier</command></userinput></screen>
|
---|
| 494 |
|
---|
| 495 | <para>Create the symbolic links to this file in the relevant
|
---|
| 496 | <filename>rc.d</filename> directory with the following commands:</para>
|
---|
| 497 |
|
---|
| 498 | <screen><userinput><command>cd /etc/rc.d/init.d &&
|
---|
| 499 | ln -sf ../init.d/courier ../rc0.d/K25courier &&
|
---|
| 500 | ln -sf ../init.d/courier ../rc1.d/K25courier &&
|
---|
| 501 | ln -sf ../init.d/courier ../rc2.d/K25courier &&
|
---|
| 502 | ln -sf ../init.d/courier ../rc3.d/S35courier &&
|
---|
| 503 | ln -sf ../init.d/courier ../rc4.d/S35courier &&
|
---|
| 504 | ln -sf ../init.d/courier ../rc5.d/S35courier &&
|
---|
| 505 | ln -sf ../init.d/courier ../rc6.d/K25courier</command></userinput></screen>
|
---|
| 506 |
|
---|
| 507 | </sect3>
|
---|
| 508 | </sect2>
|
---|
| 509 |
|
---|
| 510 | <sect2>
|
---|
| 511 | <title>Contents</title>
|
---|
| 512 |
|
---|
| 513 | <para>The <application>Courier</application> package contains
|
---|
| 514 | <command>addcr</command>,
|
---|
| 515 | <command>authenumerate</command>,
|
---|
| 516 | <command>cancelmsg</command>,
|
---|
| 517 | <command>courier</command>,
|
---|
| 518 | <command>courier-config</command>,
|
---|
| 519 | <command>courieresmtpd</command>,
|
---|
| 520 | <command>courierfilter</command>,
|
---|
| 521 | <command>courierldapaliasd</command>,
|
---|
| 522 | <command>courierlogger</command>,
|
---|
| 523 | <command>couriermlm</command>,
|
---|
| 524 | <command>couriertcpd</command>,
|
---|
| 525 | <command>couriertls</command>,
|
---|
| 526 | <command>deliverquota</command>,
|
---|
| 527 | <command>dotforward</command>,
|
---|
| 528 | <command>esmtpd</command>,
|
---|
| 529 | <command>esmtpd-msa</command>,
|
---|
| 530 | <command>esmtpd-ssl</command>,
|
---|
| 531 | <command>filterctl</command>,
|
---|
| 532 | <command>imapd</command>,
|
---|
| 533 | <command>imapd</command>,
|
---|
| 534 | <command>imapd-ssl</command>,
|
---|
| 535 | <command>lockmail</command>,
|
---|
| 536 | <command>mailbot</command>,
|
---|
| 537 | <command>maildiracl</command>,
|
---|
| 538 | <command>maildirkw</command>,
|
---|
| 539 | <command>maildirmake</command>,
|
---|
| 540 | <command>maildrop</command>,
|
---|
| 541 | <command>makeacceptmailfor</command>,
|
---|
| 542 | <command>makealiases</command>,
|
---|
| 543 | <command>makedat</command>,
|
---|
| 544 | <command>makehosteddomains</command>,
|
---|
| 545 | <command>makemime</command>,
|
---|
| 546 | <command>makepercentrelay</command>,
|
---|
| 547 | <command>makesmtpaccess</command>,
|
---|
| 548 | <command>makesmtpaccess-msa</command>,
|
---|
| 549 | <command>makeuserdb</command>,
|
---|
| 550 | <command>makeuucpneighbors</command>,
|
---|
| 551 | <command>mimegpg</command>,
|
---|
| 552 | <command>mkesmtpdcert</command>,
|
---|
| 553 | <command>mkimapdcert</command>,
|
---|
| 554 | <command>mkpop3dcert</command>,
|
---|
| 555 | <command>pop3d</command>,
|
---|
| 556 | <command>pop3d-ssl</command>,
|
---|
| 557 | <command>preline</command>,
|
---|
| 558 | <command>pw2userdb</command>,
|
---|
| 559 | <command>reformail</command>,
|
---|
| 560 | <command>reformime</command>,
|
---|
| 561 | <command>rmail</command>,
|
---|
| 562 | <command>sendmail</command>,
|
---|
| 563 | <command>sharedindexinstall</command>,
|
---|
| 564 | <command>sharedindexsplit</command>,
|
---|
| 565 | <command>showconfig</command>,
|
---|
| 566 | <command>showmodules</command>,
|
---|
| 567 | <command>testmxlookup</command>,
|
---|
| 568 | <command>userdb</command>,
|
---|
| 569 | <command>userdbpw</command>,
|
---|
| 570 | <command>vchkpw2userdb</command> and
|
---|
| 571 | <command>webgpg</command>.</para>
|
---|
| 572 |
|
---|
| 573 | </sect2>
|
---|
| 574 |
|
---|
| 575 | <sect2><title>Description</title>
|
---|
| 576 |
|
---|
| 577 | <sect3><title>cancelmsg</title>
|
---|
| 578 | <para><command>cancelmsg</command> removes a message from the mail queue.</para></sect3>
|
---|
| 579 |
|
---|
| 580 | <sect3><title>courier</title>
|
---|
| 581 | <para><command>courier</command> is a modular multi-protocol E-mail
|
---|
| 582 | transport agent. The <command>courier</command> command is an
|
---|
| 583 | administrative command, and most of its options are only available to
|
---|
| 584 | the superuser.</para></sect3>
|
---|
| 585 |
|
---|
| 586 | <sect3><title>courierfilter</title>
|
---|
| 587 | <para><command>courierfilter</command> command installs or uninstalls
|
---|
| 588 | global mail filters. Global mail filters are used to selectively block
|
---|
| 589 | unwanted mail.</para></sect3>
|
---|
| 590 |
|
---|
| 591 | <sect3><title>couriermlm</title>
|
---|
| 592 | <para><command>couriermlm</command> is the Courier mailing list manager.</para></sect3>
|
---|
| 593 |
|
---|
| 594 | <sect3><title>filterctl</title>
|
---|
| 595 | <para><command>filterctl</command> command installs or uninstalls global
|
---|
| 596 | mail filters. Global mail filters are used to selectively block unwanted
|
---|
| 597 | mail.</para></sect3>
|
---|
| 598 |
|
---|
| 599 | <sect3><title>lockmail</title>
|
---|
| 600 | <para><command>lockmail</command> is a helper utility for working with mailbox files.</para></sect3>
|
---|
| 601 |
|
---|
| 602 | <sect3><title>mailbot</title>
|
---|
| 603 | <para><command>mailbot</command> reads an E-mail message on standard input and creates an E-mail message
|
---|
| 604 | replying to the original message's sender.</para></sect3>
|
---|
| 605 |
|
---|
| 606 | <sect3><title>maildirkw</title>
|
---|
| 607 | <para><command>maildirkw</command> modifies Courier-IMAP compatible maildir message keywords.</para></sect3>
|
---|
| 608 |
|
---|
| 609 | <sect3><title>maildrop</title>
|
---|
| 610 | <para><command>maildrop</command> is a replacement local mail delivery agent that includes a mail filtering
|
---|
| 611 | language.</para></sect3>
|
---|
| 612 |
|
---|
| 613 | <sect3><title>makeacceptmailfor</title>
|
---|
| 614 | <para><command>makeacceptmailfor</command> Build a list of domains to accept mail for from the
|
---|
| 615 | <filename>/etc/courier/esmtpacceptmailfor.dir</filename> directory.</para></sect3>
|
---|
| 616 |
|
---|
| 617 | <sect3><title>makealiases</title>
|
---|
| 618 | <para><command>makealiases</command> Build a list of aliases from the <filename>/etc/courier/aliases</filename>
|
---|
| 619 | or <filename>/etc/courier/aliasdir</filename> directories.</para></sect3>
|
---|
| 620 |
|
---|
| 621 | <sect3><title>makehosteddomains</title>
|
---|
| 622 | <para><command>makehostedomains</command> Build a database of hosted domains from <filename>hosteddomains</filename>.</para></sect3>
|
---|
| 623 |
|
---|
| 624 | <sect3><title>makepercentrelay</title>
|
---|
| 625 | <para><command>makepercentrelay</command> Build a list of %-relayed
|
---|
| 626 | domains from the <filename>percentrelay.dir</filename>
|
---|
| 627 | directory.</para></sect3>
|
---|
| 628 |
|
---|
| 629 | <sect3><title>makesmtpaccess</title>
|
---|
| 630 | <para><command>makesmtpaccess</command> Build ESMTP server access file
|
---|
| 631 | from the <filename>/etc/courier/smtpaccess</filename>
|
---|
| 632 | directory.</para></sect3>
|
---|
| 633 |
|
---|
| 634 | <sect3><title>makesmtpaccess-msa</title>
|
---|
| 635 | <para><command>makesmtpaccess-msa</command> Build ESMTP server access
|
---|
| 636 | file from the <filename>/etc/courier/smtpaccess</filename>
|
---|
| 637 | directory. This esmtp list is for the MSA protocol.</para></sect3>
|
---|
| 638 |
|
---|
| 639 | <sect3><title>makeuucpneighbors</title>
|
---|
| 640 | <para><command>makeuucpneighbors</command> Builds a list of
|
---|
| 641 | <acronym>UUCP</acronym> recipients using <filename>/etc/courier/uucpneighbors</filename>.</para></sect3>
|
---|
| 642 |
|
---|
| 643 | <sect3><title>reformail</title>
|
---|
| 644 | <para><command>reformail</command> program reads a message on standard input, reformats it in some way,
|
---|
| 645 | and writes the message to standard output.</para></sect3>
|
---|
| 646 |
|
---|
| 647 | <sect3><title>reformime</title>
|
---|
| 648 | <para><command>reformime</command> is a utility for reformatting MIME messages.</para></sect3>
|
---|
| 649 |
|
---|
| 650 | <sect3><title>sendmail</title>
|
---|
| 651 | <para><command>sendmail</command> command reads an E-mail message and delivers the message to its recipients.
|
---|
| 652 | This sendmail command is part of the Courier mail server, although it attempts to emulate the behavior of the
|
---|
| 653 | original sendmail MTA.</para></sect3>
|
---|
| 654 |
|
---|
| 655 | <sect3><title>showconfig</title>
|
---|
| 656 | <para><command>showconfig</command> Shows the current Courier configuration.</para></sect3>
|
---|
| 657 |
|
---|
| 658 | <sect3><title>showmodules</title>
|
---|
| 659 | <para><command>showmodules</command> Shows the current Courier modules.</para></sect3>
|
---|
| 660 |
|
---|
| 661 | <sect3><title>testmxlookup</title>
|
---|
| 662 | <para><command>testmxlookup</command> lists the names and IP addresses of mail relays that receive mail for the
|
---|
| 663 | domain. This is useful in diagnosing mail delivery problems.</para></sect3>
|
---|
[f45b1953] | 664 |
|
---|
[0931098] | 665 | </sect2>
|
---|
[f45b1953] | 666 | </sect1>
|
---|
| 667 |
|
---|