Rename Using Electronic Email to Mail Components.
Format as a variable list, clean up the wording, and add references. Many more commits in this chapter to come. Sponsored by: iXsystems
This commit is contained in:
parent
9105cbe840
commit
48a0dae3d2
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=44798
1 changed files with 111 additions and 209 deletions
|
@ -114,37 +114,11 @@
|
|||
</sect1>
|
||||
|
||||
<sect1 xml:id="mail-using">
|
||||
<title>Using Electronic Mail</title>
|
||||
<title>Mail Components</title>
|
||||
|
||||
<indexterm><primary>POP</primary></indexterm>
|
||||
<indexterm><primary>IMAP</primary></indexterm>
|
||||
<indexterm><primary>DNS</primary></indexterm>
|
||||
|
||||
<para>There are five major parts involved in an email exchange:
|
||||
<link linkend="mail-mua">the Mail User Agent
|
||||
<acronym>MUA></acronym></link>, <link linkend="mail-mta">the
|
||||
Mail Transfer Agent<acronym>MTA</acronym></link>, <link linkend="mail-dns"><acronym>DNS</acronym></link>, <link linkend="mail-receive">a remote or local mailbox</link>, and
|
||||
<link linkend="mail-host">the mail host</link>.</para>
|
||||
|
||||
<sect2 xml:id="mail-mua">
|
||||
<title>The Mail User Agent</title>
|
||||
|
||||
<para>This includes command line programs such as
|
||||
<application>mutt</application>,
|
||||
<application>alpine</application>,
|
||||
<application>elm</application>, and
|
||||
<command>mail</command>, <acronym>GUI</acronym> programs such
|
||||
as <application>balsa</application> or
|
||||
<application>xfmail</application>, and web mail programs
|
||||
which can be accessed from a web browser. User programs pass
|
||||
the email transactions to the local <link linkend="mail-host"><quote>mail host</quote></link>, either
|
||||
by a <link linkend="mail-mta"><acronym>MTA</acronym></link>, or by
|
||||
delivering it over <acronym>TCP</acronym>.</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 xml:id="mail-mta">
|
||||
<title>The Mail Transfer Agent</title>
|
||||
|
||||
<indexterm>
|
||||
<primary>mail server daemons</primary>
|
||||
<secondary><application>Sendmail</application></secondary>
|
||||
|
@ -161,48 +135,110 @@
|
|||
<primary>mail server daemons</primary>
|
||||
<secondary><application>Exim</application></secondary>
|
||||
</indexterm>
|
||||
<indexterm>
|
||||
<primary>email</primary>
|
||||
<secondary>receiving</secondary>
|
||||
</indexterm>
|
||||
<indexterm><primary>MX record</primary></indexterm>
|
||||
<indexterm><primary>mail host</primary></indexterm>
|
||||
|
||||
<para>&os; ships with <application>Sendmail</application> as the
|
||||
<para>There are five major parts involved in an email exchange:
|
||||
the Mail User Agent (<acronym>MUA</acronym>), the Mail Transfer
|
||||
Agent (<acronym>MTA</acronym>), a mail host, a remote
|
||||
or local mailbox, and <acronym>DNS</acronym>. This section provides an
|
||||
overview of these components.</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term>Mail User Agent (<acronym>MUA</acronym>)</term>
|
||||
<listitem>
|
||||
<para>The Mail User Agent (<acronym>MUA</acronym>) is an
|
||||
application which is used to compose, send, and receive
|
||||
emails. This application can be a command line program, such as
|
||||
the built-in <command>mail</command> utility or a third-party
|
||||
application from the Ports Collection, such as
|
||||
<application>mutt</application>,
|
||||
<application>alpine</application>, or
|
||||
<application>elm</application>.
|
||||
Dozens of graphical programs are also available in the Ports Collection, including
|
||||
<application>Claws Mail</application>, <application>Evolution</application>, and
|
||||
<application>Thunderbird</application>. Some organizations provide a web mail program
|
||||
which can be accessed through a web browser. More information
|
||||
about installing and using a <acronym>MUA</acronym> on &os; can be
|
||||
found in <xref linkend="mail-agents"/>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Mail Transfer Agent (<acronym>MTA</acronym>)</term>
|
||||
<listitem>
|
||||
<para>The Mail Transfer Agent (<acronym>MTA</acronym>) is
|
||||
responsible for receiving incoming mail and delivering
|
||||
outgoing mail. &os; ships with <application>Sendmail</application> as the
|
||||
default <acronym>MTA</acronym>, but it also supports numerous
|
||||
other mail server daemons, including:</para>
|
||||
other mail server daemons, including <application>Exim</application>,
|
||||
<application>Postfix</application>, and
|
||||
<application>qmail</application>.
|
||||
<application>Sendmail</application> configuration is described
|
||||
in <xref linkend="sendmail"/>. If another
|
||||
<acronym>MTA</acronym> is installed using the Ports
|
||||
Collection, refer to its post-installation message for
|
||||
&os;-specific configuration details and the application's
|
||||
website for more general configuration instructions.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<itemizedlist>
|
||||
<varlistentry>
|
||||
<term>Mail Host and Mailboxes</term>
|
||||
<listitem>
|
||||
<para><application>Exim</application>;</para>
|
||||
</listitem>
|
||||
<para>The mail host is a server that is responsible for
|
||||
delivering and receiving mail for a host or a network. The
|
||||
mail host collects all mail sent to the domain and stores it
|
||||
either in the default <filename>mbox</filename> or the
|
||||
alternative Maildir format, depending on the configuration.
|
||||
Once mail has been stored, it may either be read locally using
|
||||
a <acronym>MUA</acronym> or remotely accessed and collected
|
||||
using protocols such as <acronym>POP</acronym> or
|
||||
<acronym>IMAP</acronym>. If mail is read locally,
|
||||
a <acronym>POP</acronym> or <acronym>IMAP</acronym> server
|
||||
does not need to be installed.</para>
|
||||
|
||||
<para>To access mailboxes remotely, a
|
||||
<acronym>POP</acronym> or <acronym>IMAP</acronym> server is
|
||||
required as these protocols allow users to connect to their
|
||||
mailboxes from remote locations. <acronym>IMAP</acronym> offers
|
||||
several advantages over <acronym>POP</acronym>. These
|
||||
include the ability to store a copy of messages on a
|
||||
remote server after they are downloaded and concurrent
|
||||
updates. <acronym>IMAP</acronym> can be useful over
|
||||
low-speed links as it allows users to fetch the
|
||||
structure of messages without downloading them. It can
|
||||
also perform tasks such as searching on the server in
|
||||
order to minimize data transfer between clients and
|
||||
servers.</para>
|
||||
|
||||
<para>Several <acronym>POP</acronym> and
|
||||
<acronym>IMAP</acronym> servers are available in the Ports
|
||||
Collection. These include <package>mail/qpopper</package>,
|
||||
<package>mail/imap-uw</package>,
|
||||
<package>mail/courier-imap</package>, and
|
||||
<package>mail/dovecot2</package>.</para>
|
||||
|
||||
<warning>
|
||||
<para>It should be noted that both <acronym>POP</acronym>
|
||||
and <acronym>IMAP</acronym> transmit information,
|
||||
including username and password credentials, in
|
||||
clear-text. To secure the transmission of information
|
||||
across these protocols, consider tunneling sessions over
|
||||
&man.ssh.1; (<xref linkend="security-ssh-tunneling"/>) or
|
||||
using <acronym>SSL</acronym> (<xref linkend="openssl"/>).</para>
|
||||
</warning>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Domain Name System (<acronym>DNS</acronym>)</term>
|
||||
<listitem>
|
||||
<para><application>Postfix</application>;</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><application>qmail</application>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>The <acronym>MTA</acronym> usually has two functions. It
|
||||
is responsible for receiving incoming mail as well as
|
||||
delivering outgoing mail. It is <emphasis>not</emphasis>
|
||||
responsible for the collection of mail using protocols such as
|
||||
<acronym>POP</acronym> or <acronym>IMAP</acronym>, nor does it
|
||||
allow connecting to local <filename>mbox</filename> or Maildir
|
||||
mailboxes. An additional <link linkend="mail-receive">daemon</link> may be required for
|
||||
these functions.</para>
|
||||
|
||||
<warning>
|
||||
<para>Older versions of <application>Sendmail</application>
|
||||
contain serious security issues which may result in an
|
||||
attacker gaining local or remote access to the system.
|
||||
Run a current version to &os; to avoid these problems.
|
||||
Optionally, install an alternative <acronym>MTA</acronym>
|
||||
from the <link linkend="ports">&os; Ports
|
||||
Collection</link>.</para>
|
||||
</warning>
|
||||
</sect2>
|
||||
|
||||
<sect2 xml:id="mail-dns">
|
||||
<title>Email and DNS</title>
|
||||
|
||||
<para>The Domain Name System (<acronym>DNS</acronym>) and its
|
||||
daemon <command>named</command> play a large role in the
|
||||
delivery of email. In order to deliver mail from one site to
|
||||
|
@ -212,160 +248,26 @@
|
|||
when mail is sent from a remote host to the
|
||||
<acronym>MTA</acronym>.</para>
|
||||
|
||||
<indexterm>
|
||||
<primary>MX record</primary>
|
||||
</indexterm>
|
||||
|
||||
<para><acronym>DNS</acronym> is responsible for mapping
|
||||
hostnames to IP addresses, as well as for storing information
|
||||
<para>In addition to mapping hostnames to <acronym>IP</acronym>
|
||||
addresses, <acronym>DNS</acronym> is responsible for storing information
|
||||
specific to mail delivery, known as Mail eXchanger
|
||||
<acronym>MX</acronym> records. The <acronym>MX</acronym>
|
||||
record specifies which host, or hosts, will receive mail for a
|
||||
particular domain. If there is no <acronym>MX</acronym>
|
||||
record for the hostname or domain, the mail will be delivered
|
||||
directly to the host, provided there is an
|
||||
<literal>A</literal> record pointing the hostname to the IP
|
||||
address.</para>
|
||||
record specifies which hosts will receive mail for a
|
||||
particular domain.</para>
|
||||
|
||||
<para>To view the <acronym>MX</acronym> records for a domain,
|
||||
specify the type of record using &man.host.1;, as seen in the
|
||||
example below:</para>
|
||||
specify the type of record. Refer to &man.host.1;, for more
|
||||
details about this command:</para>
|
||||
|
||||
<screen>&prompt.user; <userinput>host -t mx FreeBSD.org</userinput>
|
||||
FreeBSD.org mail is handled by 10 mx1.FreeBSD.org</screen>
|
||||
</sect2>
|
||||
|
||||
<sect2 xml:id="mail-receive">
|
||||
<title>Receiving Mail</title>
|
||||
|
||||
<indexterm>
|
||||
<primary>email</primary>
|
||||
<secondary>receiving</secondary>
|
||||
</indexterm>
|
||||
|
||||
<para>Receiving mail for a domain is done by the mail host.
|
||||
It will collect all mail sent to the domain and store it
|
||||
either in the default <filename>mbox</filename> or the
|
||||
alternative Maildir format, depending on the configuration.
|
||||
Once mail has been stored, it may either be read locally using
|
||||
a <acronym>MUA</acronym>, or remotely accessed and collected
|
||||
using protocols such as <acronym>POP</acronym> or
|
||||
<acronym>IMAP</acronym>. In order to read mail locally,
|
||||
a <acronym>POP</acronym> or <acronym>IMAP</acronym> server
|
||||
does not need to be installed.</para>
|
||||
|
||||
<sect3 xml:id="pop-and-imap">
|
||||
<title>Accessing Remote Mailboxes Using <acronym>POP</acronym>
|
||||
and <acronym>IMAP</acronym></title>
|
||||
|
||||
<indexterm><primary>POP</primary></indexterm>
|
||||
<indexterm><primary>IMAP</primary></indexterm>
|
||||
<para>To access mailboxes remotely, access to a
|
||||
<acronym>POP</acronym> or <acronym>IMAP</acronym> server is
|
||||
required. These protocols allow users to connect to their
|
||||
mailboxes from remote locations. Though both
|
||||
<acronym>POP</acronym> and <acronym>IMAP</acronym> allow
|
||||
users to remotely access mailboxes, <acronym>IMAP</acronym>
|
||||
offers many advantages, including:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para><acronym>IMAP</acronym> can store messages on a
|
||||
remote server as well as fetch them.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><acronym>IMAP</acronym> supports concurrent
|
||||
updates.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><acronym>IMAP</acronym> can be useful over
|
||||
low-speed links as it allows users to fetch the
|
||||
structure of messages without downloading them. It can
|
||||
also perform tasks such as searching on the server in
|
||||
order to minimize data transfer between clients and
|
||||
servers.</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
<para>In order to install a <acronym>POP</acronym> or
|
||||
<acronym>IMAP</acronym> server, the following steps should
|
||||
be performed:</para>
|
||||
|
||||
<procedure>
|
||||
<step>
|
||||
<para>Use the Ports Collection to install an
|
||||
<acronym>IMAP</acronym> or <acronym>POP</acronym>
|
||||
server. The following <acronym>POP</acronym> and
|
||||
<acronym>IMAP</acronym> servers are well known:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para><package>mail/qpopper</package></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><package>mail/teapop</package></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><package>mail/imap-uw</package></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><package>mail/courier-imap</package></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><package>mail/dovecot2</package></para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
</step>
|
||||
|
||||
<step>
|
||||
<para>Where required, use the startup script that came
|
||||
with the application to load the <acronym>POP</acronym>
|
||||
or <acronym>IMAP</acronym> server. Those programs will
|
||||
also provide a variable which can be added to
|
||||
<filename>/etc/rc.conf</filename> to automate the
|
||||
startup of the application's daemon whenever the system
|
||||
boots.</para>
|
||||
</step>
|
||||
</procedure>
|
||||
|
||||
<warning>
|
||||
<para>It should be noted that both <acronym>POP</acronym>
|
||||
and <acronym>IMAP</acronym> transmit information,
|
||||
including username and password credentials, in
|
||||
clear-text. To secure the transmission of information
|
||||
across these protocols, consider tunneling sessions over
|
||||
&man.ssh.1; (<xref linkend="security-ssh-tunneling"/>) or
|
||||
using SSL (<xref linkend="openssl"/>).</para>
|
||||
</warning>
|
||||
</sect3>
|
||||
|
||||
<sect3 xml:id="local">
|
||||
<title>Accessing Local Mailboxes</title>
|
||||
|
||||
<para>Mailboxes may be accessed locally by directly using an
|
||||
<acronym>MUA</acronym> on the server on which the mailbox
|
||||
resides. This can be done using a built-in application
|
||||
such as &man.mail.1; or by installing a
|
||||
<acronym>MUA</acronym> from the Ports Collection..</para>
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 xml:id="mail-host">
|
||||
<title>The Mail Host</title>
|
||||
|
||||
<indexterm><primary>mail host</primary></indexterm>
|
||||
|
||||
<para>The mail host is a server that is responsible for
|
||||
delivering and receiving mail for a host, or a network.</para>
|
||||
</sect2>
|
||||
<para>Refer to <xref linkend="network-dns"/> for more
|
||||
information about <acronym>DNS</acronym> and its
|
||||
configuration.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</sect1>
|
||||
|
||||
<sect1 xml:id="sendmail">
|
||||
|
|
Loading…
Reference in a new issue