#  > Servidores >  > Servidores de Rede >  >  Proxy, como funciona (iniciantes)

## Magal

Como funciona o PROXY. 

Normalmente um computador se conecta direto com o servidor web. Quando vc digita www.nomexxxxx.com.br o seu computador obtem o IP do servidor (através do DNS, que é outro servidor) e conecta direto, ponto a ponto. 

As vezes, não é interessante que essa conexão direta aconteça. A idéia aí é usar um computador intermediário que irá controlar/administrar as conexões com os servidores web. Isso pode ser útil quando uma rede local tem muitos computadores. Em vez de cada computador interno estabelecer a conexão direta, eles se conectam ao proxy, que é quem de fato faz a conexão. 

Com o uso de um proxy o administrador da rede pode determinar quais sites podem ser acessados por quais computadores da rede interna. Pode também determinar a prioridade da conexão, a velocidade que cada computador da rede interna vai ter economizando banda de acesso a internet. Um proxy também pode economizar acesso a internet fazendo o "cache". Assim, se um computador acessa um site, uma cópia desse site é baixada e guardada na memória do proxy. Se um outro computador acessa o mesmo site, o proxy entrega o site imediatamente, sem precisar baixar o site novamente. O usuário do segundo computador vai ter a impressão que o site baixou bem mais rápido e a internet sequer foi usada.

Quando o proxy estabelece a conexão com o servidor, o IP que aparece é o do proxy e não do computador que solicitou o acesso. O proxy (no caso squid) identifica quem está usando o site através dele, em outras palavras, por default ele repassa o IP interno para a internet.
No entanto, o proxy registra o Ip de cada computador que utiliza seus serviços. Isso significa que embora o site destino não tenha condições de saber o IP do computador, o administrador do proxy tem. Igualzinho a um intermediário.

Essa técnica de proxy pode ser utilizada para contornar restrições que o administrador da rede criou. Como o acesso ao proxy é liberado, a partir do proxy vc pode acessar o que vc quiser. Uma rede bem administrada impedirá o acesso a proxies também.

Como é que o proxy funciona ? Simples: ele recebe uma requisição de site de um computador cliente. O proxy anota o endereço do requisitante e tenta acessar o site que ele pediu. Quando o site responde, o proxy recebe o conteúdo, lembra-se para quem foi solicitado e retransmite para o requisitante. Esse processo pode gerar uma leve demora na velocidade mas normalmente esse demora é imperceptível na maioria das vezes.

----------


## Magal

Corrigido, vlw.

----------


## cesarkallas

obrigado você.

----------


## Magnun

É isso ai Magal!!! Boa explicação!

----------


## LASERNET

> Olá amigo, boa explicação para iniciantes, eu só gostaria de modificar a parte de "anônimo", na verdade o proxy (no caso squid) identifica sim quem está usando o site através dele, em outras palavras, por default ele repassa o IP interno para a internet.
> 
> Exemplo: My IP - What is my IP address? Free IP Tracer, IP Locator, Hide my IP address
> 
> My Proxy: Transparent, Real IP: 10.11.0.202, 10.10.0.207 
> 
> No meu caso, o 202 é o meu IP local e o 207 é o IP do meu proxy.
> 
> Valeu!


Amigos será que tem como vc´s analisarem meu squid.conf para mim pois não tá funcionando tem algo de errado ai:
http_port 3128 transparent
icp_port 0
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
acl video_cache dstdomain -i "/usr/local/squid/etc/cache.flt"
cache allow video_cache
cache deny QUERY
#cache_replacement_policy heap LRU
cache_replacement_policy heap LFUDA
memory_replacement_policy heap GDSF
cache_mem 156 MB
maximum_object_size 20000 KB
minimum_object_size 4 KB
maximum_object_size_in_memory 64 KB
cache_dir diskd /partition/squid/cache 5000 16 256 Q1=72 Q2=64
cache_access_log none
cache_store_log none
cache_effective_user nobody
cache_effective_group nogroup
pid_filename /var/run/squid.pid
half_closed_clients off
server_persistent_connections off
client_persistent_connections off
memory_pools off
buffered_logs on
pipeline_prefetch on

