Squid com WCCP

Após surgir a necessidade de efetuar a configuração de Squid com wccp em um roteador 2600 da Cisco, resolvi contribuir com a configuração utilizada. Para um bom entendimento deste documento recomenda-se um mínimo de conhecimento de sistemas Unix, do processo de compilação de um programa e do funcionamento do protocolo WCCP.

[ Hits: 41.397 ]

Por: Fabricio Cruz em 05/09/2006


Instalação do Squid



A instalação do Squid se faz necessário caso, durante a instalação do sistema operacional, o pacote foi retirado. Mas normalmente é instalado por padrão.

Utilizei o pacote squid-2.5.STABLE2.tar.gz, também é possível instalar através de um pacote rpm. Neste caso seria executado o comando abaixo:

rpm -ivh nomedopacote.rpm

Site oficial do Squid:
1. Primeiro devemos descompactar o arquivo .tar.gz;

2. Depois dentro do diretório gerado digite:

# make

3. Após a execução do make, digite:

# make install

Para garantir a ativação do Squid automaticamente a cada inicialização do servidor existem diversas formas, uma delas é utilizar o ntsysv (é instalado por padrão no Fedora Core), marcar o Squid e dar ok.

Copiar o arquivo squid.conf do pacote para /usr/local/squid/etc.

Executar os comandos:

# /usr/local/squid/bin/squid -z
# /usr/local/squid/bin/squid -NCd1


Deve ser exibida uma tela parecida com a exibida abaixo:
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 0.0.0.0:3128            0.0.0.0:*               LISTEN      
udp        0      0 0.0.0.0:1029            0.0.0.0:*                           
udp        0      0 172.16.48.4:2048        172.16.48.1:2048        ESTABLISHED 
udp        0      0 0.0.0.0:3401            0.0.0.0:*                           
udp        0      0 0.0.0.0:1027            0.0.0.0:*                           
udp        0      0 0.0.0.0:1026            0.0.0.0:*                           
raw        0      0 0.0.0.0:1               0.0.0.0:*               7           
raw        0      0 0.0.0.0:6               0.0.0.0:*               7           
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node Path
unix  4      [ ]         DGRAM                    287    /dev/log
unix  0      [ ACC ]     STREAM     LISTENING     389    /tmp/.font-unix/fs-1
unix  0      [ ACC ]     STREAM     LISTENING     367    /dev/gpmctl
unix  0      [ ]         DGRAM                    431960 
unix  0      [ ]         DGRAM                    199089 
unix  0      [ ]         DGRAM                    392    
unix  0      [ ]         DGRAM                    297   

Página anterior     Próxima página

Páginas do artigo
   1. Squid com wccp
   2. Instalação do módulo wccp do kernel
   3. Instalação do Squid
   4. Configurando o NAT no iptables e o roteador
Outros artigos deste autor

Ansible, Puppet e Chef

Leitura recomendada

Local Web Server visível na Internet com DynDNS

Servidor Debian 6 DHCP + Squid + IPtables

Configurando e instalando o Java com Tomcat no Linux

Configuração fácil de um servidor PPP

Como configurar e instalar o VirtualBox

  
Comentários
[1] Comentário enviado por roberva em 05/09/2006 - 11:58h

Muito bom artigo, estou estruturando uma rede utilizandp wccp porem em uma critica construtiva achei o artigo muito resumido...

[2] Comentário enviado por balani em 05/09/2006 - 22:27h

Muito bom o artigo, só faltou um exemplo pratico de utilização.vlw

[3] Comentário enviado por fabgcruz em 10/09/2006 - 13:56h

Bom ... uma vantagem de utilização do wccp (exemplo prático) é que você não tem que colocar as configurações de proxy no browser de cada estação de trabalho.

At+

[4] Comentário enviado por maxsuel_linux em 15/09/2006 - 09:21h

Muito bom essa forma!!! Muito bacana, mas essa configuração da certo em qualquer distribuição linux?

