Ola pessoal desde sexta feira estou notando muita lentidao no meu link, e descobrir junto com o pessoal da operadora que fui invadido e que os cara tava gerando trafego na porta 25 enviando spanner. uso o script de filtro de mac por ip como segue abaixo e Red Hat 8, o que posso fazer para fechar mais o meu script? posso tomar outra providencia para nao acontecer alem do firewall? como sou new user no linux vou formatar e instalar somente o nescesseario para o server trabalhar.
Obrigado a todos.
#/bin/bash
#Script de Firewall para bloqueio por MACaddress
#Criado por Carlos Eduardo Langoni
#23/01/2003
#
# Funcionamento: Crie um arquivo no formato (a,b);(mac);(IP Source);(nome)
# Aonde a é aceitar e b é bloquear que serve para o caso de haver necessidade de bloquear algum
# IP e MAC, caso b não será bloqueado o IP, apenas o MAC
#
IPT=/sbin/iptables
PROGRAMA=/etc/firewall/firewall
NET_IFACE=eth0
LAN_IFACE=eth1
MACLIST=/etc/firewall/maclist
#
### ATIVA E DESATIVA REGRAS ###
#
TRANS="S" #Transparent proxy (NAT)
NAPSTER="S" #Bloquear NapsteR
IMESH="S" #Bloquear IMesh
BEARSHARE="S" #Bloquear Bearshare
TOADNODE="S" #Bloquear ToadNode
WINMX="S" #Bloquear WinMX
NAPIGATOR="S" #Bloquear Napigator
MORPHEUS="S" #Bloquear Morpheus
KAZAA="S" #Bloquear KaZaA
LIMEWIRE="S" #Bloquear Limewire
MSN="N" #Bloquear MSN
SEGURANCA="S" #Habilitar regras de seguranca
BANDA="S" #Habilitar LIMITADOR DE BANDAa
echo 1 > /proc/sys/net/ipv4/ip_forward
case $1 in
start)
$IPT -F
$IPT -t nat -F
$IPT -t filter -P FORWARD DROP
if [ "$BANDA" = "S" ]; then
/bin/bandlimit start
fi
if [ "$MSN" = "S" ]; then
$IPT -A FORWARD -p tcp --dport 1863 -j DROP #MSN
$IPT -A FORWARD -d 64.4.13.0/24 -j DROP #MSN
$IPT -A FORWARD -d 207.46.110.0/25 -j DROP #MSN
$IPT -A FORWARD -d 207.46.104.20 -j DROP #MSN
$IPT -A FORWARD -j LOG --log-prefix "Pacotes descartados (FORWARD): "
$IPT -A FORWARD -j DROP
fi
if [ "$NAPSTER" = "S" ]; then
$IPT -A FORWARD -d 64.124.41.0/24 -j REJECT
fi
if [ "$IMESH" = "S" ]; then
$IPT -A FORWARD -d 216.35.208.0/24 -j REJECT
fi
if [ "$BEARSHARE" = "S" ]; then
$IPT -A FORWARD -p TCP --dport 6346 -j REJECT
fi
if [ "$TOADNODE" = "S" ]; then
$IPT -A FORWARD -p TCP --dport 6346 -j REJECT
fi
if [ "$WINMX" = "S" ]; then
$IPT -A FORWARD -d 209.61.186.0/24 -j REJECT
$IPT -A FORWARD -d 64.49.201.0/24 -j REJECT
fi
if [ "$NAPIGATOR" = "S" ]; then
$IPT -A FORWARD -d 209.25.178.0/24 -j REJECT
fi
if [ "$MORPHEUS" = "S" ]; then
$IPT -A FORWARD -d 206.142.53.0/24 -j REJECT
$IPT -A FORWARD -p TCP --dport 1214 -j REJECT
fi
if [ "$KAZAA" = "S" ]; then
$IPT -A FORWARD -d 213.248.112.0/24 -j REJECT
$IPT -A FORWARD -p TCP --dport 1214 -j REJECT
fi
if [ "$LIMEWIRE" = "S" ]; then
$IPT -A FORWARD -p TCP --dport 6346 -j REJECT
fi
if [ "$SEGURANCA" = "S" ]; then
# Evitando Spoofing
$IPT -A INPUT -i $NET_IFACE -s 10.0.0.0/8 -j DROP
$IPT -A INPUT -i $NET_IFACE -s 172.16.0.0/12 -j DROP
$IPT -A INPUT -i $NET_IFACE -s 192.168.0.0/16 -j DROP
$IPT -A INPUT -i $NET_IFACE -s 224.0.0.0/4 -j DROP
$IPT -A INPUT -i $NET_IFACE -s 240.0.0.0/5 -j DROP
# Proteção contra Syn-flood
$IPT -A INPUT -p tcp --syn -m limit --limit 1/s -j ACCEPT
# Proteção contra port scanner
$IPT -A INPUT -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit \
--limit 1/s -j ACCEPT
# Proteção contra o ping da morte
$IPT -A INPUT -p icmp --icmp-type echo-request -m limit \
--limit 1/s -j ACCEPT
# Proteção contra pacotes danificados ou suspeitos
$IPT -A INPUT -m unclean -j DROP
fi
for i in `cat $MACLIST`; do
STATUS=`echo $i | cut -d ';' -f 1`
IPORIGEM=`echo $i | cut -d ';' -f 3`
MACORIGEM=`echo $i | cut -d ';' -f 2`
#Se status = a então eu libera a conexao
if [ $STATUS = "a" ]; then
$IPT -t filter -A FORWARD -d 0/0 -s $IPORIGEM -m mac --mac-source $MACORIGEM -j ACCEPT
$IPT -t filter -A FORWARD -d $IPORIGEM -s 0/0 -j ACCEPT
$IPT -t nat -A POSTROUTING -s $IPORIGEM -o $NET_IFACE -j MASQUERADE
$IPT -t filter -A INPUT -s $IPORIGEM -d 0/0 -m mac --mac-source $MACORIGEM -j ACCEPT
$IPT -t filter -A OUTPUT -s $IPORIGEM -d 0/0 -j ACCEPT
# Se for = b então bloqueia o MAC
else
$IPT -t filter -A FORWARD -m mac --mac-source $MACORIGEM -j DROP
$IPT -t filter -A INPUT -m mac --mac-source $MACORIGEM -j DROP
$IPT -t filter -A OUTPUT -m mac --mac-source $MACORIGEM -j DROP
fi
done
if [ "$TRANS" = "S" ]; then
$IPT -t nat -A PREROUTING -p tcp -m multiport -s 10.15.163.0/24 --dport 80 -j REDIRECT --to-ports 3128
fi
#Liberar MSN
$IPT -A FORWARD -p tcp --dport 1863 -j DROP #MSN
#ERRO ABAIXO
$IPT -t nat -A POSTROUTING -s 172.1.1.0/255.255.255.0 -j MASQUERADE
$IPT -t filter -A FORWARD -s 172.1.1.0/255.255.255.0 -d 0/0 -j ACCEPT
#$IPT -t filter -A FORWARD -d 172.1.1.0/255.255.255.0 -s 0/0 -j ACCEPT
#$IPT -t filter -A INPUT -s 172.1.1.0/255.255.255.0 -d 0/0 -j ACCEPT
#$IPT -t filter -A OUTPUT -s 172.1.1.0/255.255.255.0 -d 0/0 -j ACCEPT
echo "FIREWALL ATIVADO SISTEMA PREPARADO"
;;
stop)
$IPT -F
$IPT -Z
$IPT -t nat -F
$IPT -t filter -P FORWARD ACCEPT
echo "FIREWALL DESCARREGADO SISTEMA LIBERADO"
if [ "$BANDA" = "S" ]; then
/bin/bandlimit stop
fi
;;
restart)
$PROGRAMA stop
$PROGRAMA start
;;
esac