Roteamento e segurança do Quagga


11

Eu tenho um roteador quagga com dois vizinhos de trânsito e anunciando meu próprio espaço IP. Entrei recentemente em uma troca pública de pares (IXP) e, portanto, faço parte da rede local (/ 24), junto com todos os outros participantes. Até agora, tudo funciona bem.

Agora, por segurança, eu me pergunto se outros participantes não poderiam simplesmente rotear todo o tráfego de saída através de mim? Por exemplo, o que acontece se qualquer outro participante apontar uma rota padrão para o meu ip IXP. Se eu entendi corretamente, todo o tráfego de saída desse participante iria para o meu roteador, que o encaminharia para a Internet usando meu uplink de trânsito, certo?

Então, eu me pergunto se tenho que tomar alguma medida contra isso. Minhas idéias são:

  1. Configure as regras do firewall (iptables) para que apenas o tráfego com um destino do meu próprio espaço IP seja aceito por outro participante do IXP. Abandone qualquer outro tráfego dos participantes do IXP.

  2. De alguma forma, faça o quagga usar uma tabela de roteamento de kernel diferente para cada vizinho (ou grupo de pares). A tabela de roteamento para os vizinhos IXP não conteria nenhuma entrada, exceto meu próprio espaço IP e, portanto, nenhum roteamento usando meus uplinks de trânsito IP ocorreria. Olhando para a saída de ip rule showshows quagga não está fazendo isso automaticamente?

Estou no caminho certo? Por que o 2. não é implementado diretamente no Quagga? Como os roteadores de hardware (cisco, juniper, ..) lidam com esse problema?


Alguma resposta o ajudou? Nesse caso, você deve aceitar a resposta para que a pergunta não apareça para sempre, procurando uma resposta. Como alternativa, você pode fornecer e aceitar sua própria resposta.
Ron Maupin

Respostas:


9

Você está certo, se você não tomar nenhuma medida, isso pode acontecer. É uma violação da política de uso aceitável da maioria dos IXP que eu conheço, mas você ainda deseja impedir que isso aconteça.

Sua primeira solução é uma boa coisa a fazer e resolverá o seu problema. Apenas certifique-se de não acompanhar o estado da sessão no iptables, que provavelmente irá prejudicar o desempenho ou mesmo o seu roteador.

Você também pode considerar a filtragem de saída de maneira semelhante: não permita que pacotes deixem sua rede com origem em fontes desconhecidas. Isso impedirá que os hosts da sua rede enviem pacotes IP falsificados, comumente usados ​​em ataques DDoS.

Eu não implementaria a segunda solução. É complicado e não tem uma escala adequada se você tiver vários roteadores lidando com seus trânsitos e pares ou se tiver um grande número de sessões de pares (um par de hunderds em um IXP não é incomum).

Em todas as plataformas de roteador de hardware, sei que esse problema foi resolvido na configuração, configurando o RPF na interface de saída e / ou escrevendo filtros.



0

Tanto quanto eu entendo, você tem 2 conexões com provedores de transporte público e 1 conexão com um ponto de mesmo nível, nessa situação, presumo que você esteja usando o BGP para fazer um par com seus provedores de transporte público e com um roteador IXP.

A maneira como o BGP funciona é que outros só podem alcançar os destinos que você anuncia para eles. Assim, por exemplo, você tem um / 24 e o anuncia aos seus provedores de transporte público, para que os hosts na Internet possam chegar até você através de seus pares de transporte e você também anunciaria seu / 24 no ponto de ponto para que os hosts conectados ao ponto de ponto possam entrar em contato diretamente com você sem acessar a Internet (pois esse seria o melhor caminho).

Para sessões do BGP, você normalmente filtraria o que anuncia para seus pares e o que eles anunciam para você (se você tiver pares a jusante) com uma lista de prefixos, por exemplo. Geralmente, você não filtra a entrada da bolsa de pares, pois a bolsa envia apenas rotas de pessoas conectadas à bolsa. Isso é semelhante aos seus provedores de transporte público, exceto pelo fato de geralmente enviarem a você a tabela de roteamento global completa (todos os destinos na Internet).

Nessa situação, você adicionaria uma lista de prefixos correspondente a uma ACL na direção de saída na sessão BGP conectada ao ponto de ponto para anunciar apenas o seu prefixo / 24, permitindo que os hosts na troca de pares alcancem apenas IPs no seu / 24 através do seu roteador (que é o que você deseja).

Se alguém anunciar uma rota padrão para você e você a aceitar, você não receberá o tráfego e o enviará à Internet. Nessa situação, você veria uma rota para a Internet através deles, porque seu roteador verá uma rota para 0.0.0.0/0 (a Internet) através deles, porque eles anunciaram para você.

O único momento em que os hosts conectados à troca de pares verão a Internet via você é se você anunciar uma rota padrão para a troca. A única outra ocasião em que você pode ser usado como um "AS de trânsito" é se você tiver clientes que estão no mesmo nível do cliente e eles solicitarem que você anuncie o espaço IP para o IXP para que eles possam alcançar a troca através de você.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.