Re: [FUG-BR] Filtro L7

2007-11-26 Por tôpico Evandro Nunes
On Oct 3, 2007 3:29 PM, Daniel Loureiro [EMAIL PROTECTED] wrote:
 Bom dia,

 sou iniciante no FreeBSD, e gostaria de fazer filtragem na camada 7.
 Ex.: dar uma certa banda para emails, bloquear msn para alguns ips,
 fazer gráficos por protocolo, etc. No linux eu uso o iptables +
 filter-l7, mas no freeBSD eu não achei nada parecido.

 Eu sei que é possível fazer isso na camada 3, usando portas e ips que
 estes programas usam, mas acho isso muito gambiarrado e frágil.

irmão tu tem que rever um pouco seus conceitos de rede, gambiarra é
ponteiro descontrolado em kernel fazendo regexp de string, controlar
tráfego na camada 3 é a coisa mais adequada e segura possível, não é a
toa que é a forma mais tradicional

 Afinal, se eu faço shaping em uma porta, o usuário pode usar outra.

 Perguntando ao Google, ele me mostrou uma mensagem antiga dos
 desenvolvedores do ipfw dizendo que não implementariam layer 7 pois
 seria algo baseado em expressões regulares, o que, além de ser lento,
 poderia dar falsos-positivos ou falsos-negativos.

o que é a mais pura verdade, vide a tabela a precisão dos módulo L7
do linux, a maioria dos protocolos tem uma boa chance de ser
falso-positivo, e falso-negativo então é 98% de chance irmão, dai tu
se apega nos outros 2% restante se liga na marmita? se não saca só:

no linux você usa uma gambi q eles chamam de conntraq pra rastrear
conexão, e dai da um match de camada 7 (q pode ser falso) e joga pro
conntraq e no final das conta a banda ou o filtro voce controle é na
camada 3 dos pacotes q passam naquema connq  ta sendo rastreada,
sacou? dai só pra ilustrar o tamanho do seu engano em achar q camada 3
é furada, camada 3 é o a única viável de verdade, aí tu se apega em
como trabalhar a classificação do jeito que deseja se liga? os linuxer
fazem em kernel, e isso pra qualquer especialista em segurança é
simplesmente errado

 Porém, eu já trabalhei com o filter-l7 do linux e sei que funciona muito
 bem. Além disso, dado o poder atual dos processadores, esta métdo não
 interfere na velocidade de transmissão.

entao tu sabe bem q o L7 eh apenas para classificar


 Entre as hipóteses que pesquisei:
 * netgraph: achei muito complexo, praticamente precisa ter que programá-lo.
 * ipfw + divert: não dá, o ipfw pega só o cabeçalho do protocolo, assim,
 não tem o que eu filtrar.
 * snort_inline: usa o mecanismo acima, e portanto em nível L2/L3;

não viaja irmaozinho, divert manda o pacote inteiro e você faz com ele
o que quiser, e nao tem nada de L2 na estoria

 * hackear o ipfw: complexo, mas parece mais simples que usar o netgraph;
 * ipfw + pipes: é possível usar pipes para enviar tráfego para meu
 programa ? o ipfw envia os dados para o pipe ou só o cabeçalho ?

envia tudo pro pipe mas nao da pra desviar pra programa nao

pra mandar pra programa tu faz com divert


 Enfim, alguém já teve uma experiência deste tipo, ou tem alguma idéia ?

minha experiencia é usar snortsam jogando os peers pra 2 tables e ai
tu mete eles num pipe e ja era, vai pra casa, pega um dia de folga e
vai aproveita sua namorada num dia improvavel a tarde, (ela vai
adorar) porque tudo vai funcionar sem vc precisar estar por perto,
como de costume com freebsd


 Sds,
 Daniel Loureiro.

 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Filtro L7

