[exim] Authentication setup question

Top Page
Delete this message
Reply to this message
Author: Rob Morris
Date:  
To: exim-users
Subject: [exim] Authentication setup question
Hey all, I'm setting up my first email server, loving Exim, and learning
a ton. I've gotten a surprising amount completed in my quest to set up
my server, but I'm having trouble configuring SMTP authentication.
Would LOVE some help, I'm not sure where to go next to fix this issue...

Context: I have multiple web apps that manage a set of config files for
multiple virtual domains.

Right now, I'm using PLAIN/LOGIN auth methods only, no SSL (until I get
it right without that added layer).

Here's my authenticators section:

PLAIN:
  driver                     = plaintext
  server_set_id         = $auth2
  server_prompts     = :
  server_condition    = {if 
exists{/var/mail/sites/${domain:${2}}/.accounts}\
                                  {if 
crypteq{$3}{\{md5\}${lookup{$2}lsearch{/var/mail/sites/${domain:${2}}/.accounts}}}{1}{0}}\
                                  {false}}


(LOGIN: is virually identical, obviously...)

Here's the file this is authenticating against:

bob@???:<plain MD5 hash of pwd hex encoded here>

And finally, the error I'm receiving when attempting to authenticate
from Thunderbird:

2009-02-03 16:53:12 PLAIN authenticator failed for
cpe-076-182-088-055.nc.res.rr.com ([10.21.200.2]) [76.182.88.55]: 435
Unable to authenticate at present (set_id=bob@???):
{if exists{/var/mail/sites/irongazeconsulting.com/.accounts}{if
crypteq{monkey}{{md5}d0763edaa9d9bd2a9516280e9044d885}{1}{0}}{false}}

In english, I'm trying to write my server_condition to be: If there's an
accounts file, look up the MD5 hash for the given account and compare it
to the hash of the password the user sent.

It looks like all the string expansions are working correctly, so I'm
guessing I have some formatting error, or a conceptual issue that I
haven't identified. Any and all help massively appreciated!