Mandrake Linux + Courier-IMAP + Postfix + LDAP + IMP + SpamAssassin Mini-HOWTO
From: tazza70 (tazza70_at_hotmail.com)
Date: 10/22/03
- Next message: Andrej Trobentar: "Re: XON/XOFF communication problem"
- Previous message: Peter T. Breuer: "Re: Buying new mobo/CPU"
- Next in thread: Noi: "Re: Mandrake Linux + Courier-IMAP + Postfix + LDAP + IMP + SpamAssassin Mini-HOWTO"
- Reply: Noi: "Re: Mandrake Linux + Courier-IMAP + Postfix + LDAP + IMP + SpamAssassin Mini-HOWTO"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: 22 Oct 2003 02:33:31 -0700
Hi all,
This is just a quick guide on my experiences in setting up
Courier-IMAP, Postfix, Open LDAP, IMP and SpamAssassin on Mandrake
Linux.
There are many HOWTO's out there, but all of the ones I found had one
sort of a problem or another. I spent quite a bit of time stuffing
around with bits and pieces so I hope this will save some time to
others.
I'll reference the sections in other HOWTO's that are relevant and
correct and provide details on what to do for other things.
-------------
Here are the various versions of software/packages used to get all of
this up and running:
Linux: Mandrake Linux release 9.1 (Bamboo) for i586
Postfix: postfix-2.0.6-1mdk
(Source: comes with Mandrake)
Courier:
courier-imap-ldap-2.1.2-1mdk
courier-imap-utils-2.1.2-1mdk
courier-imap-pop-2.1.2-1mdk
courier-imap-2.1.2-1mdk
maildirmake++-2.1.2-1mdk
(Source: *mandrake-mirror*/devel/contrib/RPMS)
LDAP:
openldap-clients-2.0.27-5.3mdk
openldap-servers-2.0.27-5.3mdk
openldap-guide-2.0.27-5.3mdk
openldap-back_sql-2.0.27-5.3mdk
libldap2-devel-2.0.27-5.3mdk
nss_ldap-207-1.1mdk
openldap-back_passwd-2.0.27-5.3mdk
pam_ldap-164-1.1mdk
openldap-migration-2.0.27-5.3mdk
openldap-2.0.27-5.3mdk
openldap-back_ldap-2.0.27-5.3mdk
libldap2-2.0.27-5.3mdk
apache2-mod_ldap-2.0.47-1.1mdk
openldap-back_dnssrv-2.0.27-5.3mdk
libltdl3-1.4.3-1mdk
(Source: comes with Mandrake - I downloaded updated packages using
RPMDrake)
Java:
j2re-1.4.2_01-fcs
j2sdk-1.4.2_01-fcs
(Source: java.sun.com - RPM packages available in download section for
J2SE)
Java Libraries:
oro-2.0.7-1jpp Sat 27
tyrex-1.0-3jpp
servletapi4-4.0.4-3jpp
antlr-jedit-2.7.2-2jpp
antlr-2.7.2-2jpp
jedit-rhmenu-4.2-0.pre5.1jpp
jedit-mdkmenu-4.2-0.pre5.1jpp
jedit-4.2-0.pre5.1jpp
gnu.regexp-1.1.4-5jpp
gnu.getopt-1.0.9-4jpp
aelfred-1.2-0.a.5jpp
jpackage-utils-1.5.27-1jpp
xml-commons-apis-1.0-0.b2.6jpp
xml-commons-1.0-0.b2.6jpp
regexp-1.2-14jpp
junitperf-1.8-2jpp
junit-3.8.1-3jpp
netcomponents-1.3.8-4jpp
struts-1.0.2-4jpp
ant-scripts-1.5.4-2jpp
ant-1.5.4-2jpp
xml-commons-which-1.0-0.b2.6jpp
xml-commons-resolver-1.0-2jpp
gnujaxp-scripts-1.0-0.beta1.7jpp
gnujaxp-1.0-0.beta1.7jpp
xalan-j2-2.5.1-1jpp
mx4j-1.1.1-5jpp
(Source: *mandrake-mirror*/devel/contrib/jpackage)
jdbc-stdext-2.0-1
jndi-provider-ldap-1.2.4-1
jndi-1.2.1-1
javamail-1.3-1
jaf-1.0.1-1
jta-1.0.1a-1
(Source: ftp.pbone.net/mirror/ftp.nest.pld-linux.org/test/i586)
JSP Server:
jakarta-commons-validator-1.0.2-2jpp
jakarta-commons-dbcp-1.0-4jpp
jakarta-commons-pool-1.0.1-5jpp
jakarta-commons-net-1.0.0-3jpp
jakarta-commons-modeler-1.0-6jpp
jakarta-commons-httpclient-2.0-3.rc1.1jpp
jakarta-commons-discovery-0.2-1jpp
jakarta-commons-digester-1.5-3jpp
jakarta-commons-cli-1.0-2jpp
jakarta-commons-beanutils-1.6.1-4jpp
jakarta-commons-logging-1.0.3-4jpp
jakarta-commons-lang-1.0.1-3jpp
jakarta-commons-fileupload-1.0-1jpp
jakarta-commons-daemon-1.0.cvs20030227-6jpp
jakarta-commons-collections-2.1-4jpp
jakarta-commons-codec-1.1-1jpp
tomcat4-webapps-4.1.24-12jpp
tomcat4-compat-4.1.24-12jpp
tomcat4-admin-webapps-4.1.24-12jpp
tomcat4-4.1.24-12jpp
(Source: *mandrake-mirror*/devel/contrib/jpackage)
Administration:
JAMM 0.95 - (Source: jamm.sourceforge.net)
Webmin 1.110 - (Source: comes with Mandrake + updates)
LDAP Browser\Editor 2.8.2 - (Source:
http://www.iit.edu/~gawojar/ldap/)
Webmail:
horde-2.2.4
turba-1.2.1
imp-3.2.2
(Source: www.horde.org)
SpamAssassin:
perl-Mail-SpamAssassin-2.60
spamassassin-2.60
spamassassin-tools-2.60
(Source: http://spamassassin.kluge.net/RPMS/)
-------------
Postfix:
Postfix was installed as a part of the Linux setup. It was originally
configured with standard mailboxes and some standard virtual
forwarding boxes through a "hash" type table. It was configured and
administered through Webmin. Quite a few changes were done here, but
since the box was running for a while as this, I can't trace these
back. I presume in any case that you can get Postfix up and running.
The changes to Postfix to integrate it with LDAP + Courier were taken
from the following guide:
http://jamm.sourceforge.net/howto/html/implementation.html#IMPL-POSTFIX-CONF
When it refers to UID (example given is 101) it talks about the
special user you need to create for virtual email. That user's home
directory is then used for storing emails. Once you create the user,
look up their user and group id in /etc/passwd and /etc/group
"VMAIL" user needs to be the sole owner of all of the files in their
directory and permissions should generally be 700
A further change is needed in postfix configuration. This one took me
a while to discover:
/etc/postfix/master.cf: (change the two lines so that they look like
below:)
virtual unix - n n - - virtual
maildrop unix - n n - - pipe
This was found in: http://devel.hzqbbc.com/mini-howto.html
This solves the chroot problem and gets rid of the following error
when postfix tries to deliver email to the virtual user:
"maildir delivery failed: create
/home/vmail/domains/somedomain.com/username/tmp/***.filename:
# Permission denied"
Remember to also comment-out any other potentially conflicting
configuration options from Postfix in main.cf, eg another
"virtual_alias_maps"
-----------
LDAP:
LDAP was used as the back-end database for virtual users. Postfix, as
supplied by Mandrake, is already pre-compiled for it.
Packages were installed and downloaded without any problems.
The following guide was followed for setting it up:
http://jamm.sourceforge.net/howto/html/implementation.html#IMPL-LDAP
No other changes were needed.
LDAP Browser/Editor was very useful here to see what was going on.
The following settings were used for connection:
hostname: (whatever)
BaseDN: dc=somedomain,dc=com (whatever you configured you LDAP with)
UserDN: cn=Manager
Password: (whatever)
In some schemas that need to be added to LDAP, as mentioned below,
there are some "conflicts" with other schema definitions - ie. same
field types defined in two places.
I can't remember now which ones and where, but when starting LDAP, the
exact errors will be given. Just open up the offending files and
comment-out the appropriate sections.
-----------
Courier-IMAP:
Courier was selected because it is supposed to be easier to install
and because it is supposed to be working better with LDAP than Cyrus.
I can't confirm either one, but anyway...
The packages were downloaded and installed without any problems.
The following guide provides good background on things, but it wasn't
specifically followed:
http://www.inter7.com/courierimap/INSTALL.html
The following guide was followed:
http://jamm.sourceforge.net/howto/html/implementation.html#IMPL-COURIER
Few other customisations were done in /etc/courier/imapd file but the
file is pretty self-explanatory.
KMail and MS Outlook and Outlook Express were used to test IMAP.
The following provides a good general information on configuring
clients:
http://www.inter7.com/courierimap/README.imap.html
Eudora and Mozilla Mail were also tested - ok.
------------
Java:
Java RE and SDK were downloaded from Sun. I presume only SDK is
required but I was stuffing around with Java libraries for a while so
I just installed both.
JAVA_HOME variable was set in /etc/profile and pointed to Java SDK
directory:
/usr/java/j2sdk1.4.2_01
------------
Java Libraries:
This was done pretty much on a trial-and-error basis by looking at the
dependencies required for installing Tomcat 4 rpm packages.
A lot of these are not needed probably and could be removed, but...
The ones that are 100% needed and don't come in Mandrake's java
directory are the ones I managed to find on PBONE ftp.
Anyway, just download all of them and install with "rpm -Uvh *" and
they will be installed in the correct sequence for the dependencies.
Then, you must make few symbolic links:
ln -s /usr/java/j2sdk1.4.2_01/bin/jar /usr/bin/jar
ln -s /usr/share/java/jdbc2_0-stdext.jar
/usr/share/java/jdbc-stdext.jar
ln -s /usr/share/java/mail.jar /usr/share/java/javamail.jar
ln -s /usr/share/java/activation.jar /usr/share/java/jaf.jar
--------------
JSP:
Tomcat and Jakarta packages were downloaded from Mandrake's java
directory.
Jakarta was installed first and without any problems once all
dependencies were in place.
Tomcat 4 was complaining about few missing packages, even though they
were installed (hence some of those symbolic links above). So, it had
to be installed with --nodeps option.
If it is still complaining during installation/startup, then you
haven't provided the symbolic links, or I have forgotten another one
that I did... :-)
Tomcat was tested by going to http://localhost:8080/ and
http://localhost:8080/examples/
--------------
Administration:
JAMM was used as the administration package for LDAP and virtual
domains. Hence the guide was primarily the JAMM howto.
JAMM was downloaded from its website and unpacked into a temp
directory.
Now, I ran into trouble when I tried to install JAMM into a separate
directory in tomcat4 web server. I don't know if that's a bug with
JAMM or with my configuration. So, I had to install JAMM into the root
directory of the tomcat server. I'm not using tomcat/JSP for anything
else, so it's not a problem for me, but I'm sure if you need to, it
can be fixed properly if you try.
In any case, backup the ROOT directory first and then do this.
So:
cp jamm-0.9.5.war /var/lib/tomcat4/webapps/ROOT
jar -xf jamm-0.9.1.war
cd WEB-INF
cp jamm.properties.dist jamm.properties
Edit the jamm.properties file and change the following:
jamm.ldap.search_base = o=hosting,dc=myhosting,dc=example
jamm.ldap.root_dn = cn=Manager,dc=myhosting,dc=example
(This is from: http://jamm.sourceforge.net/howto/html/implementation.html#IMPL-JAMM)
You should now be able to go to http://localhost:8080/ and set
everything up.
The following is a good guide (obviously)
http://jamm.sourceforge.net/howto/html/admin.html
but it doesn't show all options that you actually have.
Once you setup a domain and users/aliases, you should send an email to
them.
Postfix will then automatically create the structures in
/home/vmail/domains/ for the domain and the users.
You should keep a watch on LDAP through the LDAP browser on what's
happening here and the Postfix and LDAP log files to make sure
everything is ok.
-----------------
Webmail / IMP:
So, I thought after all the trouble with the server components, IMP
will be quick to get going. Not!
I downloaded the files and followed the included docs/INSTALL for each
to set it up. Pretty straight forward.
I needed to install few additional php modules (included with
Mandrake) and run "pear" to download some php libraries. I just
followed instructions in the INSTALL files and didn't run into any
problems.
Problems occurred once I tried to log in: all sorts of wonderful LDAP
errors. Horde documentation was not very helpful in terms of LDAP
support and neither was Google.
After debugging LDAP and horde settings for the whole day, here are
the correct settings that should get it done (based on other settings
and installations above). These are the main settings, other settings
are either straight forward or explained (correctly) in INSTALL.
horde/imp/config/servers.php:
$servers['imap'] = array(
'name' => 'IMAP Server',
'server' => 'server.host.name',
'protocol' => 'imap/notls',
'port' => 143,
'folders' => '',
'namespace' => '',
'maildomain' => 'domain.com',
'smtphost' => 'server.host.name',
'realm' => '',
'preferred' => ''
horde/config/horde.php:
$all_apache_headers = apache_request_headers();
$mail_domain = substr($all_apache_headers[Host],
strpos($all_apache_headers[Host], ".")+1);
$conf['prefs']['driver'] = 'ldap';
$conf['prefs']['params']['hostspec'] = 'localhost';
$conf['prefs']['params']['port'] = '389';
$conf['prefs']['params']['basedn'] = 'jvd=' . $mail_domain .
',o=hosting,dc=domain,dc=name';
$conf['prefs']['params']['uid'] = 'mail';
/etc/openldap/slapd.access.conf:
access to dn="o=hosting,dc=somedomain,dc=com"
attr=impPrefs
by self write
access to dn="o=hosting,dc=somedomain,dc=com"
attr=hordePrefs
by self write
(Note: add these two before the very last directive)
/etc/openldap/slapd.conf:
schemacheck off
(Note: I'm not sure if this has potential to screw up other things,
but... Not doing this causes "entry failed schema check". It could be
a bug in horde.schema file or something else. I'm not sure).
-----------------
Webmail / Turba:
This one was a bit faster. Again, follow the config/INSTALL as much as
you can, then make the following changes:
config/sources.php
For personal address book, change the following lines:
'search' => array(
'name',
'email',
'businesscategory',
'title',
'homephone',
'workphone',
'cellphone',
'homeaddress'
Into:
'search' => array(
'name',
'email',
'businesscategory',
'title',
'homePhone',
'workPhone',
'cellPhone',
'homeAddress'
(Repeat the same thing for other occurrences of "workphone",
"homeaddress", "homephone", "cellphone")
Similarly, in attributes.php add:
$attributes['businesscategory'] = array(
'type' => 'multiline',
'desc' => _("Business Category")
);
$attributes['companyaddress'] = array(
'type' => 'multiline',
'desc' => _("Company Address")
);
$attributes['zip'] = array(
'type' => 'multiline',
'desc' => _("Zip")
);
$attributes['pgpPublicKey'] = array(
'type' => 'multiline',
'desc' => _("PGP Public Key")
);
Next, in sources.php, I commented out (with /* */) all entries except
"Local address book in LDAP" (shared) and "Personal addressbook".
For public addressbook, I created a new O at top level in LDAP
directory called "addressbook". To make life fun, I also created a new
CN user at top level called "turbaadmin" and created a password for
it.
In slapd.access.conf, I added the following:
access to dn="o=hosting,dc=somedomain,dc=com"
by self write
access to dn="o=addressbook,dc=somedomain,dc=com"
by dn.base="cn=turbaadmin,dc=somedomain,dc=com" write
(The first one should be made a bit tighter to allow only the changes
under personal_addressbook)
Then in sources.php:
$cfgSources['localldap'] = array(
'title' => 'Shared Directory',
'type' => 'ldap',
'params' => array(
'server' => 'localhost',
'port' => 389,
'root' => 'o=addressbook,dc=somedomain,dc=com',
'bind_dn' => 'cn=turbaadmin,dc=somedomain,dc=come',
'bind_password' => 'password',
'dn' => array('cn'),
'objectclass' => 'person',
'version' => 3
),
For personal addressbook, to get it working, I made some changes and
added a OU called "personall_addressbook" in LDAP underneath each
user.
So, in sources.php:
$mail_domain = substr($HTTP_HOST, strpos($HTTP_HOST, ".")+1);
$basedn = 'dc=somedomain, dc=com';
$cfgSources['personal_ldap'] = array(
'title' => 'My Addressbook',
'type' => 'ldap',
'params' => array(
'server' => 'localhost',
'root' => 'ou=personal_addressbook,mail=' . $uid . '@' .
$mail_domain . ',jvd=' . $mail_domain . ',o=hosting,' . $basedn,
'bind_dn' => 'mail=' . $uid . '@' . $mail_domain . ',jvd=' .
$mail_domain . ',o=hosting,' . $basedn,
----------------------------
Webmail (additional mods):
I made few small modifications to IMP.
First thing I did was change the login script a bit. I have several
domains and I didn't want to type in the @somedomain.com when loging
in every time for different domains. So, I modified the login script
to automatically insert the domain name depending on which domain I
accessed.
/imp/templates/login/login.inc:
Original line:
<td align="left"><input type="text" tabindex="1" name="imapuser"
value="<?php echo htmlspecialchars (Horde::getFormData('imapuser',
getenv('REMOTE_USER'))) ?>" /></td>
New line:
<td align="left"><input type="text" tabindex="1" name="imapuser"
value="@<?php print substr($HTTP_HOST, strpos($HTTP_HOST, ".")+1); ?>"
/></td>
---
The second thing I replaced was the look of mailboxes. I wanted each
alternate line in the mailbox to be of a different colour - this
really helps when looking at a larger mailbox.
/imp/templates/mailbox/message_summaries.inc
Replace first line with:
<?
if(isset($message_number)) {
$message_number++;
} else {
$message_number=1;
}
if ($message_number%2 == 0) {
echo "<tr class=\"$bg\"
onmouseover=\"javascript:style.backgroundColor='";
echo $css['.' . $bg . '-hi']['background-color'];
echo "'\" onmouseout=\"javascript:style.backgroundColor='";
echo $css['.' . $bg]['background-color'];
echo "'\">";
} elseif ($message_number%2 == 1) {
echo "<tr class=\"$bg" . "-sec" . "\"
onmouseover=\"javascript:style.backgroundColor='";
echo $css['.' . $bg . '-hi']['background-color'];
echo "'\" onmouseout=\"javascript:style.backgroundColor='";
echo $css['.' . $bg . '-sec']['background-color'];
echo "' \">";
}
?>
/imp/config/html.conf
Replace the appropriate lines with the following:
$css['.deleted']['background-color'] = '#999999';
$css['.deleted-hi']['background-color'] = '#777777';
$css['.deleted-sec']['background-color'] = '#bbbbbb';
$css['.important']['background-color'] = '#ffe1e1';
$css['.important-hi']['background-color'] = '#ffaaaa';
$css['.important-sec']['background-color'] = '#ffcccc';
$css['.unseen']['background-color'] = '#f4f4ff';
$css['.unseen-hi']['background-color'] = '#ccccff';
$css['.unseen-sec']['background-color'] = '#e8e8ff';
$css['.answered']['background-color'] = '#e6ffe6';
$css['.answered-hi']['background-color'] = '#99ee99';
$css['.answered-sec']['background-color'] = '#ccffcc';
$css['.text-hi']['background-color'] = '#e5e5e5';
$css['.text-sec']['background-color'] = '#f6f6f6';
----
So, to access it all:
https://webmail.somedomain.com/imp/
To drop the /imp/ at the end, I used a frame to replace index.php in
the main horde directory:
<frameset rows="100%" framespacing="0" border="0" frameborder="0">
<frame name="main" src="/imp/index.php" marginwidth="0"
marginheight="0" scrolling="auto" noresize>
</frameset>
----
You may also want to setup all of this to go through SSL.
I can't go into too many details, but, on Mandrake 9.1, you need to
look to configure the following files (my setup is based on single IP
address and multiple name-based virtual hosts):
/etc/httpd/conf.d/41_mod_ssl.default-vhost.conf:
Replace:
<VirtualHost _default_:443>
With:
<VirtualHost 123.123.123.123:443> (whatever your IP address is)
/etc/httpd/conf/vhosts/Vhosts.conf:
Replace:
NameVirtualHost 123.123.123.123
With
NameVirtualHost 123.123.123.123:80
And all subsequent <VirtualHost 123.123.123.123> with <VirtualHost
123.123.123.123:80>
If you want to get sophisticated, you can setup separate certificates
for each virtual domain as well.
The following commands are used to create certificates:
openssl req -new -out server.csr (when asked for "Common Name", enter
the full domain name of the server - eg. webmail.somedomain.com)
openssl rsa -in privkey.pem -out server.key
openssl x509 -in server.csr -out server.crt -req -signkey server.key
-days 365
openssl x509 -in server.crt -out server.der.crt -outform DER
The certificates are normally stored in /etc/ssl/apache
----------------------------
Webmail (additional notes):
Initially I got it going by using the actual domain name first in all
LDAP settings (when referencing usernames etc). This made it
inflexible in that it could only really work for one website.
Only once it was working did I try to change it to make it flexible
for multiple virtual domains. So, if all of that $mail_domain doesn't
work for you (php version or something else - I had some problems
myself), try doing it without the mail_domain stuff and enter the full
proper domain name that you require.
The other way to get it going for multiple virtual domains (with this
sort of LDAP structure) is to have multiple instances of IMP for each
domain - ok for 2-3 domains but could be a problem for lots of
domains.
The way it's setup above, all I need to do is to create
webmail.hosteddomain.com for each hosted domain and add it as a
ServerAlias (webmail.hosteddomain.com:443) in the Apache SSL config -
the scripts then take care of the rest.
-------------------
SpamAssassin:
Before installation of RPM's, I needed to install few perl modules:
perl -MCPAN -e 'install Pod::Usage'
perl -MCPAN -e 'install HTML::Parser'
perl -MCPAN -e 'install DB_File'
perl -MCPAN -e 'install Net::DNS'
perl -MCPAN -e 'install Net::Ident'
perl -MCPAN -e 'install Digest::SHA1'
(I actually had to manually download them and install them - CPAN was
giving me some errors - "Perl Modules" for Webmin
(http://zeck.netliberte.org) was very helpful here)
I had to use --nodeps to install perl-Mail-SpamAssassin-2.60 because
it was still complaining about two of the modules above. The other two
RPM's installed smoothly.
I used a web-based configuration tool
(http://www.yrex.com/spam/spamconfig.php) to produce the initial
configuration file for /etc/mail/spamassassin/local.cf
I followed this guide for setting up SpamAssassin with Postfix:
http://www.ironlizard.org/docs/postfix_sa.php
I used the "Inline Filtering" method where all incoming mail is
scanned by SpamAssassin.
The following SpamAssassin page explains all of the settings:
http://www.spamassassin.org/doc/Mail_SpamAssassin_Conf.html
After changes to the /etc/mail/spamassassin/local.cf, SpamAssassin
needs to be restarted (/etc/rc.d/init.d/spamassassin restart).
I've setup Bayesian filtering and used sa-learn to train it. You need
more than 200 messages each of both the "spam" and "ham" samples for
Bayesian filtering to work. I've read a review recently that suggested
that you really need 1000+ samples of spam for it to become 100%
accurate.
It is probably helpful to create a shared IMAP mailbox that can be
used to store Spam messages for training for all users. Have a look at
instructions in "man maildirmake++" on how to do this.
The default installation and configuration of SpamAssassin didn't look
for the Bayes database in the right place and it doesn't want to run
as root. So, I've created a spamassassin user and moved the
/root/.spamassassin/ folder into /home/spamassassin/
Then, I added the following line to /etc/mail/spamassassin/local.cf:
bayes_path /home/spamassassin/.spamassassin/bayes
You then have to modify the init file so that spamassassin runs
properly. Change the appropriate line in /etc/rc.d/init.d/spamassassin
to look like:
SPAMDOPTIONS="-d -u spamassassin -c -a -m5 -H"
Restart SpamAssassin after the changes above.
You can verify that the SpamAssassin is using the Bayes database
properly by modifying the line above to:
SPAMDOPTIONS="-D -d -u spamassassin -c -a -m5 -H"
This runs the daemon in a debug mode and you can then have a look at
/var/log/mail/info for detailed runtime information.
You can now filter out the messages tagged as spam using your
favourite email client.
---------------------
Final Comments:
So, we ended up with the following setup:
1) OpenLDAP database with the user information and addressbook
2) Postfix mail server using virtual domains and virtual users in LDAP
database
3) Courier IMAP server using virtual users in LDAP database
4) IMP/HORDE/TURBA as webmail IMAP client and LDAP addressbook
5) SpamAssassin checking all incoming mail
If you have any other external email accounts, you can download them
using fetchmail and forward them onto a specified local user. If you
have a Hotmail account, you can use gotmail to download the email from
there.
Again, I hope this information is helpful. Please drop me a note if
anything major is missing, just note that a lot of this is probably
Mandrake Linux specific and may not work on your distribution.
- Next message: Andrej Trobentar: "Re: XON/XOFF communication problem"
- Previous message: Peter T. Breuer: "Re: Buying new mobo/CPU"
- Next in thread: Noi: "Re: Mandrake Linux + Courier-IMAP + Postfix + LDAP + IMP + SpamAssassin Mini-HOWTO"
- Reply: Noi: "Re: Mandrake Linux + Courier-IMAP + Postfix + LDAP + IMP + SpamAssassin Mini-HOWTO"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|