Morning all.
I have an EXIM setup on a Centos 7 server using basic setup and using
/etc/alias. This is our live company server.
I also have a personal Centos 7 / EXIM server where I host emails for a
few charities using Postgresql.
I have built a new company Centos 7 server / EXIM server using the Pgsql
setup but the company user base.
To port the users I
1) pwunconv / grpunconv on both the old and new servers
2) Copied /etc/passwd and /etc/group to the new server
3) merged /etc/passwd and /etc/group
4) pwconv / grpconv on both the old and new servers
5) rsync -avr /home
6) rsync -avr /var/spool/mail
Checked all files and permissions and all looks fine. However, local
delivery is not even being attempted. I have included the routers and
transports, as well as the output from a test run.
It looks like the localuser isn't even being checked, as the debug_print
doesn't appear.
Am I missing something obvious?
Output:
[root@sftp ~]# exim -bt gary.stainburn@???
R: pgsql alias gary.stainburn @ testserver.com
R: pgsql alias gary @ s
ftp.testserver.com
gary@s
ftp.testserver.com is undeliverable: Unrouteable address
<-- gary.stainburn@???
[root@sftp ~]#
'gary' exists as a local user.
begin routers
smarthost:
driver = manualroute
domains = +smarthost_domains
transport = smarthost_smtp
route_data = ROUTER_SMARTHOST
ignore_target_hosts = <; 0.0.0.0 ; 127.0.0.0/8 ; ::1
no_more
dnslookup:
driver = dnslookup
domains = ! +local_domains
transport = remote_smtp
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
no_more
system_aliases:
driver = redirect
allow_fail
allow_defer
data = ${lookup{$local_part}lsearch{/etc/aliases}}
file_transport = address_file
pipe_transport = address_pipe
pgsql_aliases:
debug_print = "R: pgsql alias $local_part @ $domain"
driver = redirect
domains = +local_domains
allow_fail
allow_defer
data = ${lookup pgsql{select a_target from current_alias_list \
where a_localpart = '${quote_pgsql:$local_part}' \
and domain='${quote_pgsql:$domain}'}}
file_transport = address_file
pipe_transport = address_pipe
no_more
userforward:
debug_print = "R: User Forward"
driver = redirect
check_local_user
file = $home/.forward
allow_filter
no_verify
no_expn
check_ancestor
file_transport = address_file
pipe_transport = address_pipe
reply_transport = address_reply
procmail:
debug_print = "R: Procmail"
driver = accept
check_local_user
require_files = ${local_part}:+${home}/.procmailrc:/usr/bin/procmail
transport = procmail
no_verify
localuser:
debug_print = "R: localuser"
driver = accept
check_local_user
transport = local_delivery
cannot_route_message = Unknown user
begin transports
# Added 2020-10-23
remote_smtp_single_domain:
debug_print = "T: remote_smtp_single_domain for $local_part@$domain"
driver = smtp
multi_domain = false
remote_smtp:
driver = smtp
.ifdef _HAVE_TLS_RESUME
tls_resumption_hosts = *
.endif
remote_msa:
driver = smtp
port = 587
hosts_require_auth = *
procmail:
driver = pipe
command = "/usr/bin/procmail -d $local_part"
return_path_add
delivery_date_add
envelope_to_add
user = $local_part
initgroups
return_output
smarthost_smtp:
driver = smtp
multi_domain
.ifdef _HAVE_TLS
hosts_require_tls = *
tls_verify_hosts = *
tls_try_verify_hosts = *
tls_sni = ROUTER_SMARTHOST
.ifdef _HAVE_OPENSSL
tls_require_ciphers = HIGH:!aNULL:@STRENGTH
.endif
.ifdef _HAVE_GNUTLS
tls_require_ciphers = SECURE192:-VERS-SSL3.0:-VERS-TLS1.0:-VERS-TLS1.1
.endif
.ifdef _HAVE_TLS_RESUME
tls_resumption_hosts = *
.endif
.endif
local_delivery:
driver = appendfile
file = /var/mail/$local_part_data
delivery_date_add
envelope_to_add
return_path_add
group = mail
mode = 0660
address_pipe:
driver = pipe
return_output
address_file:
driver = appendfile
delivery_date_add
envelope_to_add
return_path_add
address_reply:
driver = autoreply
delivery_date_add
envelope_to_add
return_path_add