É chamado de proxy reverso e requer mod_proxy
carregado.
As diretivas de configuração são:
ProxyPass /localpath http://remote-site.example.com:8080/remotepath
ProxyPassReverse /localpath http://remotesite.example.com:8080/remotepath
ProxyPassReverseCookieDomain remote-site.example.com proxy.fully.qualified.domain.com
ProxyPassReverseCookiePath /remotepath /localpath
Então, para o seu exemplo (mais um pouco extra):
ProxyPass /ff http://www.forbidden-forum.com/
ProxyPassReverse /ff http://www.forbidden-forum.com/
ProxyPassReverseCookieDomain www.forbidden-forum.com benign.proxy.com
ProxyPassReverseCookiePath / /ff
ProxyPass /wl http://wikileaks.org/
ProxyPassReverse /wl http://wikileaks.org/
ProxyPassReverseCookieDomain wikileaks.org benign.proxy.com
ProxyPassReverseCookiePath / /wl
Abrir http://benign.proxy.com/ff
mostrará o conteúdo de http://www.forbidden-forum.com/
e http://benign.proxy.com/wl
abrirá http://wikileaks.org/
.
Sirva algo completamente inócuo (e acreditável) em http://benign.proxy.com/
. Se alguém tentar "verificar a validade", verá uma página confiável.
E, melhor ainda, atenda o proxy por HTTPS para ocultar os URLs encaminhados (que deixarei como um exercício para você).
Esse método pode ser contornado pelo chamado "bump in the wire" - um proxy transparente man-in-the-middle totalmente confiável.
Se o usuário não tiver controle total sobre o host do cliente, ele ficará vulnerável a uma colisão, mas poderá verificar manualmente as impressões digitais para garantir a privacidade e evitar estabelecer uma conexão se a chave não verificar.
O usuário também precisará prestar atenção a outros problemas de SSL (por exemplo, certificados inválidos, sslstrip etc.).