Есть способ (хотя и не совсем чистый, на мой взгляд), сопоставив его с параметром header_checks . Например:
header_checks = pcre:/etc/postfix/my_relays
Теперь в /etc/postfix/my_relays:
/^From:.*asender\@domain1\.com/ smtp1:[host1.example.com]
/^From:.*anothersender\@domain2\.com/ smtp2:[host2.example.com]
Действия smtp1 и smtp2 необходимы только в том случае, если вам необходимо пройти аутентификацию на host1.example.com или host2.example.com по паролю, в противном случае будет достаточно заменить их на ключевое слово smtp .
Если вам нужно пройти аутентификацию на этих серверах, вам нужно определить, что такое smtp1 и smtp2 в вашем файле master.cf :
smtp1 unix - - - - 10 smtp
-o smtp_sasl_password_maps=hash:/etc/postfix/smtp1.relay
smtp2 unix - - - - 10 smtp
-o smtp_sasl_password_maps=hash:/etc/postfix/smtp2.relay
В качестве последнего шага, ваши файлы smtp[12].relay должны включать параметры аутентификации для подключения к этим хостам (замечу, что это необходимо, только если вам нужна аутентификация).
[hostX.example.com] userX:passwordX