2007-11-24 Por tôpico Klaus Schneider
Em 03/10/07, Daniel Loureiro [EMAIL PROTECTED] escreveu:

 Marcelo Soares da Costa escreveu:
  Filtrar conteudo = squid
 
  snort me parece que vc procura , pode usar ainda ipfw com dumynet para
  controle de banda
 

 obrigado pela resposta Marcelo, mas o squid eu já uso para o conteúdo
 web. Eu queria controlar o uso de aplicativos como emule, msn, etc,
 independente da porta/ip usados. Algo como isto:

 http://l7-filter.sourceforge.net/protocols

 Poderia ser algo como:

 - liberar msn para o 192.168.0.1
 # ipfw add 10 allow app msn from 192.168.0.1 to any layer7

 - banda reduzida para p2p
 # ipfw add 20 pipe 1 app p2p any to any layer7

 Tentei eu mesmo fazer um filtro da seguinte forma: criei um programa
 ouvindo a porta 5000 (com IPPROTO_DIVERT) e usei o ipfw para
 divertar (alguém traduza isto ;P) todo o tráfego para ele.

 # ipfw add 1 divert 5000 from any to any

 Isto funcionou bem, mas o problema é que o ipfw só repassa o cabeçalho
 do pacote, sem os dados. Só o cabeçalho, é útil para fazer um filtro
 L2/L3 (portas/ip/mac), mas é inútil para fazer um filtro L7 (ex.,
 procurar pela palavra proto-x-donkey nos dados).

  http://freebsd.rogness.net/snort_inline/

 O snort_inline usa o mesmo esquema que eu reproduzi. Como o ipfw só
 repassa cabeçalhos, o máximo que ele vai fazer é filtrar por
 ip/mac/porta, e não pelo conteúdo do pacote.

 Se alguém tiver mais alguma idéia...

 Sds,
 Daniel Loureiro.


 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd



Velho, conhece o snort2pf?

Esse deve fazer uma coisa parecida com o que tu faz:
O snort detecta uma intrusão(no teu caso um tipo de conexão que tu não
quer que seja estabelecida) e passa para o pf via uma table ou anchor as
conexões que devem ser bloqueadas.
Mas mesmo assim eu acho isso muito mais gambiarra que bloquear tudo e
liberar apenas o que tu quer, é muito mais prático, já que filtros em camada
7 dependem de finger prints, e como tu mesmo mencionou, finger prints mudam
quando o protocolo muda e ai já era, sem falar em protocolos p2p que usam
criptografia, ai nem a mãe diná consegue saber o que tem dentro do pacote...
Complicar é fácil, o difícil é simplificar =)


-- 
/*
* Klaus Schneider
*/
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Filtro L7

2007-11-23 Por tôpico Thiago Damas
  Ja fiz programa pra escutar com divert, e ele pega o pacote inteiro.
Da pra fazer camada 7 sim, mas como roda no modo usuario, usa mais
recursos do que se fosse no modo kernel (ipfw divert - modo usuario
- volta pro kernel)
  Na epoca minha rede estava em +- 18Mbps e nao dava conta.

On Oct 3, 2007 5:06 PM, Daniel Loureiro [EMAIL PROTECTED] wrote:
 Marcelo Soares da Costa escreveu:
   Filtrar conteudo = squid
  
   snort me parece que vc procura , pode usar ainda ipfw com dumynet para
   controle de banda
  

 obrigado pela resposta Marcelo, mas o squid eu já uso para o conteúdo
 web. Eu queria controlar o uso de aplicativos como emule, msn, etc,
 independente da porta/ip usados. Algo como isto:

 http://l7-filter.sourceforge.net/protocols

 Poderia ser algo como:

 - liberar msn para o 192.168.0.1
 # ipfw add 10 allow app msn from 192.168.0.1 to any layer7

 - banda reduzida para p2p
 # ipfw add 20 pipe 1 app p2p any to any layer7

 Tentei eu mesmo fazer um filtro da seguinte forma: criei um programa
 ouvindo a porta 5000 (com IPPROTO_DIVERT) e usei o ipfw para
 divertar (alguém traduza isto ;P) todo o tráfego para ele.

 # ipfw add 1 divert 5000 from any to any

 Isto funcionou bem, mas o problema é que o ipfw só repassa o cabeçalho
 do pacote, sem os dados. Só o cabeçalho, é útil para fazer um filtro
 L2/L3 (portas/ip/mac), mas é inútil para fazer um filtro L7 (ex.,
 procurar pela palavra proto-x-donkey nos dados).

   http://freebsd.rogness.net/snort_inline/

 O snort_inline usa o mesmo esquema que eu reproduzi. Como o ipfw só
 repassa cabeçalhos, o máximo que ele vai fazer é filtrar por
 ip/mac/porta, e não pelo conteúdo do pacote.

 Se alguém tiver mais alguma idéia...

 Sds,
 Daniel Loureiro.


 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Filtro L7

2007-11-23 Por tôpico Eduardo Gielamo Oliveira
Olá Lucas,

