Met een IMAP server kun je je email centraal opslaan en met meerdere apparaten tegelijkertijd benaderen. Ik leg uit hoe je dit gratis kunt opzetten.
De meeste mensen hebben tegenwoordig meerdere computers in huis. Nu is het handig als je met elke computer je email centraal kunt benaderen. Een mogelijk oplossing is dat je de file(s) waarin de email staat op een centraal plaats op je netwerk opslaat. Vervolgens laat je alle email clients naar deze plaats verwijzen. Dit werkt in de meeste gevallen prima, maar Outlook kan hiermee soms problemen krijgen. Indien meerdere computers dezelfde mailbox tegelijk benaderen gaat het vaak mis (corruptie, locks, etc.). Een goede oplossing voor dit probleem is om gebruik te maken van een IMAP server voor je email.
Wat is IMAP?
Het mail protocol waar de meeste mensen bekend mee zijn is POP. Het is lange tijd de industrie standaard geweest voor het zenden en ontvangen van email. Een client connect naar de POP server en vraagt of hij nog emails voor hem heeft. Als het antwoord ‘Ja’ is dan ontvangt de client een lijst van messages en download deze. Optioneel worden de berichten dan van de POP server verwijderd of blijven hierop staan.
IMAP is een alternatief voor POP met veel voordelen. De meest belangrijke is het feit dat copies van de berichten centraal op de server blijven staan, waardoor ze overal benaderd kunnen worden. Dit in tegenstelling tot POP waarbij de berichten gefragmenteerd en verborgen in verschillende niet-synchrone en niet-centrale desktop mailboxes staan. Bij IMAP communiceert de mail client met de gecentraliseerde berichten op de IMAP Server. Dit betekent dat de mailboxen hetzelfde zijn op elke computer die deze benaderd. De status (read/unread/replied) van emails worden ook bijgehouden op de IMAP Server.
Daar je voor IMAP de berichten voor lange tijd op de server houdt, prefereren bijna alle populaire email leveranciers POP. Hierbij hoeven ze de berichten niet voor lange tijd permanent op te slaan. Verder hebben ze zelfs een maximum aan hoe groot de POP mailbox kan zijn (meestal 20 MB). Als je zelf toch al een server draait kun je handig gebruik maken van de voordelen van IMAP.
Debian Webserver
Zoals je in een vorige blog hebt kunt lezen heb ik nu een aparte Debian server waarop mijn blog draait. Je kunt natuurlijk nog veel meer met zo’n Debian Server. Ik besloot dan ook om hierop een IMAP Server te gaan draaien die benaderd kan worden door mijn Outlook software op diverse computers in mijn netwerk.
In principe heb je hiervoor maar 3 stukken software nodig:
- Dovecot: dit is de IMAP Server software
- Fetchmail: deze ontvangt de email van diverse mailboxen en slaat deze in de IMAP Server op
- Procmail: deze stuurt de ontvangen email door
Dovecot
Hierbij heb je de volgende stappen nodig:
Installeer Dovecot met het volgende commando
apt-get install dovecot-imapd
Configureer Dovecot in de configuratie-file ‘/etc/dovecot/dovecot.conf’.
Zorg dat in elk geval de volgende regels aanwezig zijn:
protocols = imap disable_plaintext_auth = no mail_location = /home/%u/mail
Je mail zal nu te vinden zijn in de ‘home/<user-name>/mail’ directory.
Restart Dovecot met het volgende commando:
/etc/init.d/dovecot restart
Fetchmail
Installeer Fetchmail met het volgende commando
apt-get install fetchmail
Creeer een configuratie-file in ‘/etc/fetchmailrc’ met de volgende inhoud (verander pop3 naar believen):
# /etc/fetchmailrc for system-wide daemon mode # This file must be chmod 600, owner root set daemon 60 # poll every 60 seconds set syslog # log through syslog facility set postmaster henri set no bouncemail # avoid loss on 4xx errors ######################################################### # Hosts to pool # ######################################################### # Set antispam to -1, since it is far safer to use that together # no bouncemail defaults: timeout 300 antispam -1 batchlimit 100 poll pop.wxs.nl proto POP3 user "<pop3 user-name>" there with password "<pop3 password>" is <user-name> fetchall mda "/usr/bin/procmail -d %T" poll pop3.live.com proto POP3 port 995 user "<pop3 user-name>" there with password "<pop3 password>" is <user-name> fetchall options ssl mda "/usr/bin/procmail -d %T"
Zet enkele eigenschappen voor deze configuratie-file:
chmod 600 /etc/fetchmailrc chown root /etc/fetchmailrc
Zorg ervoor dat Fetchmail opstart als een Daemon in de configuratie-file ‘/etc/default/fetchmail’ door het veranderen van de waarde voor ‘START_DAEMON’ naar ‘yes’.
Start vervolgens Fetchmail op met het commando:
/etc/init.d/fetchmail start
Om te testen of Fetchmail goed werkt kun je het volgende commando uitvoeren:
fetchmail --daemon 0 -v -f /etc/fetchmailrc
De melding ‘fetchmail: WARNING: Running as root is discouraged’ die je hierbij krijgt is niet erg.
Procmail
Installeer Procmail met het volgende commando
apt-get install procmail
Outlook clients
Nu moet je nog je Outlook clients configureren dat ze gebruik maken van de nieuwe IMAP Server.
Creëer hiervoor een nieuw e-mail account en zorg dat je bij de Internet E-mail settings je het ‘Account Type’ op IMAP zet.
Tips en Tricks
Om te controleren of je Fetchmail goed werkt kun je de logfile van mail inspecteren met het volgende commando:
tail -F /var/log/mail.log
Je zult merken dat met oudere Outlook clients (2003 en 2007) je emails niet meteen kunt verwijderen. Indien je dit probeert zul je zien dat de message header grijs wordt met een streep erdoor heen. Pas als je in het Edit menu een van de ‘Purge…’ commando’s kiest wordt de email daadwerkelijk verwijderd. Dit heeft te maken met hoe Outlook met IMAP omgaat. In Outlook 2010 is het gebruik van IMAP servers sterk verbeterd. Zo zal de email die je verwijderd weer netjes in je ‘Deleted Items’ folder terecht komen.