<div dir="ltr">Try proxy protocol.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jun 21, 2018 at 12:47 PM,  <span dir="ltr"><<a href="mailto:cyang@123mail.org" target="_blank">cyang@123mail.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I run Postfix 3.3.1 & Nginx 1.15.0<br>
<br>
Both work great.<br>
<br>
I'm beginning to experiment with putting Postfix (and eventually other) server behind Nginx (v 1.15.0) setup as a mail (SMTP) proxy.<br>
<br>
Without the proxy, Postfix logs show an inbound connection to my real IP<br>
<br>
        Jun 21 12:12:31 mailprox postfix/postscreen[55634]: CONNECT from [74.125.142.27]:43757 to [192.0.2.1]:25<br>
<br>
The way nginx gets configured for smtp proxy, even if I'm *NOT* doing any auth is to direct the connection to a "fake" auth_http destination,<br>
<br>
        mail {<br>
                ...<br>
            auth_http <a href="http://127.0.0.1:33001/dummy.php" rel="noreferrer" target="_blank">127.0.0.1:33001/dummy.php</a>;<br>
                ...<br>
        }<br>
        http {<br>
                ...<br>
                server {<br>
                listen <a href="http://127.0.0.1:33001" rel="noreferrer" target="_blank">127.0.0.1:33001</a>;<br>
                ...<br>
                location ~ .php$ {<br>
                        add_header Auth-Server 127.0.0.1;<br>
                        add_header Auth-Port 33025;<br>
                        return 200;<br>
                }<br>
                ...<br>
        }<br>
<br>
Switching over, the proxy is set up to listen on the real IP<br>
<br>
        [192.0.2.1]:25<br>
<br>
and passes to Postfix's postscreen which using the config above is listening on<br>
<br>
        [127.0.0.1]:33025<br>
<br>
What I see in the Postfix log is<br>
<br>
        Jun 21 12:10:12 mailprox postfix/postscreen[55329]: CONNECT from [127.0.0.1]:31460 to [127.0.0.1]:33025<br>
        Jun 21 12:10:12 mailprox postfix/postscreen[55329]: WHITELISTED [127.0.0.1]:31460<br>
<br>
Mail does get delivered but postscreen is whitelisting the IP of the proxy, 127.0.0.1, and not using the real IP.<br>
<br>
I need to somehow pass the Real-IP through to postscreen, and anything further downstream that'll need it.<br>
<br>
For web server proxying I'd pass something like<br>
<br>
        X-Forwarded-For<br>
<br>
or<br>
<br>
        X-Real-IP<br>
<br>
to a downstream webserver listener.<br>
<br>
What do I need for Postfix/Postscreen to correctly 'see' the Real IP?<br>
<br>
A header added to the nginx config?  Some additional code in the auth_http? Something else?<br>
<br>
Cheers!<br>
<br>
Cy<br>
______________________________<wbr>_________________<br>
nginx mailing list<br>
<a href="mailto:nginx@nginx.org">nginx@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx" rel="noreferrer" target="_blank">http://mailman.nginx.org/<wbr>mailman/listinfo/nginx</a><br>
</blockquote></div><br></div>