#cache_swap_low 70
#cache_swap_high 90

refresh_pattern -i ^http://.*\.(css|htm|html|ico|js|jsp|xml)$ 1440 80% 999999
refresh_pattern -i ^http://.*\.(bmp|gif|jpeg|jpg|png)$ 1440 80% 999999 ignore-reload
refresh_pattern -i ^http://.*\.(ace|adt|arj|asf|avi|bin|bz2|bzip|cab|dat|dll|doc|dot|exe|fla|flv|gz|iso|lha|log|lzh|mdb|mid|mov|mp3|mpeg|mpg|msi|mso|ogg|pps|ppt|rar|rm|rtf|shs|src|sys|swf|tgz|tif|ttf|wav|wma|wri|wmv|vpu|vpaa|vqf|vob|zip)$ 43200 100% 999999 ignore-reload

refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320

acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
#acl to_localhost dst 127.0.0.1/32
acl SSL_ports port 443 563
acl Safe_ports port 80
acl Safe_ports port 21
acl Safe_ports port 443 563
acl Safe_ports port 70
acl Safe_ports port 210
acl Safe_ports port 8180
acl Safe_ports port 1025-65535
acl Safe_ports port 280
acl Safe_ports port 488
acl Safe_ports port 591
acl Safe_ports port 777
acl Safe_ports port 901
acl purge method PURGE
acl CONNECT method CONNECT

#Access deny to Squid ident. header
header_access Via deny all
header_access X-Forwarded-For deny all
header_access Proxy-Connection deny all
header_access Accept-Encoding deny all
server_persistent_connections off
zph_mode tos
zph_local 0x30
acl filterneg dstdom_regex "/usr/local/squid/etc/filter.flt"
acl downloads_blocked urlpath_regex -i \.scr$ \.bat$ \.pif$ \.cmd$\.rmvb$\.3gp.rar$\.avi$
acl internal_net src "/usr/local/squid/etc/ipaccess.yes"

http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow PURGE localhost
http_access deny purge
http_access deny filterneg
http_reply_access deny downloads_blocked
http_access allow internal_net
http_access deny all
#http_reply_access allow all
#icp_access allow all
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
visible_hostname brazilfw
coredump_dir /partition/squid/cache
error_directory /usr/local/squid/share/errors/Portuguese

Por favor analisem.....

----------


## interhome

Nesse tutorial voce poderá tirar muitas duvidas,

Configurando um Squid "Ninja" | LinuxMan


Se você mudou alguma ACL, atualizou a lista de sites ou qualquer coisa
que exija refazer as regras do squid que está rodando, utilize:
# squid -k reconfigure 

Espero que te ajude.

----------


## SySUpdating

isso ae

----------


## wnascimento

pessoal qual o tamanho maximo de hd para se fazer cache ?

----------


## interhome

O máximo possivel, que o pc tenha condições de "acessar" e "processar". Deve analisar a linha limite, entre arquivar arquivos e gerar latencia na rede.

----------


## herry2009

Na minha opinao galera indico o CentOS para vc que esta com seu Server.

----------


## Residentigor

obrigado

----------


## lovenique

Olá amigos....
Estou com um projeto para desenolver uma serie de manuais de instalação de servidores e programas que a maioria dos ADMs de linux tem problemas....
Atualmente já postei 4 artigos. 

1º RAID1 Dando boot por ambos os HDs.

2º MANUAL de Squid e Dansguardian autenticacando com senha, e controle por hora.

3° MANUAL DE INSTALACAO SERVIDOR DE ARQUIVOS (PARA APRENDIZ E AVANÇADO )

4º MANUAL DE INSTALACAO SERVIDOR DE INTERNET (PARA APRENDIZ E AVANÇADO )

Atualmente estou desenvolvendo um artigo para servidor de Aplicativo JAVA e outro para Cluster...
Tenho em mente iniciar um tambem para PABX digital e CFTV...

Espero que tenham gostado do trabalho....

----------


## altairlage

Fala pessoal!

