Mail for SYSTEM users (not virtual)

danson

Verified User
Joined
Sep 15, 2004
Messages
8
Ok it looks like each resellar (we call him 'bob'). His own domain is domain.com.

He gets a mail folder created as:
/var/spool/mail/bob
(FYI /var/mail/ ===symlink===> /var/spool/mail/)

What I do not understand is how mail to them gets put there.

presume a mail sent to:

[email protected]

This arrives and, according to exim.conf is checked if it is a localuser:

domainlist local_domains = lsearch;/etc/virtual/domains

This lists all of the domains on the control panel so effectively ALL domains are local. Fine.

So exim goes on and look to see which Director it should use. It will match the virtual_aliases_nostar Director because there exists a line in:
/etc/virtual/domain.com/aliases contains the line:
bob : bob

This director is configured to use the redirect driver which does nothing with it.

What should happen is that the localuser Director should catch it, run the check_local_user (ie check the /etc/passwd file) and use the local_delivery transport which *IS* configured to put the mail into /var/spool/mail/bob


As predicted mail to [email protected] fails with this in the exim mainlog:

Code:
2005-04-12 15:08:03 1DLM3f-0003b0-0u <= root@HOSTNAME U=root P=local S=301
2005-04-12 15:08:03 1DLM3f-0003b0-0u ** bob@HOSTNAME <[email protected]> R=virtual_aliases:
2005-04-12 15:08:03 1DLM3f-0003b4-5Y <= <> R=1DLM3f-0003b0-0u U=mail P=local S=1172
2005-04-12 15:08:03 1DLM3f-0003b0-0u Completed
2005-04-12 15:08:03 1DLM3f-0003b4-5Y ** root@HOSTNAME R=virtual_aliases:
2005-04-12 15:08:03 1DLM3f-0003b4-5Y Frozen (delivery error message)

You can also see that mail to 'root' also fails.

What am i missing? How do I fix this?

Thanks!
Daniel
 
Superb =)

However I now have the following problem:

Code:
2005-04-12 15:34:52 1DLMTc-0003jj-Gf <= [email][email protected][/email] U=root P=local S=305
2005-04-12 15:34:53 1DLMTc-0003jj-Gf remote host address is the local host: vc1.aluminati.org
2005-04-12 15:34:53 1DLMTc-0003jj-Gf == [email][email protected][/email] R=lookuphost defer (-1): remote host address is the local host
2005-04-12 15:34:53 1DLMTc-0003jj-Gf Frozen

It's the lookuphost Router which is causing it. This looks like:

Code:
lookuphost:
  driver = dnslookup
  domains = ! +local_domains
  ignore_target_hosts = 127.0.0.0/8
  transport = remote_smtp
  no_more

But if I add "vc1.aluminati.org" to the local_domains list it throws me an error relating to not being able to find the virtual doamin folder vc1.aluminati.org....


If you could help with that i'd be really grateful!

Daniel
 
Well I kind of fixed the problem.
First I added :HOSTNAME to the local_domains list (shouldn't this already be there by default?!?)

Then there was a line missing from the exim.conf domain_filter director:

Code:
domain_filter:
  driver = redirect
  allow_filter
  no_check_local_user
  user = "mail"
[B]  condition = "${if exists{/etc/virtual/${domain}/filter}{yes}{no}}"[/B]
  file = /etc/virtual/${domain}/filter
  file_transport = address_file
  pipe_transport = virtual_address_pipe
  retry_use_local_part
  no_verify

The condition line was missing to it was trying to look up a virtual file for a local domain.

Was this a bug?? Or has my own host team really screwed up, accidently deleting a line?

Many thanks,
Daniel
 
Back
Top