Ola Pessoal, gostaria de saber se somente com iptables eu bloqueio um site, algo tipo:
iptables -A OUTPUT www.terra.com.br - DROP
ou seja só com regras do ipatbles eu bloqueio pelo DNS ou preciso do squid pra isso?? :?:
Ola Pessoal, gostaria de saber se somente com iptables eu bloqueio um site, algo tipo:
iptables -A OUTPUT www.terra.com.br - DROP
ou seja só com regras do ipatbles eu bloqueio pelo DNS ou preciso do squid pra isso?? :?:
soh com o iptables da pra bloquear
iptables -A FORWARD -d site.com.br -j DROP
iptables -A FORWARD -s site.com.br -d SUA_REDE -j DROP
Como o ice man disse , soh com iptables da pra bloquear sim. se vc quiser bloquear apenas uma baixa quantidade de sites tudo bem , no entanto se vc quiser bloquear varios sites o melhor eh usar squid , senao o seu codigo de filtragem vai ficar muito grande. com o squid fica mais facil gerenciar os sites bloqueados
tentei os comandos mas naum deu, apareceu essa mensagem:
#iptables v1.2.7a: host/network "ww.terra.com.br" not found
que mensagem eh essa?? ta faltando alguma coisa no linux??
:?: :?:
Na verdade quero fazer o seguinte:
1) bloquear todos os sites....
2)Abrir somente alguns sites, por exemplo:
- Banco Bradesco, Itau e Brasil
3) Site da empresa e WebMail da Empresa.
4) Serviço de Email para todos e Liberar MSN pra alguns.
Minha rede usa a faixa de ip 192.168.2.x
Podem me passar a dica??
Bom, quanto ao erro acima é pq vc ao invéz de digitar www.terra.com.br digitou ww.terra.com.br dai ele não acha mesmo :twisted:
Mas se vc quer fazer esse esquema de bloquear tudo e liberar somente alguns eu aconselho usar o squid.
retificando por dificuldades de leitura:
eu digitei:
#iptables -A FORWARD -d www.terra.com.br -j DROP e
# iptables -A FORWARD -s www.terra.com.br -d 192.168.2.0/24 -j DROP
e deu esse erro:
iptables v1.2.7a: host/network "www.terra.com.br" not found
? Alguem podia me dizer pq dessa mensagem por favor??
Verifica se o seu linux está resolvendo o endereço, tenta pinga no www.terra.com.br e vê se ele responde.
#ping www.terra.com.br
Se não estiver respondendo, vc vai precisar especificar o servidor DNS no /etc/resolv.conf
Amigo, quando você utiliza a chain FORWARD, o destino é a máquina na internet, não a máquina interna. Logo quando você manda essa regra:
# iptables -A FORWARD -s www.terra.com.br -d 192.168.2.0/24 -j DROP
Ele vai procurar na tua rede interna uma máquina com o DNS que resolve "www" e que o domínio seja "terra.com.br". Só a primeira regra eu acho que já resolve, mas para o que você quer fazer, eu acho que fica muito mais fácil você colocar os sites que você quer que os clientes da sua rede acessem em um documento texto e colocar no Squid para que todos os acessos, com excessão daqueles que são enviados para os sites do arquivo texto, devem ser bloqueados, sacou? (Eu sei que eu devo ter dado um nó na sua cabeça, mas leia uma dúzia de vezes que tu acaba entendendo, hehehe).
Abraços!
segundo o ice-man se eu aplicar a regra:
#iptables -A FORWARD -s www.qqsite.com.br -d minha_rede -j DROP
isso impedira qq maquina dessa rede de navegar no DNS especificado.
Entaum teoricamente eu posso bloquear fazendo assim: :?: :?:
#iptables -A FORWARD -d minha_rede -j DROP
== Bloqueio toda conexao com a web ===
#iptables -A FORWARD -s under-linux.org -d um_ip_da_rede -j ACCEPT
=== Libero acesso ao site que usuario precisa====
#iptables -A FORWARD pop -d um_ip_da_rede -j ACCEPT
#iptables -A FORWARD smtp -d um_ip_da_rede -j ACCEPT
Alguem pode me mandar o comando correto.
:lol: :lol:
Eu conseguindo como quero posto o resultado aki pra outros consultarem.
pra usar a opcao de especificar portas vc tb tem q usar o protocolo junto...
tipo
iptables -A FORWARD -p tcp --dport 25 -j DROP
Ô schuch , como disse o Spelk , vc consegue pingar o endereço www.terra.com.br ? faça o seguinte: apague essas regras citadas anteriormente ( com iptables -t filter -F ) e tente pingar o endereço. se vc conseguir , insira apenas a primeira regra citada inicialmente pelo ice man ( a segunda nao esta errada , mas tambem nao é absolutamente necessaria ). se vc nao conseguir ou vc nao ajustou o seu dns em /etc/resolv.conf ou tá faltando alguma coisa na sua tabela de roteamento...
ta indo longe de mais esse topico .. a coisa eh simples -> estude o iptables , naum ira demorar mais que 20 min , alem de vc poder entender e fazer mais regras , vc ira entender muita coisa
1) Correto, iptables.under-linux.org
2) Use squid, isso eh trabalho de proxy e nao de firewall, vai ficar um firewall carregada com regras inuteis.
Amigo, é muito, mas muito mais facil de utilizar o squid para efetuar a tarefa de Proxy do que o IPChains. é muito simples.
vc cria 3 acl
uma liberando o conteudo de um aquivo texo
outra barrando todo o resto.
simples de tudo.
o ipchain é muito utilizado no Linux Coyote, (eu utilizo muito) mas se colocar muitas regras a net nao fica legal nao.
Aliás, Qual o Linux que vc está utilizando?
Valeu pessoal eu já fiz o lance, usando iptables, usei a dupla mac+ip, ficou muito bacana. to aprimorando assim que testar e ficar melhor posto como artigo..
Ta funcionando uma blz, barra todos os sites, libera pra uns geral e pra outros parcial ou soh email.
Vc ainda pode colocar quais sites o usuario podera acessar.
ficou bem legal. Usando somente IPTABLES e de quebra coloquei o CBQ.
Valeu pelas ajudas...
Quem quiser o script como ta hoje, eh soh mandar email que mando.
[email protected]
e o seguinte, sobre o problema de naum funcionar o www.terra.com.br , era porque eu não tinha configurado um dns pra resolver o nome.
Depois que arrumei funcionou blz.