apesar de já ter feito alguns proxys admito que muita coisa nao sei...

primeiramente parabenizo muito pelo artigo... muito bom mesmo!

so uma coisa chata:

para o interhome que recomendou o squid Ninja:

cara esse tutorial foi uma biblia p mim quando precisei.. recomendo a todos, MAS, o mesmo está bastante desatualizado, muita coisa nao funciona mais e mudaram muitas sintaxes..

somente digo isso para que as pessoas que o sigam tenham tambem outra fonte mais atual junto, pois se seguirem a risca muita coisa nao funcionará.

abraços a todos!

----------


## nandumoura

muito bom o tópico valew ai pela ajuda

----------


## jgdini

Sou novo no Forum achei muito boa a explicação 
Simples e Objetiva
^^

----------


## mktguaruja

Eu mecho a um pouco com squid, essa teria foi ótima tirei umas duvidas sobre como ele identificava e puxava pelo proxy, e o link´s que o pessoal posto muito bom tbm ! t+

----------


## teresopolis

Magal boa noite, eu sou novato em mikrotik e configurei um hotspot´abilitando o web proxy do proprio mk. Porém quero instalar uma máquina externa com uma capacidade de hadware boa para fazer um proxy mais profissional, mas não sei nem por onde começar. Tipo: qual software instalar? e como? configurar? configuração de hardware? e tenho dúvida também: meu link chega na ether1 e sai para os clientes na ether2 para um switch, neste caso entro com esse proxy neste switch depois da rb? Obrigado e espero que possa me ajudar.

----------


## herman

Ótima explanação. Vlw Magal.

----------


## suporteTImicrosol

ok, obrigado

----------


## meulinux

Olá pessoal, agradeço pelo artigo. Não entendo nada disso, eu uso o Ubuntu 10.10 e queria ter (não sei se se trata de proxy) um sistema de quando alguém pegar meu IP ele (o IP) seja lá da China ou de outro país bem distante de onde eu estou. No Windows, um companheiro de outro fórum disse que usava o programa chamado TOR.

Alguém poderia me falar um pouco de como faço isso (No Ubuntu)?

Agradeço de coração.


Observação, eu uso Banda Larga GVT.
Eu uso apenas um único computador aqui em casa.
AfrikaansAlbanianArabicArmenianAzerbaijaniBasqueBelarusianBulgarianCatalanChinese (Simplified)Chinese (Traditional)CroatianCzechDanishDetect languageDutchEnglishEstonianFilipinoFinnishFrenchGalicianGeorgianGermanGreekHaitian CreoleHebrewHindiHungarianIcelandicIndonesianIrishItalianJapaneseKoreanLatinLatvianLithuanianMacedonianMalayMalteseNorwegianPersianPolishPortugueseRomanianRussianSerbianSlovakSlovenianSpanishSwahiliSwedishThaiTurkishUkrainianUrduVietnameseWelshYiddish*⇄*AfrikaansAlbanianArabicArmenianAzerbaijaniBasqueBelarusianBulgarianCatalanChinese (Simplified)Chinese (Traditional)CroatianCzechDanishDutchEnglishEstonianFilipinoFinnishFrenchGalicianGeorgianGermanGreekHaitian CreoleHebrewHindiHungarianIcelandicIndonesianIrishItalianJapaneseKoreanLatinLatvianLithuanianMacedonianMalayMalteseNorwegianPersianPolishPortugueseRomanianRussianSerbianSlovakSlovenianSpanishSwahiliSwedishThaiTurkishUkrainianUrduVietnameseWelshYiddishDetect language » Portuguese

----------


## snkbrz

Seria interessante adicionar os varios tipos de funcionamento do proxy, os que utilizei até hoje foram o normal, transparente e tproxy. E no caso do tproxy o ip que aparece no site pedido é o proprio ip que solicitou o acesso na rede interma, mas o proxy, juntamente com o SO utiliza uma tecnica para assumir o ip do computador original, fazer a requisição e devolver a resposta para a maquina de origem.

----------


## paullsoftware

Muito boa iniciativa. Parabéns

----------