Andei trabalhando nas últimas três semanas em dois scripts - um para 
bloqueio do E-mule e outro para bloqueio do Torrent. A idéia dos dois é 
evitar que o usuário tenha acesso às fontes de informação: servidores no 
caso do E-mule e trackers/peers no caso do Torrent. Nenhuma das idéias é 
perfeita - considero mais um esquema de insanidade do que de inteligência.

Aqui no meu trabalho estou usando a idéia. Bloquear tudo acredito que não 
esteja bloqueando - mas está servindo p/ denunciar o uso deste tipo de 
aplicação. A primeira vez que identificamos, pedimos gentilmente que a 
pessoa pare de usar. Na segunda, bloqueamos a máquina do usuário no firewall 
ou a conta da pessoa (dependendo do caso).

Fiz duas páginas para disponiblizá-los e tentar explicar o uso:

E-mule:
http://egoliveira.googlepages.com/comobloquearoacessoaosservidoresdee-mule

Torrent:
http://egoliveira.googlepages.com/como(tentar)bloquearousodebittorrentcomi

[]s

Eduardo

- Original Message - 
From: Lucas Mocellin [EMAIL PROTECTED]
To: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) 
freebsd@fug.com.br
Sent: Friday, November 23, 2007 11:46 AM
Subject: Re: [FUG-BR] Filtro L7


Olá Daniel,

pesquisando por aí vi esse seu post numa thread sobre
controlar/bloquear o uso de p2p com FreeBSD. Também estou verificando
como fazer isso pois estou tendo dificuladades.

então venho lhe mandar esse email para ver se você conseguiu algum bom
resultado e pudesse compartilhar comigo. Sucesso ou não? hehe

Obrigado,

Lucas Mocellin.

Em 03/10/07, Daniel Loureiro[EMAIL PROTECTED] escreveu:
 Marcelo Soares da Costa escreveu:
   Filtrar conteudo = squid
  
   snort me parece que vc procura , pode usar ainda ipfw com dumynet para
   controle de banda
  

 obrigado pela resposta Marcelo, mas o squid eu já uso para o conteúdo
 web. Eu queria controlar o uso de aplicativos como emule, msn, etc,
 independente da porta/ip usados. Algo como isto:

 http://l7-filter.sourceforge.net/protocols

 Poderia ser algo como:

 - liberar msn para o 192.168.0.1
 # ipfw add 10 allow app msn from 192.168.0.1 to any layer7

 - banda reduzida para p2p
 # ipfw add 20 pipe 1 app p2p any to any layer7

 Tentei eu mesmo fazer um filtro da seguinte forma: criei um programa
 ouvindo a porta 5000 (com IPPROTO_DIVERT) e usei o ipfw para
 divertar (alguém traduza isto ;P) todo o tráfego para ele.

 # ipfw add 1 divert 5000 from any to any

 Isto funcionou bem, mas o problema é que o ipfw só repassa o cabeçalho
 do pacote, sem os dados. Só o cabeçalho, é útil para fazer um filtro
 L2/L3 (portas/ip/mac), mas é inútil para fazer um filtro L7 (ex.,
 procurar pela palavra proto-x-donkey nos dados).

   http://freebsd.rogness.net/snort_inline/

 O snort_inline usa o mesmo esquema que eu reproduzi. Como o ipfw só
 repassa cabeçalhos, o máximo que ele vai fazer é filtrar por
 ip/mac/porta, e não pelo conteúdo do pacote.

 Se alguém tiver mais alguma idéia...

 Sds,
 Daniel Loureiro.


 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd



-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd 

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Filtro L7

2007-11-23 Por tôpico Lucas Mocellin
Olá Daniel,

pesquisando por aí vi esse seu post numa thread sobre
controlar/bloquear o uso de p2p com FreeBSD. Também estou verificando
como fazer isso pois estou tendo dificuladades.

então venho lhe mandar esse email para ver se você conseguiu algum bom
resultado e pudesse compartilhar comigo. Sucesso ou não? hehe

Obrigado,

Lucas Mocellin.

