<?xml version="1.0"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
>
  <channel>
    <title>QA Site</title>
    <link>http://spikef2163i5.cabbycentral.com/</link>
    <description>A blog by spikef2163i5</description>
    <language>de</language>    <item>
      <title>New mailserver: exim + dovecot</title>
      <link>http://spikef2163i5.cabbycentral.com/2008/09/14/new-mailserver-exim-dovecot.html</link>
      <description>I set up exim + dovecot on behalf of qa-site.  I&#8217;m pretty happy with the results so far.  Installation was a snap, as well as configuration was practically pain free (thanks in part to google as well as this mini howto on behalf of SMTP auth.)
I created SSL keys on behalf of both exim as well as dovecot (that are practically identical) using this command:
openssl req -x509 -newkey rsa:1024 -keyout exim.key -out exim.crt -days 365 -nodes
openssl req -x509 -newkey rsa:1024 -keyout dovecot.key -out dovecot.crt -days 365 -nodes
and then edited the configuration files to point to them:
exim.conf:
tls_certificate = /usr/share/ssl/certs/exim.crt
tls_privatekey = /usr/share/ssl/private/exim.key
dovecot.conf:
ssl_cert_file = /usr/share/ssl/certs/dovecot.crt
ssl_key_file = /usr/share/ssl/private/dovecot.key
in exim.conf, I also made the following changes:
primary_hostname = qa-site.com #this would have used `uname -n` by default

uncommented:
auth_advertise_hosts = ${if eq {$tls_cipher}{}{}{*}}
and commented:
#auth_advertise_hosts = 
and then added:
plain:
driver = plaintext
public_name = PLAIN
server_prompts = :
server_set_id = $2
server_condition = &#8220;${if pam{$2:$3}{1}{0}}&#8221;
login:
driver = plaintext
public_name = LOGIN
server_prompts = &#8220;Username:: : Password::&#8221;
server_set_id = $1
server_condition = &#8220;${if pam{$1:$2}{1}{0}}&#8221;

in addition, to utilize maidir, I edited exim.conf to include:

 local_delivery:
driver = appendfile
# file = /var/mail/$local_part
delivery_date_add
envelope_to_add
return_path_add
group = mail
mode = 0660
maildir_format = true
directory = /home/${local_part}/Maildir
create_directory = true
check_string = &#8220;&#8221;
escape_string = &#8220;&#8221;
in dovecot, I just had to set:
mail_location = maildir:~/Maildir
I created a .muttrc file to read my Maildir:
set mbox_type=Maildir
set folder=&#8221;~/Maildir&#8221;
set mask=&#8221;!^\.[^.]&#8220;
set mbox=&#8221;~/Maildir&#8221;
set record=&#8221;+.Sent&#8221;
set postponed=&#8221;+.Drafts&#8221;
set spoolfile=&#8221;~/Maildir&#8221;
I now have working TLS with SMTP auth, POP3 as well as IMAP access through remote thundirbird/outlook as well as local mutt clients.  They both utilize PAM system-auth by default (exim needed read access to /etc/shadow.)
The next steps are to set up procmail to utilize spamassassin as well as clamav to filter incoming mail, as well as set up a webmail client.  I mentioned on my spikef2163i5 blog that I&#8217;m looking on behalf of webmail application recommendations.  I&#8217;m leaning towards v-webmail.
One last thing shall be to set up virtual domains, so that, on behalf of example, cuencatravel.qa-site.com can have it&#8217;s posses email setup.
</description>
      <pubDate>Sun, 14 Sep 2008 19:07:58 -0400</pubDate>
      <dc:creator>spikef2163i5</dc:creator>
    </item></channel></rss>