Simple mail server with webmail
Simple mail server by using postfix MTA, dovecot IMAP + SASL and SquirrelMail webmail. This guide is for getting basic mail server working in small amount of time. You can always add more features later.
Postfix MTA
Remove mail-mta/ssmtp, because it blocks Postfix:
root # emerge --ask -C ssmtpInstall mail-mta/postfix. Enable dovecot-sasl, ipv6, pam and ssl USE flags. See also the Postfix article.
root # emerge --ask postfixConfigure Postfix.
# basic config myhostname = example.com mydomain = example.com myorigin = example.com inet_interfaces = all mynetworks_style = host mydestination = $myhostname, localhost, $mydomain, mail.$mydomain, www.$mydomain home_mailbox = .maildir/ # sasl config smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth smtpd_sasl_auth_enable = yes smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
Edit aliases to redirect root mails to webmaster:
... root: webmaster ...
Generate aliases database:
root # newaliasesRedirect root mails to webmaster:
... webmaster@localhost ...
Check for errors:
root # postfix checkStart Postfix:
root # /etc/init.d/postfix startCheck /var/log/mail.log for errors:
root # cat /var/log/mail.logdovecot IMAP, POP & SASL
Install net-mail/dovecot. Enable USE flags : bzip2 ipv6 maildir pam ssl zlib
root # emerge --ask dovecotConfigure dovecot:
protocols = imap pop3
# sasl config
service auth {
unix_listener /var/spool/postfix/private/auth {
mode = 0660
user = postfix
group = postfix
}
}
Start dovecot:
root # /etc/init.d/dovecot startSquirrelMail webmail
Change dir to webserver root:
user $ cd /home/webmaster/htdocsUnpack squirrelmail:
user $ tar xjf squirrelmail-webmail-1.4.22.tar.bz2Configure squirrelmail:
user $ cd squirrelmail-webmail-1.4.22/config
user $ cp config_default.php config.php$data_dir = '/home/webmaster/.squirrelmail/data/'; $attachment_dir = '/home/webmaster/.squirrelmail/attach/'; $domain = 'example.com';
Create data dirs and set permissions:
user $ mkdir -p /home/webmaster/.squirrelmail/data/
user $ mkdir -p /home/webmaster/.squirrelmail/attach/root # chown -R webmaster:lighttpd /home/webmaster/.squirrelmail/user $ chmod -R 770 /home/webmaster/.squirrelmail/Debug squirrelmail by opening url: http://example.com/squirrelmail-webmail-1.4.22/src/configtest.php
You can access webmail by opening url: http://example.com/squirrelmail-webmail-1.4.22/. Everything should be working now.