source: networking/mailnews/fetchmail.xml

trunk
Last change on this file was 9a364ced, checked in by Ken Moffat <zarniwhoop@…>, 2 months ago

Tags

  • Property mode set to 100644
File size: 8.9 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY fetchmail-download-http "&sourceforge-dl;/fetchmail/fetchmail-&fetchmail-version;.tar.xz">
8 <!ENTITY fetchmail-download-ftp " ">
9 <!ENTITY fetchmail-md5sum "0b833211c628f18607b82ae9add97c40">
10 <!ENTITY fetchmail-size "1.1 MB">
11 <!ENTITY fetchmail-buildsize "15 MB including tests">
12 <!ENTITY fetchmail-time "0.1 SBU including tests">
13]>
14
15<sect1 id="fetchmail" xreflabel="fetchmail-&fetchmail-version;">
16 <?dbhtml filename="fetchmail.html"?>
17
18
19 <title>Fetchmail-&fetchmail-version;</title>
20
21 <indexterm zone="fetchmail">
22 <primary sortas="a-Fetchmail">Fetchmail</primary>
23 </indexterm>
24
25 <sect2 role="package">
26 <title>Introduction to Fetchmail</title>
27
28 <para>
29 The <application>Fetchmail</application> package contains a mail
30 retrieval program. It retrieves mail from remote mail servers and
31 forwards it to the local (client) machine's delivery system, so it can
32 then be read by normal mail user agents.
33 </para>
34
35 &lfs121_checked;
36
37 <bridgehead renderas="sect3">Package Information</bridgehead>
38 <itemizedlist spacing='compact'>
39 <listitem>
40 <para>
41 Download (HTTP): <ulink url="&fetchmail-download-http;"/>
42 </para>
43 </listitem>
44 <listitem>
45 <para>
46 Download (FTP): <ulink url="&fetchmail-download-ftp;"/>
47 </para>
48 </listitem>
49 <listitem>
50 <para>
51 Download MD5 sum: &fetchmail-md5sum;
52 </para>
53 </listitem>
54 <listitem>
55 <para>
56 Download size: &fetchmail-size;
57 </para>
58 </listitem>
59 <listitem>
60 <para>
61 Estimated disk space required: &fetchmail-buildsize;
62 </para>
63 </listitem>
64 <listitem>
65 <para>
66 Estimated build time: &fetchmail-time;
67 </para>
68 </listitem>
69 </itemizedlist>
70
71 <bridgehead renderas="sect3">Fetchmail Dependencies</bridgehead>
72
73 <bridgehead renderas="sect4">Recommended</bridgehead>
74 <para role="recommended">
75 a local MDA (<xref linkend="procmail"/>)
76 </para>
77
78 <bridgehead renderas="sect4">Optional</bridgehead>
79 <para role="optional">
80 <xref linkend="mitkrb"/> and
81 <ulink url="http://www.citi.umich.edu/projects/nfsv4/linux/">libgssapi</ulink>
82 </para>
83
84 <bridgehead renderas="sect4">Optional (for running fetchmailconf)</bridgehead>
85 <para role="optional">
86 <xref linkend="python3"/>, built after
87 <xref linkend="tk"/>, with the
88 <ulink url="https://python-future.org/">py-future</ulink> package
89 </para>
90
91 </sect2>
92
93 <sect2 role="installation">
94 <title>Installation of Fetchmail</title>
95
96 <para>
97 Create a dedicated user for the fetchmail program.
98 Issue the following commands as the
99 <systemitem class="username">root</systemitem> user:
100 </para>
101
102<screen role="root"><userinput>useradd -c "Fetchmail User" -d /dev/null -g nogroup \
103 -s /bin/false -u 38 fetchmail</userinput></screen>
104
105 <para>
106 Install <application>Fetchmail</application> by running the following
107 commands:
108 </para>
109
110<screen><userinput>PYTHON=python3 \
111./configure --prefix=/usr \
112 --enable-fallback=procmail &amp;&amp;
113make</userinput></screen>
114
115 <para>
116 To test the results, issue: <command>make check</command>.
117 </para>
118
119
120 <para>
121 Now, as the <systemitem class="username">root</systemitem> user:
122 </para>
123
124<screen role='root'><userinput>make install &amp;&amp;
125chown -v fetchmail:nogroup /usr/bin/fetchmail</userinput></screen>
126
127 </sect2>
128
129 <sect2 role="commands">
130 <title>Command Explanations</title>
131
132 <para>
133 <parameter>PYTHON=python3</parameter>: a version of Python is
134 <emphasis>required</emphasis>, but only used to install a module to allow
135 fetchmailconf to be run. That module is unmaintained and should not be
136 used.
137 </para>
138
139 <para>
140 <parameter>--enable-fallback=procmail</parameter>: This tells
141 <application>Fetchmail</application> to hand incoming mail to
142 <application>Procmail</application> for delivery, if the port 25 mail
143 server is not present or not responding.
144 </para>
145
146 </sect2>
147
148 <sect2 role="configuration">
149 <title>Configuring Fetchmail</title>
150
151 <sect3 id="fetchmail-config">
152 <title>Config Files</title>
153
154 <para>
155 <filename>~/.fetchmailrc</filename>
156 </para>
157
158 <indexterm zone="fetchmail fetchmail-config">
159 <primary sortas="e-AA.fetchmailrc">~/.fetchmailrc</primary>
160 </indexterm>
161
162 </sect3>
163
164 <sect3>
165 <title>Configuration Information</title>
166
167 <note>
168 <para>
169 If you are connecting to a mailserver that supports SSL/TLS-wrapped
170 or "implicit" mode on a dedicated port (default 993) you should use
171 <command>fetchmail --ssl</command> or add the option 'ssl' in an
172 rcfile.
173 </para>
174 </note>
175
176<screen><userinput>cat &gt; ~/.fetchmailrc &lt;&lt; "EOF"
177<literal>
178# The logfile needs to exist when fetchmail is invoked, otherwise it will
179# dump the details to the screen. As with all logs, you will need to rotate
180# or clear it from time to time.
181set logfile fetchmail.log
182set no bouncemail
183# You probably want to set your local username as the postmaster
184set postmaster <replaceable>&lt;username&gt;</replaceable>
185
186poll SERVERNAME :
187 user <replaceable>&lt;isp_username&gt;</replaceable> pass <replaceable>&lt;password&gt;</replaceable>;
188 mda "/usr/bin/procmail -f %F -d %T";</literal>
189EOF
190
191touch ~/fetchmail.log &amp;&amp;
192chmod -v 0600 ~/.fetchmailrc</userinput></screen>
193
194 <para>
195 This is an example configuration that should suffice for most people.
196 You can add as many users and servers as you need using the same syntax.
197 </para>
198
199 <para>
200 <command>man fetchmail</command>: Look for the section near the bottom
201 named <emphasis>CONFIGURATION EXAMPLES</emphasis>. It gives some quick
202 examples. There are countless other configuration options once you get
203 used to it.
204 </para>
205
206 <para>
207 If you expect to receive very little mail you can invoke fetchmail
208 when you wish to receive any incoming mail. More commonly, it is either
209 invoked in daemon mode with the <literal>-d</literal> option either on
210 the command line, or in <filename>.fetchmailrc</filename> (see 'DAEMON
211 MODE' in man fetchmailconf), or alternatively it is invoked from a
212 cron job.
213 </para>
214
215 </sect3>
216
217 </sect2>
218
219 <sect2 role="content">
220 <title>Contents</title>
221
222 <segmentedlist>
223 <segtitle>Installed Programs</segtitle>
224 <segtitle>Installed Libraries</segtitle>
225 <segtitle>Installed Directories</segtitle>
226
227 <seglistitem>
228 <seg>fetchmail and fetchmailconf</seg>
229 <seg>None</seg>
230 <seg>None</seg>
231 </seglistitem>
232 </segmentedlist>
233
234 <variablelist>
235 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
236 <?dbfo list-presentation="list"?>
237 <?dbhtml list-presentation="table"?>
238
239 <varlistentry id="fetchmail-prog">
240 <term><command>fetchmail</command></term>
241 <listitem>
242 <para>
243 when executed as a user, this will source
244 <filename>~/.fetchmailrc</filename> and download the appropriate
245 mail
246 </para>
247 <indexterm zone="fetchmail fetchmail-prog">
248 <primary sortas="b-fetchmail">fetchmail</primary>
249 </indexterm>
250 </listitem>
251 </varlistentry>
252
253 <varlistentry id="fetchmailconf">
254 <term><command>fetchmailconf</command></term>
255 <listitem>
256 <para>
257 is intended to assist you in setting up and editing a
258 <filename>~/.fetchmailrc</filename> configuration file, by using
259 a <application>Tk</application> GUI interface. It is written for
260 <application>Python</application> and the Tkinter module but is
261 labelled with a WARNING that it needs to be updated
262 for fetchmail 6.4's SSL options and other recent new options
263 </para>
264 <!-- keep this description commented but fetchmailconf
265 has been updated in the last months (June 2020). It can use
266 Python 3, with the help of the "past" module.
267 <para>
268 is an unmaintained GUI command to assist in creating a
269 <filename>~/.fetchmailrc</filename> configuration file and
270 should not be used.
271 </para>-->
272 <indexterm zone="fetchmail fetchmailconf">
273 <primary sortas="b-fetchmailconf">fetchmailconf</primary>
274 </indexterm>
275 </listitem>
276 </varlistentry>
277
278 </variablelist>
279
280 </sect2>
281
282</sect1>
Note: See TracBrowser for help on using the repository browser.