[5] Comentário enviado por fabgcruz em 21/09/2006 - 08:17h

Não sei qual distribuição você usa mas Fedora, Slackware e Debian ..rola ...nos outros deve funcionar sem problemas ...é por isso que amamos o LiNUX :)

O que pode mudar é a forma de instalar mas o resultado é o mesmo. Por exemplo no slackware não usaria rpm para instalar o squid ...

[6] Comentário enviado por rodrigofsantos em 11/10/2007 - 20:18h

cara estou usando o Debian 4 e estou tentando compilar este programa mas ta sempre dando o mesmo erro ja instalei o fonte do kernel na pasta /usr/src/linux ja fiz tudo mas sempre que executo o comando make install aparece o seguinte erro Makefile:25: *** Linux kernel source not configured - config.h not found. Pare. e dai não passa me ajuda ai pessoal

[7] Comentário enviado por fabgcruz em 16/10/2007 - 12:05h

Desculpe pela demora na resposta ....

Como ficou conseguiu resolver ? O que me parece é que as bibliotecas básicas nao estao instaladas ... como glibc por exemplo ...

Faz o seguinte : arrisca um apt-get install glibc ... como você usa o Debian a vida é mais fácil hehehehehe

Aguardo o seu retorno ..dessa vez respondo mais rápido ok? rsrs

Abraço

[8] Comentário enviado por cytron em 17/02/2008 - 16:43h

fabgcruz... me diz uma coisa!

Coloca redirecionamento no server onde fica o squid, e também coloca um redirecionamento no router... porque clocar nos dois?

Não bastaria colocar no router? já que o tráfego do server vai acabar passando por lá mesmo...?

Ex.: backbone <--> router <--> squid <--> switch <--> estações

Quando a requisição passa do switch para o squid, ele faz redirecionamento, então o squid passa para o router, que redireciona novamente para o squid, que redireciona novamente pra ele...?

Me explica aí porque agora fiquei confuso, ehehe, estou a dias estudando sobre protocolos de roteamento, dormindo pouco, já estou com o "buffer" cheio, kkkk, não estou assimilando as coisas! ehehehe.

[9] Comentário enviado por fabgcruz em 20/02/2008 - 11:34h

cytron

No meu caso tinha uma estrutura complexa, muitas subredes dmz pix router cisco etc etc etc

Na verdade o direcionamento é feito no iptables nesse caso, no router habilitei o wccp e defini a access-list (pq existiam várias no meu caso)... na verdade o conceito no router é de permissão ... entende?

Me manda o seu cenário que eu tento te ajudar ok?

Abraço!


Fabricio

[10] Comentário enviado por cytron em 23/02/2008 - 15:52h

Estou tentando otimizar a rede, atualmente está assim:

Vários links (vindo de roteadires) conectados a um switch que vai para o firewall, estou tentando fazer bonding mas tá barra! ehehe

do firewall vai para outro switch onde também vai radius, web, dns e proxy, do proxy vai para outro switch onde ficam os p2p para as células.

Links -> sw -> fw -> sw -> proxy -> sw -> clientes

apenas o fw está com IP válido, ele faz redirecionamento de portas para os outros servers, assim fica menos máquinas expostas, como pode ver na rede, fw e proxy fazem nat para que se possa navegar.

Acredito que haja uma maneira de otimzar esta rede.

Inclusive estou enfrentando alguns problemas com o protocolo ARP, se um servidor dhcp aparecer em algum lugar, e um cliente pedir IP, simplesmente passa pelos meus servidores. Ainda não domino o protocolo ARP.

No squid existem regras para isolar as vlans, no fw existem regras para permitir apenas o necessário. As demais máquinas estão com regras básicas para seguança dentro da rede.

Meu objetivo: Otimização pelo protocolo de roteamento e nat. Dominar o tráfego ARP na rede.

[11] Comentário enviado por obochecha em 30/12/2008 - 09:15h

Muito boa esse seu artigo, abriu minha menta para o uso do wccp.

