Ver Resposta Única
Antigo 02-07-2008, 17:43   #37 (permalink)
Padrão

Aeee.... Não conheço esse comando, mas se ele for igual ao uptate-rc.d ele põe esse script pra ser rodado em todos os rcs. Provavelmente tem alguma diferença de serviços do rc entre Debian e OpenSuSe...

Ok, fiz esse script ontem de noite bem rápido. Ele não é perfeito nem o mais seguro, mas já é alguma coisa! Como disse fiz ele correndo, podem haver algum erro... Mas qualquer coisa agente resolve...

Código:
#!/bin/bash 
eth_ext=
eth_int=
rede_interna=
#################################
######### Inicialização #########
#################################
 
# limpando as tabelas
iptables -F 
iptables -t nat -F 
iptables -t mangle -F 
 
# Ativando o roteamento 
echo 1 > /proc/sys/net/ipv4/ip_forward 
 
#################################
#########  Proteções ############
#################################
 
# Protege contra os "Ping of Death" 
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT 
 
# Protege contra os ataques do tipo "Syn-flood, DoS, etc" 
iptables -A FORWARD -p tcp -m limit --limit 1/s -j ACCEPT 
 
# Protege contra port scanners
iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT 
 
# Mascarando a rede 
iptables -t nat -A POSTROUTING -s 10.83.96.0/24 -o eth0 -j MASQUERADE 
 
# libera acesso interno da rede 
iptables -A INPUT -p tcp --syn -i eth1 -j ACCEPT 
iptables -A OUTPUT -p tcp --syn -i eth1 -j ACCEPT 
iptables -A FORWARD -p tcp --syn -i eth1 -j ACCEPT 
 
# Políticas Padrões
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
 
 
#################################
#####  Regras de filtragem ######
#################################
 
#### Chain INPUT ####
# Libera interface de loopback
iptables -A INPUT  -i lo -j ACCEPT
 
# Libera entrada de pacotes de conexões estabelecidas
iptables -A INPUT -i $eth_ext -m state --state ESTABLISHED,RELATED -j ACCEPT
 
# Libera entrada de pacotes de novas conexões
iptables -A INPUT -i $eth_int -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
 
# Todo tráfego vindo da rede interna também é aceito
iptables -A INPUT -s $rede_interna -i $eth_int -j ACCEPT
 
#### Chain OUTPUT ####
 
#### Chain FORWARD ####
#Libera forwarding da rede interna pra internet
iptables -A FORWARD -s $rede_interna -i eth_int -o eth_ext -j ACCEPT
 
#Libera forwarding da internet pra rede interna 
iptables -A FORWARD -d $rede_interna -i eth_ext -o eth_int -j ACCEPT
 
 
#################################
######## Regras de NAT ##########
#################################
 
#### Chain PREROUTING ####
 
 
#### Chain POSTROUTING ####
#Bloqueia acessos à web que não sejam atraves do Squid
iptables -t nat -A POSTROUTING -s $rede_interna -o eth_ext -p tcp --dport 80 -j DROP
 
#Regra de NAT
iptables -t nat -A POSTROUTING -s $rede_interna -o eth_ext -j MASQUERADE
 
#### Chain OUTPUT ####
Só preenche as variáveis do início, por exemplo:
eth_ext=eth1
eth_int=eth0
rede_interna=192.168.1.0/24

Qualquer coisa posta ai...
Se alguém tiver alguma crítica ou sugestão ao script posta também!

Tenho que trabalhar... Fui...
__________________
Magnun Leno
CISCO CCNA: CSCO10991731
e-mail: magnunΘunderlinux.org
Blog: Meu blog no Under!
Participe de uma comunidade!

If you choose not to decide, you still have made a choice." - Freewill (Rush)

Última edição por Magnun; 02-07-2008 às 17:48.
Magnun
Moderador
 
Avatar de Magnun
 
Registrado em: Nov 2006
Localização: Distrito Federal
Distribuição: Debian/Ubuntu
Posts: 670
Agradeceu: 143
Agradecido 99 vez(es) em 97 Posts
Envios no Blog: 9
Reputação: 126 Magnun Magnun Magnun Magnun
Magnun está offline