Em 03/10/07, Daniel Loureiro[EMAIL PROTECTED] escreveu:
 Marcelo Soares da Costa escreveu:
   Filtrar conteudo = squid
  
   snort me parece que vc procura , pode usar ainda ipfw com dumynet para
   controle de banda
  

 obrigado pela resposta Marcelo, mas o squid eu já uso para o conteúdo
 web. Eu queria controlar o uso de aplicativos como emule, msn, etc,
 independente da porta/ip usados. Algo como isto:

 http://l7-filter.sourceforge.net/protocols

 Poderia ser algo como:

 - liberar msn para o 192.168.0.1
 # ipfw add 10 allow app msn from 192.168.0.1 to any layer7

 - banda reduzida para p2p
 # ipfw add 20 pipe 1 app p2p any to any layer7

 Tentei eu mesmo fazer um filtro da seguinte forma: criei um programa
 ouvindo a porta 5000 (com IPPROTO_DIVERT) e usei o ipfw para
 divertar (alguém traduza isto ;P) todo o tráfego para ele.

 # ipfw add 1 divert 5000 from any to any

 Isto funcionou bem, mas o problema é que o ipfw só repassa o cabeçalho
 do pacote, sem os dados. Só o cabeçalho, é útil para fazer um filtro
 L2/L3 (portas/ip/mac), mas é inútil para fazer um filtro L7 (ex.,
 procurar pela palavra proto-x-donkey nos dados).

   http://freebsd.rogness.net/snort_inline/

 O snort_inline usa o mesmo esquema que eu reproduzi. Como o ipfw só
 repassa cabeçalhos, o máximo que ele vai fazer é filtrar por
 ip/mac/porta, e não pelo conteúdo do pacote.

 Se alguém tiver mais alguma idéia...

 Sds,
 Daniel Loureiro.


 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd



-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


[FUG-BR] Filtro L7

2007-10-03 Por tôpico Daniel Loureiro

Bom dia,

sou iniciante no FreeBSD, e gostaria de fazer filtragem na camada 7. 
Ex.: dar uma certa banda para emails, bloquear msn para alguns ips, 
fazer gráficos por protocolo, etc. No linux eu uso o iptables + 
filter-l7, mas no freeBSD eu não achei nada parecido.


Eu sei que é possível fazer isso na camada 3, usando portas e ips que 
estes programas usam, mas acho isso muito gambiarrado e frágil. 
Afinal, se eu faço shaping em uma porta, o usuário pode usar outra.


Perguntando ao Google, ele me mostrou uma mensagem antiga dos 
desenvolvedores do ipfw dizendo que não implementariam layer 7 pois 
seria algo baseado em expressões regulares, o que, além de ser lento, 
poderia dar falsos-positivos ou falsos-negativos.


Porém, eu já trabalhei com o filter-l7 do linux e sei que funciona muito 
bem. Além disso, dado o poder atual dos processadores, esta métdo não 
interfere na velocidade de transmissão.


Entre as hipóteses que pesquisei:
* netgraph: achei muito complexo, praticamente precisa ter que programá-lo.
* ipfw + divert: não dá, o ipfw pega só o cabeçalho do protocolo, assim, 
não tem o que eu filtrar.

* snort_inline: usa o mecanismo acima, e portanto em nível L2/L3;
* hackear o ipfw: complexo, mas parece mais simples que usar o netgraph;
* ipfw + pipes: é possível usar pipes para enviar tráfego para meu 
programa ? o ipfw envia os dados para o pipe ou só o cabeçalho ?


Enfim, alguém já teve uma experiência deste tipo, ou tem alguma idéia ?

Sds,
Daniel Loureiro.
begin:vcard
fn:Daniel Loureiro
n:Loureiro;Daniel
org:Terminal Maritimo Luiz Fogliatto S/A;Setor de TI
email;internet:[EMAIL PROTECTED]
tel;work:(53) 32341500 Ramal 166
version:2.1
end:vcard

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Filtro L7

2007-10-03 Por tôpico Marcelo Soares da Costa
Filtrar conteudo = squid

snort me parece que vc procura , pode usar ainda ipfw com dumynet para
controle de banda

http://freebsd.rogness.net/snort_inline/

[]'s