Gostaria se possivel que você me ajudasse.

Eu estou utilizando o Slackware 12.1 kernel 2.6.24.5.
Tentei usar o ip_wccp 1.7 mas gerou um erro dizendo que estava faltando um arquivo conf.h se não me engano, estou agora tentando co o ip_wccp 1.6.2 só que ele dá o seguinte erro:

/root/ip_wccp-11.6.2/ip_wccp.c:66: 'struct sk_buff' has no member named 'nh'
acontence tbm em outras linhas; 69,82,83,87,95,96,98.

E pesquisei muito no google e dizem que precisa compilar o kernel.

e agora doutor?

[12] Comentário enviado por fabgcruz em 13/01/2009 - 23:43h


Olá !!

Desculpe a demora em responder .. é essa correria louca do dia a dia ...rsrsrs


Realmente o primeiro passo seria recompilar o kernel mesmo ....você sabe fazer isso?

Me mande a mensagem de erro certinha e eu te digo ..pois sofri para aprender a mexer nisso e devo conhecê-la muito bem rsrsrs

Abraco!!

Fabricio

[13] Comentário enviado por obochecha em 03/03/2009 - 10:24h

No momento Agradeço por ter entrado em contato. Acabei utilizando o Centos 5.0 cujo me atendeu muito bem.

Caso eu tente novamente essa aventura com slackware eu entro em contato Fabricio.
Mas seu tutorial Foi fundamental para minha implementação.

Obrigado por ter feito esse grandioso trabalho sobre wccp.

valew.

[14] Comentário enviado por ricardo.omar em 14/01/2010 - 17:40h

gostei do artigo ... mas estranhei voce não colocar nenhuma linha de configuração com relação ao wccp dentro do arquivo squid.conf. isso esta certo?

[15] Comentário enviado por fabgcruz em 18/11/2010 - 08:21h

Ricardo,

Desculpe a demora estive um pouco afastado do site devido trabalho .... no caso que simulei ..está certo sim ... as linhas adicionadas apenas no router redirecionando a porta 80 para fazer cache no squid

Abraço!

[16] Comentário enviado por GustavinhoO em 28/09/2011 - 08:56h

Bom dia ,

estou implantado o protocolo wccp porem esta dando o seguinte erro...


make -C /lib/modules/2.6.35-22-generic/build M=$PWD modules
make: *** /lib/modules/2.6.35-22-generic/build: No such file or directory. Stop.
make: *** [build2.6] Error 2

não consegui resolver

alguém pode me ajudar...

na verdade queria ate mesmo o wccp v2 mais não encontrei o download pra ele, se alguém souber me avise.

vlw

[17] Comentário enviado por removido em 12/09/2013 - 15:50h

Alguém conseguiu compilar o wccp?

eu recompilei meu squid 2.7.STABLE9 da seguinte forma

./configure --enable-wccp --enable-snmp
make all
make install

Até aqui tudo ocorreu bem.

Mas quando tento compilar o wccp, seguinte pacote ip_wccp-1.7.tar.gz

tar xvfz ip_wccp-1.7.tar.gz
cd ip_wccp-1.7
make install

Aparece o seguinte erro:

Makefile:25: *** Linux kernel source not configured - config.h not found. Stop.

Pesquisei na internet muito tiveram esse problema devido esse pacote ser antigo, lançado em 2007, foi preparado para kernels 2.4 que possuiam outra arquitetura de diretórios.
Estou tentando compilar no Debian 6.0 2.6.32-5-amd64 squeeze.

Por favor, se alguém resolveu, me ajuda ae

[18] Comentário enviado por premoli em 15/10/2013 - 08:29h

Até agora consegui através do tutorial encontrado aqui: http://nactac.com/2011/05/cisco-wccp2-with-squid-proxy-and-squidguard/
Muito bom, estou usando o squid3 configurado como no link acima para postar aqui, agora é testar com o cara da Cisco, futuro eu ...rsrsr


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts