[Exim] Some exim issues

Top Page
Delete this message
Reply to this message
Author: Artem S. Tashkinov
Date:  
To: exim-users
Subject: [Exim] Some exim issues
Hi there,

1. I have a local network and some "walking" users who need to send
their e-mails from different IPs (outside of our local net). By now I
allowed all local network users for relaying and i need to implement the
following feature in my exim: All users have to authourize themeseleves
via SPA before they can send e-mail (if user is not withing our
network), else I have to deny relaying

2. Also I have these routers at the end of routers section
#_____________________________________________________________________
mysql_user:
   driver = accept
   condition = \
    ${if eq{} \
      { ${lookup mysql {SELECT maildir FROM users \
          WHERE id='${local_part}@${domain}'}} \
      } \
      {no}{yes} \
    }
#  retry_use_local_part
   transport=mysql_delivery
#_____________________________________________________________________



unknown:
driver = accept
# driver = redirect
# data = postmaster
no_verify
transport = non_exist_reply

mysql_user has to deliver via its transport mysql_delivery the mail to
virtual users. The problem is that exim always tries to deliver mail to
unexistant users using mysql_delivery transport (even condition = no)
though mysql says the user doesn't exist. As far as I understand exim
has to use "unknown" router in case condition = no but exim still tries
to deliver e-mail using mysql_delivery so I have plenty e-mail messages
in my spool directory which cann't be delivered 'cause directory='<empty
string>' as mysql can says nothing else

here are the transports:

#_____________________________________________________________________
mysql_delivery:
driver = appendfile
maildir_format
directory = ${lookup mysql {SELECT maildir FROM users WHERE
id='${local_part}@${domain}'}}
user = nobody
group = nobody
mode = 0660
#_____________________________________________________________________


non_exist_reply:
driver = autoreply
to = $sender_address
subject = User does not exist
text = You sent mail to $local_part. That's not a valid user here. \
The subject was: $subject.

3. In my alias file exim doesn't let me point the exact domain of the
users, e.g. alias birdie: send@??? works just fine but if I
put there birdie@???: send@??? exim doesn't "see" this
alias. It seems very strange for me 'cause in the future there'll more
than one domain hosted on my server so it's nessesary for me to point
user domain in the aliases file


Best regards, Artem Tashkinov
System Administrator