The Fetchmail package contains a mail retrieval program. It retrieves mail from remote mail servers and forwards it to the local (client) machine's delivery system, so it can then be read by normal mail user agents.
This package is known to build and work properly using an LFS-9.1 platform.
Download (HTTP): https://downloads.sourceforge.net/fetchmail/fetchmail-6.4.2.tar.xz
Download MD5 sum: 039b49a4f41f8544a51d82d2f4599dfc
Download size: 1.3 MB
Estimated disk space required: 16 MB
Estimated build time: 0.1 SBU
a local MDA (Procmail-3.22)
MIT Kerberos V5-1.18, libgssapi
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/fetchmail
Create a dedicated user for the fetchmail program. Issue the
following commands as the root
user:
useradd -c "Fetchmail User" -d /dev/null -g nogroup \ -s /bin/false -u 38 fetchmail
Install Fetchmail by running the following commands:
PYTHON=python3 \ ./configure --prefix=/usr \ --enable-fallback=procmail && make
To test the results, issue: make check.
Now, as the root
user:
make install && chown -v fetchmail:nogroup /usr/bin/fetchmail
PYTHON=python3
: a version
of Python is required, but
only used to install a module to allow fetchmailconf to be run.
That module is unmaintained and should not be used.
--enable-fallback=procmail
:
This tells Fetchmail to hand
incoming mail to Procmail for
delivery, if the port 25 mail server is not present or not
responding.
cat > ~/.fetchmailrc << "EOF"
# The logfile needs to exist when fetchmail is invoked, otherwise it will
# dump the details to the screen. As with all logs, you will need to rotate
# or clear it from time to time.
set logfile fetchmail.log
set no bouncemail
# You probably want to set your local username as the postmaster
set postmaster <username>
poll SERVERNAME :
user <isp_username>
pass <password>
;
mda "/usr/bin/procmail -f %F -d %T";
EOF
touch ~/fetchmail.log &&
chmod -v 0600 ~/.fetchmailrc
This is an example configuration that should suffice for most people. You can add as many users and servers as you need using the same syntax.
man fetchmail: Look for the section near the bottom named CONFIGURATION EXAMPLES. It gives some quick examples. There are countless other configuration options once you get used to it.
If you expect to receive very little mail you can invoke
fetchmail when you wish to receive any incoming mail. More
commonly, it is either invoked in daemon mode with the
-d
option either on the command
line, or in .fetchmailrc
(see
'DAEMON MODE' in man fetchmailconf), or alternatively it is
invoked from a cron job.
Last updated on 2020-02-17 15:32:53 -0800