Fully altering recipient on Postfix
Solution 1:
From the mail.log, looks like you want to rewrite the email from the remote client. The default setting of postfix rewrite prevent this happened.
Excerpt from Postfix Rewriting README
Postfix versions 2.2 give you the option to either not rewrite message headers from remote SMTP clients at all, or to label incomplete addresses in such message headers as invalid. Here is how it works:
Postfix always rewrites message headers from local SMTP clients and from the Postfix sendmail command, and appends its own domain to incomplete addresses. The
local_header_rewrite_clients
parameter controls what SMTP clients Postfix considers local (by default, only local network interface addresses).Postfix never rewrites message header addresses from remote SMTP clients when the
remote_header_rewrite_domain
parameter value is empty (the default setting).Otherwise, Postfix rewrites message headers from remote SMTP clients, and appends the
remote_header_rewrite_domain
value to incomplete addresses. This feature can be used to append a reserved domain such as "domain.invalid", so that incomplete addresses cannot be mistaken for local addresses.
So, the simplest solution is don't leave parameter remote_header_rewrite_domain
with empty value. You need to provide value to this parameter with value such as
remote_header_rewrite_domain = domain.invalid
Or you can use static:all
on parameter local_header_rewrite_clients
so postfix will consider all remote client as local.
local_header_rewrite_clients = static:all
Source: Official docs of Postfix Address Rewriting