É nosso dever enquanto administradores de uma rede corporativa, assegurar a confidencialidade das informações (que são vitais para a sustentação do negócio). Assim, o Firewall se torna uma ferramenta fundamental para o administrador estabelecer um maior nível de segurança no acesso às informações. Bem, vamos ao IPTables...
Agora basta tornar o arquivo executável e iniciá-lo com os comandos abaixo:
# chmod 750 /etc/rc.d/rc.firewall | ./rc.firewall
Bom, está aí uma boa solução para aumentar a segurança de uma rede corporativa. Mas apenas um firewall não basta para manter um bom nível de segurança, pois as formas de ataque são diversas, contudo podemos fazer uso de várias ferramentas integradas, como firewall, proxy, política de usuários, etc. Mas fica para um próximo artigo.
Espero ter contribuído um pouco com o meu conhecimento sobre o assunto.
[4] Comentário enviado por zilli em 18/06/2007 - 08:34h
Parabéns pelo artigo !
Como esse é um assunto que sempre é de interesse, levanto apenas algumas situações que se bem discutidas será de grande aprendizado à todos nós.
1) A primeira ação que percemos no script é o PREROUTING. No exemplo do redirecionamento do SQUID para a porta 3128 fica a questão, ao redirecionarmos o tráfego para a porta 3128, isso não acarreta em uma entrada INPUT para essa porta ? E se isso for verdade irá funcionar, já que a política padrão do INPUT é DROP ?
2) Para quem trabalha com subredes (192.168.2.x, 192.168.3.x..etc), qual a melhor maneira de fazer com que todos tenham acesso a internet ?
3) Percebemos em scrips espalhados pela internet as vezes o uso indefido do FORWARD ou o mesmo é confundido com o OUTPUT. Afinal usamos o FORWARD para que ?
[5] Comentário enviado por rafael martins em 18/06/2007 - 09:43h
Bom dia, Daniel. Você tem razão no questionamento 1. Eu me esqueci de acrescentar a regra INPUT liberando a porta 3128.
iptables -A INPUT -p tcp --dport 3128 -j ACCEPT
No questionamento 2 a resposta é simples. Você terá que alterar as variáveis de rede. Veja como ficaria:
EM VEZ DE:
### Interfaces de rede
INT=eth0
EXT=ppp0
FICARIA:
### Interfaces de rede
INT=eth+
EXT=ppp0
O + significa eth0, eth1, eth2 e assim por diante. Sendo assim, todas as suas lan's serão liberadas.
Com relação ao questionamento 3, o FORWARD é consultado para o tráfego entre redes, tráfego redirecionado para outra máquina. Vou colocar alguns exemplos práticos:
Envio e recebimento de e-mails pela rede local; Neste caso é feito FORWARD nas portas 25 e 110, pois o outlook irá se conectar ao provedor de e-mails nestas portas. É um tráfego da rede local para a rede externa.
iptables -A FORWARD -i $INT -o $EXT -p tcp --dport 25 -j ACCEPT
iptables -A FORWARD -i $INT -o $EXT -p tcp --dport 110 -j ACCEPT
Acessar um servidor FTP na internet; Fazer FORWARD na porta 21 liberando para o ip do servidor ou liberar todo o acesso à essa porta
iptables -A FORWARD -d [ip do servidor] -p tcp --dport 21 -j ACCEPT
iptables -A FORWARD -i $INT -o $EXT -p tcp --dport 21 -j ACCEPT
Podemos fazer mais uma infinidade de coisas com esse Chain. Espero ter esclarecido as dúvidas.
Um abraço.
[7] Comentário enviado por marceloespindola em 07/07/2007 - 14:52h
Pessoal estou escrevendo um artigo aqui para o viva o linux sobre scrippt de firewall, ele está completo pois levei muito tempo para desenvolve-lo e tinha objetivo de reunir as principais soluções e dúvidas sobre firewall para este artigo, mas como quero construir um bom artigo ainda está em fase de construção para o vivaolinux, entretanto estou disponibilizando no endereço http://marcelolinux.blogspot.com/2007/07/meu-primeiro-artigo-do-vivaolinux.html
os arquivos e o artigo referente a script de firewall completo.
Acabei retirando algumas partes dele, mais em geral os erros estavam em espaços dados entre NEW,ESTABLISHED e a utilma linha do script.
Ótimo artigo!
Valeu!
[15] Comentário enviado por jeff.jno em 30/06/2011 - 20:21h
Estou recebendo a seguinte mensagem quando rodo o script, será que é erro? Não intendi direito.
Eu testei se nao liberar a porta nao passa. Valew muito bom o script,
olha as mensagens que eu recebo.
iptables v1.4.4: "--state" requires a list of states with no spaces, e.g. ESTABLISHED,RELATED
Try `iptables -h' or 'iptables --help' for more information.
iptables v1.4.4: "--state" requires a list of states with no spaces, e.g. ESTABLISHED,RELATED
Try `iptables -h' or 'iptables --help' for more information.
iptables v1.4.4: "--state" requires a list of states with no spaces, e.g. ESTABLISHED,RELATED
[17] Comentário enviado por jonnatha_faria em 04/08/2014 - 11:16h
Amigo, eu criei um script de firewall aki, e procurando sobre o erro presente no meu encontrei esse seu.. Meu problema é o seguinte... Minhas políticas padrão são todas DROP (INPUT, OUTPUT e FORWARD), porém noto que minha LAN de vez em qd dah uma garrada de menos de um segundo e volta, pouco né, mas isso eh suficiente pra dar pau nos downloads e vídeos carregando. Notei que isso só acontece quando uso o "iptables -P OUTPUT DROP". Sabe qual o motivo? Porque resolveu no seu usar o OUTPUT ACCEPT??? Vlw.