Em Qua, 2007-10-03 às 14:29 -0300, Daniel Loureiro escreveu:
 Bom dia,
 
 sou iniciante no FreeBSD, e gostaria de fazer filtragem na camada 7. 
 Ex.: dar uma certa banda para emails, bloquear msn para alguns ips, 
 fazer gráficos por protocolo, etc. No linux eu uso o iptables + 
 filter-l7, mas no freeBSD eu não achei nada parecido.
 
 Eu sei que é possível fazer isso na camada 3, usando portas e ips que 
 estes programas usam, mas acho isso muito gambiarrado e frágil. 
 Afinal, se eu faço shaping em uma porta, o usuário pode usar outra.
 
 Perguntando ao Google, ele me mostrou uma mensagem antiga dos 
 desenvolvedores do ipfw dizendo que não implementariam layer 7 pois 
 seria algo baseado em expressões regulares, o que, além de ser lento, 
 poderia dar falsos-positivos ou falsos-negativos.
 
 Porém, eu já trabalhei com o filter-l7 do linux e sei que funciona muito 
 bem. Além disso, dado o poder atual dos processadores, esta métdo não 
 interfere na velocidade de transmissão.
 
 Entre as hipóteses que pesquisei:
 * netgraph: achei muito complexo, praticamente precisa ter que programá-lo.
 * ipfw + divert: não dá, o ipfw pega só o cabeçalho do protocolo, assim, 
 não tem o que eu filtrar.
 * snort_inline: usa o mecanismo acima, e portanto em nível L2/L3;
 * hackear o ipfw: complexo, mas parece mais simples que usar o netgraph;
 * ipfw + pipes: é possível usar pipes para enviar tráfego para meu 
 programa ? o ipfw envia os dados para o pipe ou só o cabeçalho ?
 
 Enfim, alguém já teve uma experiência deste tipo, ou tem alguma idéia ?
 
 Sds,
 Daniel Loureiro.
 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Filtro L7

2007-10-03 Por tôpico Alessandro de Souza Rocha
Em 03/10/07, Marcelo Soares da Costa[EMAIL PROTECTED] escreveu:
 Filtrar conteudo = squid

 snort me parece que vc procura , pode usar ainda ipfw com dumynet para
 controle de banda

 http://freebsd.rogness.net/snort_inline/

 []'s

 Em Qua, 2007-10-03 às 14:29 -0300, Daniel Loureiro escreveu:
  Bom dia,
 
  sou iniciante no FreeBSD, e gostaria de fazer filtragem na camada 7.
  Ex.: dar uma certa banda para emails, bloquear msn para alguns ips,
  fazer gráficos por protocolo, etc. No linux eu uso o iptables +
  filter-l7, mas no freeBSD eu não achei nada parecido.
 
  Eu sei que é possível fazer isso na camada 3, usando portas e ips que
  estes programas usam, mas acho isso muito gambiarrado e frágil.
  Afinal, se eu faço shaping em uma porta, o usuário pode usar outra.
 
  Perguntando ao Google, ele me mostrou uma mensagem antiga dos
  desenvolvedores do ipfw dizendo que não implementariam layer 7 pois
  seria algo baseado em expressões regulares, o que, além de ser lento,
  poderia dar falsos-positivos ou falsos-negativos.
 
  Porém, eu já trabalhei com o filter-l7 do linux e sei que funciona muito
  bem. Além disso, dado o poder atual dos processadores, esta métdo não
  interfere na velocidade de transmissão.
 
  Entre as hipóteses que pesquisei:
  * netgraph: achei muito complexo, praticamente precisa ter que programá-lo.
  * ipfw + divert: não dá, o ipfw pega só o cabeçalho do protocolo, assim,
  não tem o que eu filtrar.
  * snort_inline: usa o mecanismo acima, e portanto em nível L2/L3;
  * hackear o ipfw: complexo, mas parece mais simples que usar o netgraph;
  * ipfw + pipes: é possível usar pipes para enviar tráfego para meu
  programa ? o ipfw envia os dados para o pipe ou só o cabeçalho ?
 
  Enfim, alguém já teve uma experiência deste tipo, ou tem alguma idéia ?
 
  Sds,
  Daniel Loureiro.
  -
  Histórico: http://www.fug.com.br/historico/html/freebsd/
  Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

questao do FreeBSD con filtro L7 tem como sim ipfw_ng so que tem um
e-mail do patrick dizendo que e tipo programacao e muito complicado.

-- 
Alessandro de Souza Rocha
Administrador de Redes e Sistemas
Freebsd-BR User #117
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Filtro L7

2007-10-03 Por tôpico Marcelo Soares da Costa
A questão eh que tem o jogo de gato e rato , os programs principalmentes
as pestes sempre estão sendo alterados para burlar as regras , então
muda fingerprint o escambau, essa veio do fundo do poço, ficar mantendo
uma base de dados disso é dispendioso e não vale a pena , para isso
squi , snort e nagios podem ajudar muito mas por um periodo de tempo

acho que o ideal é realmente ver qual é o trafego bom e liberar ele , o
trafego podre eu costumo colocar na banda podre , ou seja

tudo em um pipe de 5kbps , quando estou bonzinho, qdo fico chato coloco
uma porcentagem de perda de pacotes

