<div dir="ltr"><div><div><div><div><div><div><div><div><div>I have been searching if it is possible to do a one-to-one mapping, something like ::<br><br></div>location /9000<br>{<br></div>    auth_basic<br></div>    auth_value username9000:password9000<br></div>    proxy_pass <a href="http://localhost:9000">http://localhost:9000</a><br>}<br><br>location /9001<br>{<br>    auth_basic<br>    auth_value username9002:password9002<br>    proxy_pass <a href="http://localhost:9001">http://localhost:9001</a><br>}<br><br></div><div>Also, ports 9000, 9001 will be firewalled from the public.<br><br><br></div>Above will ensure that someone wanting to get access to say port 9000, will have to come via <a href="http://1.2.3.4/9000">http://1.2.3.4/9000</a>. and must know the credentials username9000:password9000<br><br></div>Do I make sense?<br></div>If yes, can someone please point me out as to how to specify username:password on the URL basis.<br><br><br></div>Thanks and Regards,<br></div>Ajay<span class="gmail-pln"></span><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Apr 7, 2017 at 7:15 PM, Ajay Garg <span dir="ltr"><<a href="mailto:ajaygargnsit@gmail.com" target="_blank">ajaygargnsit@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div><div><div><div><div><div><div>Hi All.<br><br></div>We have setup multiple ssh-reverse tunnels, and our server will be listening to ports from 9000 to 10000.<br></div>The server will have a public-IP, and we DO NOT want just anyone to look into any of the ports by trying ::<br><br></div><div><a href="http://1.2.3.4:9000" target="_blank">http://1.2.3.4:9000</a><br></div><a href="http://1.2.3.4:9001" target="_blank">http://1.2.3.4:9001</a> and so on ...<br><br><br></div>So, we are wondering if we can do something like this ::<br><br><br></div>1. User types in a URL, let's say <a href="https://1.2.3.4/index.html" target="_blank">https://1.2.3.4/index.html</a><br></div>2. The user gets presented with a login/password page.<br></div>3. Depending upon the credentials passed, the user gets "proxied" to the appropriate end-url.<br><br></div>So, a user with credentials for port 9000 will ONLY be able to see <a href="http://1.2.3.4:9000" target="_blank">http://1.2.3.4:9000</a><br>A user with credentials for port 9001 will ONLY be able to see <a href="http://1.2.3.4:9001" target="_blank">http://1.2.3.4:9001</a>, and so on ..<br><br>An important point to note that the URLs <a href="http://1.2.3.4:9000" target="_blank">http://1.2.3.4:9000</a>, 
<a href="http://1.2.3.4:9001" target="_blank">http://1.2.3.4:9001</a> must be not be directly accessible, else it defeats 
the purpose of authentication at first place.<br><br></div>Is the above approach feasible logically and technically-via-nginx?<br><br><br></div>Will be grateful for pointers.<br><br><br></div>Thanks and Regards,<br></div>Ajay<br></div>
</blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">Regards,<br>Ajay<br></div>
</div>