No caso aqui, o L7 n~ao está instalado nao...Citação:
Postado originalmente por Michael
Eu queria saber é se o controle de banda só funcionava com estes l7, e é o que acontece (pelo visto).
Versão Imprimível
No caso aqui, o L7 n~ao está instalado nao...Citação:
Postado originalmente por Michael
Eu queria saber é se o controle de banda só funcionava com estes l7, e é o que acontece (pelo visto).
blz Michael.. não falei no sentido de provocação não, apenas pra constar... hehe :P
Jim,
Mas o comentário que fiz foi em âmbito de não estar nem incrementando a leitura no iptables -nvL. Se não tá incrementando os 'hits' na regra, significa que ela não tá pegando o pacote mesmo, então nem se o l7 tiver habilitado direito, vai funcionar. Mesmo que desse erro e tudo por kernel não estar compilado ou coisa do tipo, a regra deveria estar sendo 'contada' toda vez que algum pacote pertinente passasse por ela. Se não está sendo contado, provavelmente a regra não está absorvendo pacote nenhum que passa pela PREROUTING (algo como in-interface, ip não está batendo com a realidade) -- por isso testar com o -j LOG para ver se a regra que você está colocando está pegando o IP e porta que você quer. Enquanto o pacote não for 'catado' pela regra, ele não vai nem 'tentar' fazer a interpretação do layer7, o que só então, pode resultar em erro ou não devido ao layer7 estar ou não implementado corretamente... Aliás, acho que só do iptables aceitar a regra, já significa que o kernel e iptables está compilado com o suporte ao layer7.
Além do mais, com o -j LOG, você pode verificar (uma vez pêgo o pacote que você quer) se pode afinar a regra ou se deve deixá-la um pouco mais ampla... E se o -j LOG não pegar, significar que a regra do layer7 também não irá pegar. Note que é bom você -trocar- a regra do layer7 para a regra do LOG enquanto depurando, depois você pode deixar só a do layer7 quando souber que ele vai implementar direitinho no contador do iptables -nvL.
Uma observação que acho importante também, você deve saber, mas alguém de fora que possa estar acompanhando o tópico pode não esperar, é que na corrente prerouting só batem pacotes 'de abertura' de conexão. Então para um pacote 'bater' ali, não basta estar fazendo um download de um site, mas sim, enquanto monitora a regra no PREROUTING, -iniciar- o download de um arquivo (de site http por ser porta 80 a de seu interesse), ou abrir/reabrir alguma página web que se esteja usando como teste. Ou, simplesmente, abrir um 'telnet site 80' só para constar a 'abertura de conexao'.
Espero que compreenda a parte que estou tentando explicar: não tou considerando falhas do layer7, mas algo que pode estar prevenindo o pacote de ser absorvido pela regra que você criou, algo -antes- de precisar saber se o l7 funciona ou não. Por isso a sujestão de depurar a regra com uma outra mais simples afim de eliminar qualquer motivo que possa estar significando o 'nao marcamento' do pacote.
Já levando em conta o l7, pode ser que o 'pattern' http que esteja usando não esteja 'batendo' com o pacote que passa pela regra e talvez -isso- tenha a ver com o lance de POSTROUTING que o pessoal falou, e que o pacote que inicia a conexão seja sensivelmente diferente dos pacotes para a conexão já estabelecida... Pelo fato do filtro seguir o tal 'pattern' que é como um 'estilo ou característica do pacote', pode ser que em determinadas situações o http seja diferente e não bate aquele padrão do http que vc escolheu.
Pois Avenger... a regra nao está incrementando no iptables -nvL, e não aparece nada no -j LOG não... estou recompilando o kernel aqui (demora mais, hardware maldito) O mais estranho é que se eu usaro iptables pra BLOQUEAR funciona perfeitamente, lembrando que as únicas regras que possuo são os masquerade dos dois links e essa MARK com layer7... vou aguardar ele recompilar tudo aqui e depois dou um retorno aqui...
Eu não entendi bem a sua perguta...Citação:
Postado originalmente por vonlinkerstain
:oops: :oops:
Faz o -j LOG sem o --layer7 --pattern http,
Faz tipo algo mais básico:
iptables -t mangle -I PREROUTING -j LOG -s 192.168.7.100 -p tcp -dport 80
Se desse jeito pegar, aí você arranca essa regra e coloca a com o --layer7. Se só de colocar o --layer7 ele não catar mais, aí sim pode ser que o kernel tava precisando ser compilado mesmo.
Foi o que eu disse desde o início.. se eu redireciono com regras simples, funciona tudo perfeito, só nao funciona com as regras do layer7...
Hehe... Então, se não foi o kernel sem compilar nem iptables sem recompilar também, vai ser o tal padrão a se casar do pacote que não tá 'casando'. Talvez dependendo da corrente que o pacote teja (se é o que inicia a conexão por exemplo) ele seja sensivelmente diferente ou, ainda, o arquivo .pat lá não está certo ou nem está instalado... ou ainda pode ser que foi substituido por outro acidentalmente. :)
hehehe... se ele tá bloqueando, como eu poderia nao ter recompilado o kernel ou o iptables? Como eu disse... assim que tiver um tempo aqui faço os testes...Citação:
Postado originalmente por Avenger
Olhae gente:
Citação:
teste:/# uname -r
2.6.12.1
Porémmm.... continua saindo pelo PPP e não pelo adsl :@:Citação:
teste:/# iptables -t mangle -nvL
Chain PREROUTING (policy ACCEPT 12660 packets, 4564K bytes)
pkts bytes target prot opt in out source destination
9 9416 MARK all -- * * 192.168.7.0/24 0.0.0.0/0 LAYER7 l7proto http MARK set 0x2
Chain INPUT (policy ACCEPT 4399 packets, 470K bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 7763 packets, 4032K bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 2943 packets, 356K bytes)
pkts bytes target prot opt in out source destination
Chain POSTROUTING (policy ACCEPT 10700 packets, 4388K bytes)
pkts bytes target prot opt in out source destination
9 9416 MARK all -- * * 192.168.7.0/24 0.0.0.0/0 LAYER7 l7proto http MARK set 0x2
Minhas regras com layer7:
Se eu marco com as regras seguintes funciona:Citação:
iptables -t mangle -A PREROUTING -s 192.168.7.0/24 -m layer7 --l7proto http -j MARK --set-mark 2
iptables -t mangle -A POSTROUTING -s 192.168.7.0/24 -m layer7 --l7proto http -j MARK --set-mark 2
Citação:
iptables -t mangle -A PREROUTING -p tcp --dport 80 -s 192.168.7.0/24 -j MARK --set-mark 2
no provedor onde eu trabalhava antes meu chefe se gabava de ter barrado p2p e jogos online completamente.
no provedor que trabalho hj em dia nada é barrado, nenhuma porta nem nada, apenas tudo está bem controladinho em tabelas.
adivinhem para onde os clientes do meu antigo emprego estão migrando?
eu sou cliente qdo chego em casa e se me bloqueassem alguma coisa na minha adsl eu cancelaria na hora. Internet em casa sem poder baixar musicas e filmes não me serve.