Rotas estáticas permanentes no Linux

Posted: terça-feira, 24 de maio de 2011 by Wairisson Gomes in
0

Referência: http://www.dicas-l.com.br/arquivo/adicionando_rotas_estaticas_permanentes.php


Roteadores ou equipamentos que interligam duas ou mais redes são chamados de Gateways. A necessidade de configurarmos rotas estáticas surge à medida que possuímos mais de um gateway na rede, sendo assim, configuramos as máquinas da rede 1, por exemplo, de forma que: quando quiser acessar a rede 2 saia pelo gateway A e quando for acessar as redes 3,4,5... saia pelo gateway B.

Traduzindo isso para o TCP/IP ficaria:

Suponha que

  rede 1 = 192.168.1.0 / 255.255.255.0   rede 2 = 192.168.0.0 / 255.255.0.0   rede 3 = 10.100.1.0 / 255.255.255.0   rede 4 = 10.100.2.0 / 255.255.255.0   rede 5 = 10.100.3.0 / 255.255.255.0   ....   ubuntu#> route add -net 192.168.0.0/16 gw 192.168.10.1   ubuntu#> route add -net 10.100.0.0/16 gw 192.168.10.10 

Com isso a tabela de roteamento da máquina que estamos configurando ficaria assim:

  ubuntu#> route   Tabela de Roteamento IP do Kernel   Destino         Roteador        MáscaraGen.    Opções Métrica Ref   Uso Iface   192.168.1.0     *               255.255.255.0   U     0      0        0 eth0   192.168.0.0     192.168.10.1    255.255.0.0     UG    0      0        0 eth0   10.100.0.0      192.168.10.10   255.255.0.0     UG    0      0        0 eth0 

Note que a primeira linha foi adicionada automaticamente quando configuramos o endereço IP da própria máquina.

Uma maneira de melhorarmos isso é trabalhando com default gateway, ou seja, ao adicionarmos um gateway default, ele será adicionado na última linha da tabela de roteamento, de forma que todo IP com destino a uma rede que não se encaixa nas definições iniciais da tabela de roteamento serão mandadas para o default gateway (que por isso está na última linha).

Mas o escopo dessa dica é como transformar as rotas estáticas, que até aqui foram adicionadas manualmente, em configurações adicionadas automaticamente sempre que ligamos a máquina.

Já vi várias formas de adicionarmos estas rotas, desde comandos adicionados no script de inicialização do usuário, o /etc/init.d/rc.local até scripts executados ao iniciar o ambiente gráfico (arghhhh!!!), porém o mais adequado é utilizarmos os recursos que o sistema oferece para isso que são:

No Ubuntu (debian em geral): basta adicionarmos no arquivo /etc/network/interfaces as seguintes linhas:

  post-up route add -net 192.168.0.0/16 gw 192.168.10.1   post-up route add -net 10.100.0.0/16 gw 192.168.10.10 

Já em sistemas como o RedHat devemos criar o arquivo /etc/sysconfig/network-scripts/route-eth0 contendo:

  GATEWAY0=192.168.10.1   NETMASK0=255.255.0.0   ADDRESS0=192.168.0.0      GATEWAY1=10.100.0.0   NETMASK1=255.255.0.0   ADDRESS1=192.168.10.10 

Sendo assim toda vez que o serviço de rede subir estas rotas estáticas serão adicionadas automaticamente na tabela de roteamento de sua máquina.

Monitorando consumo no squid

Posted: quinta-feira, 5 de maio de 2011 by Wairisson Gomes in
0

O link na empresa em que trabalho é um pouco limitado e sempre algum usuário acaba abusando um pouco e acaba deixando o acesso mais lento para todos os outros.