a muito tempo descobri que vc bloquear todas as UDP's que voam e que não
sejam realmente necessarias resolve ou seja , libere UPD para DNS e mais
algum serviço que precise e jogue o resto no lixo , não tem rede p2p que
funcione sem mais sem elas

[]'s

Em Qua, 2007-10-03 às 15:37 -0300, Alessandro de Souza Rocha escreveu:
 questao do FreeBSD con filtro L7 tem como sim ipfw_ng so que tem um
 e-mail do patrick dizendo que e tipo programacao e muito complicado.
 

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Filtro L7

2007-10-03 Por tôpico Daniel Loureiro

Marcelo Soares da Costa escreveu:
 Filtrar conteudo = squid

 snort me parece que vc procura , pode usar ainda ipfw com dumynet para
 controle de banda


obrigado pela resposta Marcelo, mas o squid eu já uso para o conteúdo 
web. Eu queria controlar o uso de aplicativos como emule, msn, etc, 
independente da porta/ip usados. Algo como isto:


http://l7-filter.sourceforge.net/protocols

Poderia ser algo como:

- liberar msn para o 192.168.0.1
# ipfw add 10 allow app msn from 192.168.0.1 to any layer7

- banda reduzida para p2p
# ipfw add 20 pipe 1 app p2p any to any layer7

Tentei eu mesmo fazer um filtro da seguinte forma: criei um programa 
ouvindo a porta 5000 (com IPPROTO_DIVERT) e usei o ipfw para 
divertar (alguém traduza isto ;P) todo o tráfego para ele.


# ipfw add 1 divert 5000 from any to any

Isto funcionou bem, mas o problema é que o ipfw só repassa o cabeçalho 
do pacote, sem os dados. Só o cabeçalho, é útil para fazer um filtro 
L2/L3 (portas/ip/mac), mas é inútil para fazer um filtro L7 (ex., 
procurar pela palavra proto-x-donkey nos dados).


 http://freebsd.rogness.net/snort_inline/

O snort_inline usa o mesmo esquema que eu reproduzi. Como o ipfw só 
repassa cabeçalhos, o máximo que ele vai fazer é filtrar por 
ip/mac/porta, e não pelo conteúdo do pacote.


Se alguém tiver mais alguma idéia...

Sds,
Daniel Loureiro.

begin:vcard
fn:Daniel Loureiro
n:Loureiro;Daniel
org:Terminal Maritimo Luiz Fogliatto S/A;Setor de TI
email;internet:[EMAIL PROTECTED]
tel;work:(53) 32341500 Ramal 166
version:2.1
end:vcard

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Filtro L7

2007-10-03 Por tôpico Daniel Loureiro

Alessandro de Souza Rocha escreveu:

questao do FreeBSD con filtro L7 tem como sim ipfw_ng so que tem um
e-mail do patrick dizendo que e tipo programacao e muito complicado.

este programa, o netgraph + ipfw (ng_ipfw), é bem interessante, mas não 
achei muita documentação e parece ser horrível de usar. Só vou partir 
para ele se não tiver mais possibilidades.


Obrigado,
Daniel Loureiro.
begin:vcard
fn:Daniel Loureiro
n:Loureiro;Daniel
org:Terminal Maritimo Luiz Fogliatto S/A;Setor de TI
email;internet:[EMAIL PROTECTED]
tel;work:(53) 32341500 Ramal 166
version:2.1
end:vcard

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Filtro L7

2007-10-03 Por tôpico Daniel Loureiro

Marcelo Soares da Costa escreveu:

A questão eh que tem o jogo de gato e rato , os programs principalmentes
as pestes sempre estão sendo alterados para burlar as regras , então
muda fingerprint o escambau, essa veio do fundo do poço, ficar mantendo
uma base de dados disso é dispendioso e não vale a pena , para isso
squi , snort e nagios podem ajudar muito mas por um periodo de tempo
é por isso que não quero filtrar usando uma lista de ips ou algo 
parecido, pois vou ter que ficar atualizando. Eu queria algo que 
analisasse o conteúdo dos pacotes, procurando por assinaturas de 
protocolos (que acredito não mudar com tanta freqüência).



