[exim] Issue with Virtual Users

Top Page
Delete this message
Reply to this message
Author: Brian Rudy
Date:  
To: exim-users
Subject: [exim] Issue with Virtual Users
Hello all,

I am in the process of moving all of my services off of an old CentOS
machine onto a newer one that has much more horsepower however, I'm
beating my head against the wall with an issue with exim.

The "old" machine was running Exim Ver. 4.63 The new one is running
version 4.84.

I have virtual users (not a virtual domain, actually email users that
are NOT users to the machine itself) and have mailman configured but
commented out (that hasn't been installed on the new machine yet. That
will come).

I copied over the working config file and made the appropriate changes
(changed the hostname and commented out all of the stuff pertaining to
mailman).

I am also running dovecot to deliver the email to the clients.

I am able to receive email destined for all users (both general and
virtual) but only general users (not virtual users) can send emails. I
get the following error when a virtual user tries to send email:
2015-02-09 09:32:01 login_server authenticator failed for
([172.26.176.25]) [8.37.102.33]: 535 Incorrect authentication data
(set_id=xxxxx)

:Please note that the xxxxx replaces the actual userid of the virtual user:

This is the authenticator that I'm using to do the authentication of
both general and virtual users:

login_server:

# This authenticator implements the LOGIN authentication mechanism.
# Since the password is transmitted essentially as clear text, a user
# can only authenticate if the session is encrypted using TLS. The
# user name and password is first checked against /etc/exim/vuserspwd,
# then against the system database using PAM (in that order).

   driver                     = plaintext
   public_name                = LOGIN
   server_advertise_condition = ${if def:tls_cipher }
   server_prompts             = <| Username: | Password:
   server_set_id              = $auth1
   server_condition           = "\
         ${if exists{/etc/exim/vuserspwd}\
           {${lookup{$1}lsearch{/etc/exim/vuserspwd}\
             {${if 
crypteq{$auth2}{\\\{crypt\\\}${extract{1}{:}{$value}{$value}fail}}\
               {true}{false} }}\
               {${if saslauthd{{$1}{$2}{smtp}} {1}}}}}}"



Hopefully someone much smarter than I will be able to point me in the
right direction.

If you need additional information, please let me know. Or, you can
email me at brian@???. That email works - it's a general
user vs. a virtual user...

Thanks in advance,
Brian