Proxy

如何在 apache2 中為前向代理設置某種身份驗證?

  • September 4, 2016

我有一個 VPS 並已將其配置為將 apache2 作為轉發代理執行:

<IfModule mod_proxy.c>
ProxyRequests On
<Proxy vps_ip:80>
Order deny,allow
Deny from all
Allow from all
</Proxy>
</IfModule>

這允許我使用我的 VPS 從我的家用機器上下載資源,使用 curl:

curl -x "vps_ip:80"  http://www.someresource.com -o /tmp/mydown

但是,我知道這被認為是一個開放代理,我想限制它僅用於我的家用機器。Apache 配置支持代理客戶端(如我的家用機器)的靜態 IP 白名單。但是,每次我連接到網際網路時,我的 ISP 都會為我分配不同的動態 IP。

如何防止其他人在我的 VPS 上使用我的轉發代理?

一種常見的方法是告訴 apache 只在 VPS 上的 localhost 上監聽:

Listen 127.0.0.1:80

然後使用 ssh 將家庭機器上的本地埠“轉發”到 VPS 埠。

ssh -L 8000:localhost:80 user@vps

然後 curl 使用本地埠應該通過 vps apache:

curl -x "localhost:8000" http://someresource.com -o /tmp/mydown

引用自:https://serverfault.com/questions/800887