a muito tempo descobri que vc bloquear todas as UDP's que voam e que não
sejam realmente necessarias resolve ou seja , libere UPD para DNS e mais
algum serviço que precise e jogue o resto no lixo , não tem rede p2p que
funcione sem mais sem elas
eu vou fazer isto, mas alguns programas eu preciso liberar mesmo (msn, 
voip, etc). Eu gostaria de de pelo menos contabilizar isto para gerar 
gráficos, e também controlar a banda (sem ter que ficar mantendo listas 
de portas/ips).


Obrigado,
Daniel Loureiro.
begin:vcard
fn:Daniel Loureiro
n:Loureiro;Daniel
org:Terminal Maritimo Luiz Fogliatto S/A;Setor de TI
email;internet:[EMAIL PROTECTED]
tel;work:(53) 32341500 Ramal 166
version:2.1
end:vcard

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Filtro L7

2007-10-03 Por tôpico Marcelo Soares da Costa
experimente usar fwd

# regra tipica que redireciona o pacote para o squid
ipfw add 900 fwd 127.0.0.1,3128 tcp from 192.168.0.0/24 to any 80

Msn no squid basta bloquear uma dll , veja nos logs do squid , assim vc
cria acl's para os lixos que usam a porta 80

[]'s

Em Qua, 2007-10-03 às 16:06 -0300, Daniel Loureiro escreveu:
 Marcelo Soares da Costa escreveu:
   Filtrar conteudo = squid
  
   snort me parece que vc procura , pode usar ainda ipfw com dumynet para
   controle de banda
  
 
 obrigado pela resposta Marcelo, mas o squid eu já uso para o conteúdo 
 web. Eu queria controlar o uso de aplicativos como emule, msn, etc, 
 independente da porta/ip usados. Algo como isto:
 
 http://l7-filter.sourceforge.net/protocols
 
 Poderia ser algo como:
 
 - liberar msn para o 192.168.0.1
 # ipfw add 10 allow app msn from 192.168.0.1 to any layer7
 
 - banda reduzida para p2p
 # ipfw add 20 pipe 1 app p2p any to any layer7
 
 Tentei eu mesmo fazer um filtro da seguinte forma: criei um programa 
 ouvindo a porta 5000 (com IPPROTO_DIVERT) e usei o ipfw para 
 divertar (alguém traduza isto ;P) todo o tráfego para ele.
 
 # ipfw add 1 divert 5000 from any to any
 
 Isto funcionou bem, mas o problema é que o ipfw só repassa o cabeçalho 
 do pacote, sem os dados. Só o cabeçalho, é útil para fazer um filtro 
 L2/L3 (portas/ip/mac), mas é inútil para fazer um filtro L7 (ex., 
 procurar pela palavra proto-x-donkey nos dados).
 
   http://freebsd.rogness.net/snort_inline/
 
 O snort_inline usa o mesmo esquema que eu reproduzi. Como o ipfw só 
 repassa cabeçalhos, o máximo que ele vai fazer é filtrar por 
 ip/mac/porta, e não pelo conteúdo do pacote.
 
 Se alguém tiver mais alguma idéia...
 
 Sds,
 Daniel Loureiro.
 
 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Filtro L7

2007-10-03 Por tôpico Alessandro de Souza Rocha
Em 03/10/07, Marcelo Soares da Costa[EMAIL PROTECTED] escreveu:
 experimente usar fwd

 # regra tipica que redireciona o pacote para o squid
 ipfw add 900 fwd 127.0.0.1,3128 tcp from 192.168.0.0/24 to any 80

 Msn no squid basta bloquear uma dll , veja nos logs do squid , assim vc
 cria acl's para os lixos que usam a porta 80

 []'s

 Em Qua, 2007-10-03 às 16:06 -0300, Daniel Loureiro escreveu:
  Marcelo Soares da Costa escreveu:
Filtrar conteudo = squid
   
snort me parece que vc procura , pode usar ainda ipfw com dumynet para
controle de banda
   
 
  obrigado pela resposta Marcelo, mas o squid eu já uso para o conteúdo
  web. Eu queria controlar o uso de aplicativos como emule, msn, etc,
  independente da porta/ip usados. Algo como isto:
 
  http://l7-filter.sourceforge.net/protocols
 
  Poderia ser algo como:
 
  - liberar msn para o 192.168.0.1
  # ipfw add 10 allow app msn from 192.168.0.1 to any layer7
 
  - banda reduzida para p2p
  # ipfw add 20 pipe 1 app p2p any to any layer7
 
  Tentei eu mesmo fazer um filtro da seguinte forma: criei um programa
  ouvindo a porta 5000 (com IPPROTO_DIVERT) e usei o ipfw para
  divertar (alguém traduza isto ;P) todo o tráfego para ele.
 
  # ipfw add 1 divert 5000 from any to any
 
  Isto funcionou bem, mas o problema é que o ipfw só repassa o cabeçalho
  do pacote, sem os dados. Só o cabeçalho, é útil para fazer um filtro
  L2/L3 (portas/ip/mac), mas é inútil para fazer um filtro L7 (ex.,
  procurar pela palavra proto-x-donkey nos dados).
 