Sempre tive dificuldades em conseguir rastrear quem está abusando do link (com o iptraf é possível, mas é um pouco complicado e não é muito exato). Buscando no Google, encontrei o SQStat (http://samm.kiev.ua/sqstat/).

Este script mostra em uma página PHP todos os acessos que estão acontecendo em tempo real e também permite que você configure um tempo para atualização automática da página.

A instalação dele é absurdamente simples:

  • Primeiro, faça o download da versão mais recente no site. Quando escrevi essa dica, o link é http://samm.kiev.ua/sqstat/sqstat-1.20.tar.gz
  • Coloque este arquivo no root do servidor web da máquina com o proxy e extraia o arquivo:
    # tar xzvf sqstat-1.20.tar.gz
  • Mude o nome do diretório para sqstat (apenas para facilitar o acesso no navegador, isto é opcional);
  • Renomeie o arquivo config.inc.php.defaults para config.inc.php;
  • Edite o arquivo config.inc.php:
    • em “$squidhost[0]=” coloque 127.0.0.1 (se o host que você for monitorar for o host onde você instalou o SQStat);
    • em “$squidport[0]=” coloque a porta onde o Squid está escutando no host;
    • em “$resolveip[0]=” coloque true para que o SQStat resolva os nomes dos hosts;
    • em “$group_by[0]=” você pode colocar “host” se você não utilizar autenticação no Squid, o que irá mostrar os IP’s dos clientes; você também pode colocar “username” se utilizar autenticação, assim todas as conexões mostradas na página serão agrupadas por nome de usuário ao invés de host.
  • Agora, é necessário configurar o Squid para que o SQStat consiga analisar os dados. Faça o seguinte no seu Squid.conf:acl manager proto cache_object
    acl webserver src 10.0.0.1/255.255.255.255
    http_access allow manager webserver
    http_access deny managerNa linha “acl webserver … ” substitua “10.0.0.1″ pelo IP do servidor web que irá exibir a página do SQStat.
  • Reinicie o Squid

Pronto! O SQStat já está instalado e configurado. Para acessá-lo abra seu navegador e digite http://ip-do-servidor-web/sqstat/sqstat.php.

Você também pode monitorar mais de um proxy utilizando o mesmo servidor web. Copie o bloco de configuração do host que configuramos acima e substitua os “[0]” por “[1]” para outro host. Para um terceiro, você deveria colocar “[2]” e assim por diante.


Referencia:http://www.pedropereira.net/visualizando-acessos-dos-usuarios-em-tempo-real-no-squid/

Monitorando consumo no squid

Posted: by Wairisson Gomes in
0

O link na empresa em que trabalho é um pouco limitado e sempre algum usuário acaba abusando um pouco e acaba deixando o acesso mais lento para todos os outros.

Sempre tive dificuldades em conseguir rastrear quem está abusando do link (com o iptraf é possível, mas é um pouco complicado e não é muito exato). Buscando no Google, encontrei o SQStat (http://samm.kiev.ua/sqstat/).

Este script mostra em uma página PHP todos os acessos que estão acontecendo em tempo real e também permite que você configure um tempo para atualização automática da página.

A instalação dele é absurdamente simples:

  • Primeiro, faça o download da versão mais recente no site. Quando escrevi essa dica, o link é http://samm.kiev.ua/sqstat/sqstat-1.20.tar.gz
  • Coloque este arquivo no root do servidor web da máquina com o proxy e extraia o arquivo:
    # tar xzvf sqstat-1.20.tar.gz
  • Mude o nome do diretório para sqstat (apenas para facilitar o acesso no navegador, isto é opcional);
  • Renomeie o arquivo config.inc.php.defaults para config.inc.php;
  • Edite o arquivo config.inc.php:
    • em “$squidhost[0]=” coloque 127.0.0.1 (se o host que você for monitorar for o host onde você instalou o SQStat);
    • em “$squidport[0]=” coloque a porta onde o Squid está escutando no host;
    • em “$resolveip[0]=” coloque true para que o SQStat resolva os nomes dos hosts;
    • em “$group_by[0]=” você pode colocar “host” se você não utilizar autenticação no Squid, o que irá mostrar os IP’s dos clientes; você também pode colocar “username” se utilizar autenticação, assim todas as conexões mostradas na página serão agrupadas por nome de usuário ao invés de host.
  • Agora, é necessário configurar o Squid para que o SQStat consiga analisar os dados. Faça o seguinte no seu Squid.conf:acl manager proto cache_object
    acl webserver src 10.0.0.1/255.255.255.255
    http_access allow manager webserver
    http_access deny managerNa linha “acl webserver … ” substitua “10.0.0.1″ pelo IP do servidor web que irá exibir a página do SQStat.
  • Reinicie o Squid

Pronto! O SQStat já está instalado e configurado. Para acessá-lo abra seu navegador e digite http://ip-do-servidor-web/sqstat/sqstat.php.

Você também pode monitorar mais de um proxy utilizando o mesmo servidor web. Copie o bloco de configuração do host que configuramos acima e substitua os “[0]” por “[1]” para outro host. Para um terceiro, você deveria colocar “[2]” e assim por diante.


Referencia:http://www.pedropereira.net/visualizando-acessos-dos-usuarios-em-tempo-real-no-squid/