olá pessoal, recentimente enfentei o seguinte problema que relatei no seguinte link:
http://ubuntuforum-br.org/index.php/topic,69120.msg384936.html#msg384936Resumindo, eu usava uma versão mais antiga do iptables (versão 1.4.0) e várias de minhas regras funcionavam perfeitamente, porém o meu servidor deu "kernel panic" e eu aproveitei para atualizar logo ele todo, coloquei o ubuntu novo, recompilei o kernel para funionar o layer7 e tudo, porém como não consegui instalar o iptables 1.4.0 no kernel 2.6.34 tive que me contentar com o iptables versão 1.4.8, onde algumas de minhas regras antigas não funcionam.....
Conforme fui ajudado no tópico acima percebi que minhas regras antigas não deveriam funcionar nem mesmo no iptables antigo, mas enfim.
O problema agora é uma outra regra, uma que bloqueia vídeos.
Eu tenho a seguinte situação, quero bloquear os vídeos, porém, tenho que liberar para a direção da empresa e para outros setores que promovem treinamento e precisam acessar o youtube.
Pois bem, minha regra antiga era essa:
## regra para bloqueio de vídeo dos orelhas secas:
iptables -I FORWARD -m layer7 --l7proto httpvideo -j DROP
iptables -I OUTPUT -m layer7 --l7proto httpvideo -j DROP
iptables -t nat -I PREROUTING -m layer7 --l7proto httpvideo -j DROP ###(essa regra estou desconsiderando pois não sei se precisava no iptables antigo e no novo já dá erro logo de cara)
iptables -t nat -I OUTPUT -m layer7 --l7proto httpvideo -j DROP ###(essa regra estou desconsiderando pois não sei se precisava no iptables antigo e no novo já dá erro logo de cara)
### regra para liberar video para diretoria
iptables -I FORWARD -s "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT
iptables -I FORWARD -d "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT
iptables -I INPUT -s "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT
iptables -I INPUT -d "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT
iptables -I OUTPUT -s "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT
iptables -I OUTPUT -d "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT
iptables -t nat -I PREROUTING -s "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT###(essa regra estou desconsiderando pois não sei se precisava no iptables antigo e no novo já dá erro logo de cara)
iptables -t nat -I PREROUTING -d "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT###(essa regra estou desconsiderando pois não sei se precisava no iptables antigo e no novo já dá erro logo de cara)
iptables -t nat -I OUTPUT -s "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT###(essa regra estou desconsiderando pois não sei se precisava no iptables antigo e no novo já dá erro logo de cara)
iptables -t nat -I OUTPUT -d "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT###(essa regra estou desconsiderando pois não sei se precisava no iptables antigo e no novo já dá erro logo de cara)
####################################################################################################
Reparem que na regra de bloqueio eu bloqueei OUTPUT e FORWARD, não bloquei INPUT, pois se bloqueasse INPUT eu não consegui liberar para a diretoria, como ocorre hoje na nova regra:
### regra para bloqueio de video - iptables novo:
iptables -I FORWARD -m layer7 --l7proto httpvideo -j DROP
iptables -I INPUT -m layer7 --l7proto httpvideo -j DROP
iptables -I OUTPUT -m layer7 --l7proto httpvideo -j DROP
### regra para liberar video para diretoria:
iptables -I FORWARD -s "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT
iptables -I FORWARD -d "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT
iptables -I INPUT -s "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT
iptables -I INPUT -d "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT
iptables -I OUTPUT -s "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT
iptables -I OUTPUT -d "ip_liberado" -m layer7 --l7proto httpvideo -j ACCEPT
#################################################################
Então,
o estranho é que com a versão antiga do iptables eu não precisava bloquear o INPUT e mesmo assim os vídeos eram bloqueados, mas na versão nova se eu não bloquear o INPUT os vídeos não são bloqueados.
O problema é que tanto na versão antiga como na nova, se eu bloqueio o INPUT depois não consigo liberar o vídeo para determinados IPs mesmo inserindo uma regra ACCEPT no INPUT para esses ips que tento liberar.
OBS.: o meu bloqueio/liberação de MSN funciona normal com a seguinte regra:
### bloqueio
iptables -I FORWARD -m layer7 --l7proto msnmessenger -j DROP
### liberação
iptables -I FORWARD -s "ip_liberado" -m layer7 --l7proto msnmessenger -j ACCEPT
iptables -I FORWARD -d "ip_liberado" -m layer7 --l7proto msnmessenger -j ACCEPT
################################################################
Alguém conhece a forma correta de fazer esse bloqueio de vídeo para toda a rede mas criando exceções ?
OBS.: sites de vídeos conhecidos como youtube e outros já são bloqueados no squid, mas nunca se sabe quando um usuário espertinho acha um site de video em outro país e que consequentemente o squid não bloqueie. Por isso uso essa regra no firewall..
Desde já agradeço ao pessoal do fórum.