On 3/11/2016 9:22 AM, gsotsas wrote: > Thanks once again! > > Do you see any possibility to use the client IP from the XFORWARD > header? And to pass it to an external policy daemon? > > Amda
No. > > On 09.03.2016 22:41, Wietse Venema wrote: >> gsotsas: >>> Dear postfix users, >>> I have the following outbound relayhost configuration: >>> {client that sends mail to smtp relay} -> {postfix:587} -> >>> {policyd} -> >>> {postfix} -> {amavis:10024} -> {postfix:10025} -> {postfix relays >>> mail >>> to destination mailserver} >>> >>> What I need is that the last postfix process sets >>> smtp_bind_address (or >>> outgoing transport map) depending on the client IP. >> That will be difficult. You can choose the Postfix SMTP client by >> sender email address with sender_dependent_default_transport_maps, >> but choosing it by client IP address will involve fragile hacks: >> >> Before content filter, an check_Client_access map with >> >> /^[0-9.]+$/ PREPEND X-Client: $1 >> >> After the content filter, a header_checks action with: >> >> /^X-Client: ([0-9.]+)/ FILTER smtp-$1: >> >> And master.cf entries with: >> >> smtp-1.2.3.4 .. .. .. .. .. .. smtp -o smtp_bind_address=1.2.3.4 >> >> Wietse >> >>> Is there any way to achieve this (maybe with an external plugin or >>> something)? >>> >>> I know aboutsender_dependent_default_transport_maps but this only >>> works >>> with the envelope sender domain. >>> I know that postfix passess the original client ip to amavis as >>> XFORWARD >>> header (smtp_send_xforward_command)- and amavis returns this >>> header to >>> {postfix:10025}by specifyingsmtpd_authorized_xforward_hosts. >>> But the XFORWARD header is used only for logging purpose and cant be >>> used for my needs - or am I wrong? >>> >>> Thank you in advance >>> Amda >>> >