diff options
Diffstat (limited to 'files/pt-pt/web/http/proxy_servers_and_tunneling/index.html')
-rw-r--r-- | files/pt-pt/web/http/proxy_servers_and_tunneling/index.html | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/files/pt-pt/web/http/proxy_servers_and_tunneling/index.html b/files/pt-pt/web/http/proxy_servers_and_tunneling/index.html new file mode 100644 index 0000000000..38c03ba2a2 --- /dev/null +++ b/files/pt-pt/web/http/proxy_servers_and_tunneling/index.html @@ -0,0 +1,98 @@ +--- +title: Servidor Proxy e Túneis +slug: Web/HTTP/Proxy_servers_and_tunneling +tags: + - HTTP + - Proxies + - Proxy + - Túnel HTTP +translation_of: Web/HTTP/Proxy_servers_and_tunneling +--- +<div>{{HTTPSidebar}}</div> + +<p class="summary">Ao navegar por diferentes redes da internet, os servidores proxy e os túneis HTTP facilitam o acesso ao conteúdo na Rede Mundial de Computadores (World Wide Web). O proxy pode estar no computador local do usuário, ou em algum lugar entre o computador deste e o servidor de destino na Internet. Esta página é um esquema de conceitos básicos sobre proxies e algumas opções de configuração.</p> + +<p>Há dois tipos de proxies: <strong>proxy de envio </strong> (do inglês "<strong>forward proxies", </strong>ou túnel, ou ainda, gateway) e<strong> proxy reverso</strong> ("<strong>reverse proxies" </strong>usados para proteger o acesso ao servidor de largura de banda, autenticação, decriptação ou caching).</p> + +<h2 id="Proxy_de_Envio">Proxy de Envio</h2> + +<p>Proxy de envio, também chamado gateway ou "proxy" fornece serviços a um cliente ou grupo de clientes. É possível que haja centenas de milhares de proxies de envio livres na Internet. Estes armazenam e enviam serviços de rede (como o DNS, ou páginas da web) para economia e controle da largura de banda usada pelo grupo.</p> + +<p>Proxies de envio também podem ser anónimos e esconder o endereço IP dos usuários que navegam pela Web ou usam outros serviços de Internet. O <a href="https://www.torproject.org/">TOR</a> (The Onion Router), para ser anónimo, roteia tráfego de rede por vários proxies .</p> + +<h2 id="Proxy_reverso">Proxy reverso</h2> + +<p>Como o nome já indica, faz o inverso do proxy de envio: O proxy de envio benefecia a clientes (ou a hosts que o requisitam), já o proxy reverso benefecia a servidores. Proxies de envio podem esconder a identidade de clientes, ao passo que proxies reversos podem esconder a dos servidores. Proxies reversos tem várias funções, dentre os quais:</p> + +<ul> + <li>Load balancing: distribuir a carga por vários servidores web ,</li> + <li>Cache de conteúdo estático: liberta os servidores web por esconder conteúdo estático, como fotos</li> + <li>Compressão: acelera o tempo de carregamento por comprimir e otimizar conteúdos</li> +</ul> + +<h2 id="Envio_de_informação_de_clientes_por_meio_de_proxies">Envio de informação de clientes por meio de proxies</h2> + +<p>Proxies fazem parecer que os pedidos vêm do endereço IP do proxy. Isto pode ser útil se o proxy provê anonimato ao cliente. Porém, noutros casos, perde-se a informação do pedido original. O endereço IP original é usado em verificação de erros, em estatísticas ou ao gerar conteúdo ajustado à localização. Uma forma comum de divulgar esta informação é usando estes cabeçalhos HTTP:</p> + +<p>Cabeçalho padronizado:</p> + +<dl> + <dt>{{HTTPHeader("Forwarded")}}</dt> + <dd>Contêm informação do lado do cliente de proxy, que foi alterada ou perdida se há um proxy no caminho do pedido</dd> +</dl> + +<p>Ou as versões de facto padrão:</p> + +<dl> + <dt>{{HTTPHeader("X-Forwarded-For")}} {{non-standard_inline}}</dt> + <dd>Identifica o endereço IP de origem do cliente que se conectou ao servidor web por meio de um proxy HTTP ou um load balancer</dd> + <dt>{{HTTPHeader("X-Forwarded-Host")}} {{non-standard_inline}}</dt> + <dd>Identifica o Host originalmente requisitado pelo cliente, quando este se conectou ao seu proxy ou load balancer </dd> + <dt>{{HTTPHeader("X-Forwarded-Proto")}} {{non-standard_inline}}</dt> + <dd>Identifica o protocolo (HTTP ou HTTPS) que o cliente usou ao se conectar ao seu proxy ou load balancer</dd> +</dl> + +<p>Pode-se usar o cabeçalho <code>Via</code> para informar, não sobre o cliente conectado, mas sobre o próprio proxy.</p> + +<dl> + <dt>{{HTTPHeader("Via")}}</dt> + <dd>Adicionado por proxies, tanto de envio como reversos, e aparece no cabeçalho do pedido e da resposta.</dd> +</dl> + +<h2 id="Túnel_HTTP">Túnel HTTP </h2> + +<p>O Tunelamento encapsula os dados, permitindo assim que dados de rede privada e protocolos traféguem em redes públicas. Tunelamento HTTP é usar o protocolo de alto nível (HTTP) para transportar outro de nível abaixo (TCP).</p> + +<p>O Protocolo HTTP protocol especifica o método {{HTTPMethod("CONNECT")}}. Este começa comunicações de mão-dupla com o recurso requisitado e pode abrir um túnel. É assim que o cliente de proxy HTTP pode acessar websites a usar SSL (i.e. HTTPS, porta 443). Mas, é digno de nota, que nem todos os servidores proxy tem suporte ao método <code>CONNECT</code> ou limitam-no à porta 443.</p> + +<p>Veja também o artigo <a href="https://en.wikipedia.org/wiki/HTTP_tunnel">HTTP tunnel</a>, na Wikipedia.</p> + +<h2 id="Proxy_Auto-Configuration_PAC">Proxy Auto-Configuration (PAC)</h2> + +<p>O ficheiro <a href="/en-US/docs/Mozilla/Projects/Necko/Proxy_Auto-Configuration_(PAC)_file">Proxy Auto-Configuration (PAC)</a> é uma função de <a href="https://wiki.developer.mozilla.org/pt-PT/docs/Web/JavaScript">JavaScript</a> que determina se pedidos de motores de busca (HTTP, HTTPS, e FTP) vão direto ao destino ou são reencaminhadas a um proxy-servidor web. A função JavaScript contida no ficheiro PAC define:</p> + +<p id="Saving_the_Auto-Config_File_Setting_the_MIME_Type">O ficheiro auto-config será salvo com extensão <code>.pac</code>:</p> + +<pre class="syntaxbox notranslate">proxy.pac</pre> + +<p>E o MIME type é configurado para:</p> + +<pre class="syntaxbox notranslate">application/x-ns-proxy-autoconfig</pre> + +<p>O Ficheiro consiste numa função de nome <code>FindProxyForURL</code>. Se o servidor DNS interno está configurado para fonecer nomes à hosts internos, e o objectivo é usar um proxy só para hosts sem nome, então este exemplo deve funcionar:</p> + +<pre class="brush: js notranslate">function FindProxyForURL(url, host) { + if (isResolvable(host)) + return "DIRECT"; + else + return "PROXY proxy.mydomain.com:8080"; +}</pre> + +<p>Veja <a href="/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_(PAC)_file">Proxy Auto-Configuration (PAC)</a> para mais exemplos.</p> + +<h2 id="Veja_também">Veja também</h2> + +<ul> + <li>{{HTTPMethod("CONNECT")}}</li> + <li><a href="https://pt.wikipedia.org/wiki/Proxy">Proxy na Wikipedia</a></li> +</ul> |