http://freebsd.rogness.net/snort_inline/
 
  O snort_inline usa o mesmo esquema que eu reproduzi. Como o ipfw só
  repassa cabeçalhos, o máximo que ele vai fazer é filtrar por
  ip/mac/porta, e não pelo conteúdo do pacote.
 
  Se alguém tiver mais alguma idéia...
 
  Sds,
  Daniel Loureiro.
 
  -
  Histórico: http://www.fug.com.br/historico/html/freebsd/
  Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


quando quero bloquear msn e liberar apenas para um ip tipo so i ip
192.168.0.2 vai ter acesso ao msn uso esta regra o resto fica tudo
bloqueado

ipfw add 5000 prob 0.6 drop tcp from not 192.168.0.2 to not
192.168.0.0/24,200.0.0.0/8,201.0.0.0/8 1863

-- 
Alessandro de Souza Rocha
Administrador de Redes e Sistemas
Freebsd-BR User #117
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Filtro L7

2007-10-03 Por tôpico Marcelo Soares da Costa
ipfw add 4999 allow all from 192.168.0.2 to any 1863 keep-state
ipfw add 5000 prob 0.6 deny all from any to any 1863 keep-state

mas para isso funcionar vc tem que bloquear o msn no squid pois ele usar
a porta http qdo nao consegue conectar na 1863

Em Qua, 2007-10-03 às 17:37 -0300, Alessandro de Souza Rocha escreveu:
 ipfw add 5000 prob 0.6 drop tcp from not 192.168.0.2 to not
 192.168.0.0/24,200.0.0.0/8,201.0.0.0/8 1863 

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Filtro L7

2007-10-03 Por tôpico Alessandro de Souza Rocha
Em 03/10/07, Marcelo Soares da Costa[EMAIL PROTECTED] escreveu:
 ipfw add 4999 allow all from 192.168.0.2 to any 1863 keep-state
 ipfw add 5000 prob 0.6 deny all from any to any 1863 keep-state

 mas para isso funcionar vc tem que bloquear o msn no squid pois ele usar
 a porta http qdo nao consegue conectar na 1863

 Em Qua, 2007-10-03 às 17:37 -0300, Alessandro de Souza Rocha escreveu:
  ipfw add 5000 prob 0.6 drop tcp from not 192.168.0.2 to not
  192.168.0.0/24,200.0.0.0/8,201.0.0.0/8 1863

 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


duvido muito ele usa a porta 80 testa aieu ja fiz este teste nao passa nada

-- 
Alessandro de Souza Rocha
Administrador de Redes e Sistemas
Freebsd-BR User #117
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Filtro L7

2007-10-03 Por tôpico Marcelo Soares da Costa
Aqui é windowsfreezone , so rola bsd e ubuntu, mas funcionou essas
regras ?

o ipfw é match rules , ou seja se ele encontra a regra e aplica não
continua, por isso ele é o mais eficiente filtro de pacotes, a ordem é
das regras são fundamentais

Em Qua, 2007-10-03 às 18:20 -0300, Alessandro de Souza Rocha escreveu:
 Em 03/10/07, Marcelo Soares da Costa[EMAIL PROTECTED] escreveu:
  ipfw add 4999 allow all from 192.168.0.2 to any 1863 keep-state
  ipfw add 5000 prob 0.6 deny all from any to any 1863 keep-state
 
  mas para isso funcionar vc tem que bloquear o msn no squid pois ele usar
  a porta http qdo nao consegue conectar na 1863
 
  Em Qua, 2007-10-03 às 17:37 -0300, Alessandro de Souza Rocha escreveu:
   ipfw add 5000 prob 0.6 drop tcp from not 192.168.0.2 to not
   192.168.0.0/24,200.0.0.0/8,201.0.0.0/8 1863
 
  -
  Histórico: http://www.fug.com.br/historico/html/freebsd/
  Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
 
 
 duvido muito ele usa a porta 80 testa aieu ja fiz este teste nao passa 
 nada
 

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd