Parametros OnFly de Rede no Kernel :: Admirável Mundo Novo




Muito Bem Vindo

Prezado Leitor, a proposta desse Blog é compartilhar conhecimento com as pessoas que trabalham com Linux, Asterisk, OpenSER, e com tecnologia de voz sobre a rede IP em geral, através de tutoriais, dicas, howto, notícias entre outros assuntos.

Atente para termo de uso do conteúdo do blog no rodapé da página.

terça-feira, 20 de janeiro de 2009

Parametros OnFly de Rede no Kernel



Capítulo 13. Parâmetros OnFly de Rede no Kernel

O kernel possui muitos parâmetros que podem ser feitos ajustes finos para diferentes situações. Ao tempo que, como usual, os parâmetros padrões servem muito bem 99% das instalações, nós não o chamaríamos de ‘HOWTO Avançado’ só pelo prazer de chamá-lo!

Os bits de interesse estão em /proc/sys/net, dê uma olha lá. Nem tudo estará documentando aqui inicialmente, mas estamos trabalhando com eles.

No meio tempo você pode desejar dá uma olhada nos fontes do Kernel Linux; leia o arquivo Documentation/filesystems/proc. txt. Muitas das funcionalidades são explicadas lá.

(CORRIJAM-ME)


13.1. Filtragem do Caminho Reverso

Por padrão, roteadores roteiam tudo, mesmo pacotes que ‘obviamente’ não pertencem a sua rede. Um exemplo comum é o espaço IP privado que escapa para a Internet. Se você tiver uma rede com uma rota 195.96.96.0/24 pra ela, você não espera pacotes de 212.64.94.1 para chega até ela.

Muitas pessoas desejarão desativar essa funcionalidade, porque os hackers do kernel fazem isso facilmente. Existem arquivos em /proc onde você pode informar ao kernel para fazer isso pra você. O método é chamado de “Reverse Path Filtering”, ou seja, Filtragem do Caminho Inverso. Basicamente, se a resposta a um pacote saísse pela interface que esse pacote chegou, então ele é um pacote falso e deve ser ignorado.

O fragmento seguinte ativará isso para todas as interfaces atuais e futuras.


# for i in /proc/sys/net/ipv4/conf/*/rp_filter ; do
> echo 2 > $i
> done


Seguindo com o exemplo acima, se um pacote chegou ao roteador Linux pela interface eth1 que declara vir da sub-rede Office+ISP, ele seria descartado. De forma similar, se um pacote chegar da sub-rede Office, declarando ser de algum lugar externo ao seu firewall, ele seria descartado também.

O exemplo acima é a filtragem total do caminho reverso. O padrão é filtrar somente baseado nos endereços IP´s que estão diretamente conectados as redes. Isso é porque a filtragem total quebra no caso de roteamento assimétrico (quando acontece dos pacotes chegando por um caminho e saindo por outro, como tráfego de satélite, ou se você tiver rotas dinâmicas (BGP, OSPF, RIP) em sua rede. Os dados que desce pela antena do satélite e as respostas voltam através de linhas terrestres normais).

Se essa exceção se aplica a você (e provavelmente saberá se funciona) você pode simplesmente desativar o parâmetro rp_filter na interface por aonde chegam os dados do satélite. Se você deseja ver se algum pacote está sendo descartado, o arquivo log_martians no mesmo diretório dirá ao kernel para registrá-lo no seu syslog.


# echo 1 >/proc/sys/net/ipv4/conf/<interfacename>/log_martians


CORRIJA-ME: Setando os arquivos conf/{default,all}/* é suficiente? – Martian









Autores Originais dos textos:

Bert Hubert (Netherlabs BV)
bert.hubert@netherlabs.nl

Thomas Graf (Autor de Seção)
tgraf@suug.ch

Gregory Maxwell (Autor de Seção)
greg@linuxpower.cx

Remco van Mook (Autor de Seção)
remco@virtu.nl

Martijn van Oosterhout (Autor de Seção)
kleptog@cupid.suninternet.com

Paul B Schroeder (Autor de Seção)
paulsch@us.ibm.com

Jasper Spaans (Autor de Seção)
jasper@spaans.ds9a.nl

Pedro Larroy (Autor de Seção)
piotr@member.fsf.org







Nenhum comentário:




Creative Commons License
Admirável Mundo Novo: Tudo Sobre Asterisk, OpenSER, Linux e Tecnologias de Voz sobre IP
by Cléviton Mendes de Araújo is licensed under a Creative Commons Atribuição 2.5 Brasil License.