gustavorglima
(usa CentOS)
Enviado em 02/10/2013 - 16:53h
Arrumei, está parcialmente funcionando...
Assim que rodei o script fiz o seguinte teste, acessei o apache ou seja a porta 80 Abriu normalmente.
Depois fui no servidor no qual usa a porta 7777 abriu também
Então removi a range no qual pertence meu IP e rodei o script novamente, e fiz o mesmo teste.
O apache não consegui acessar, mas a porta 7777 eu consegui.
Preciso que seja bloqueado os dois, tem alguma idéia porque está acontecendo isso?
Segue o código atual: (ah como coloco o script nessa caixa com a sintaxe pra ficar mais organizado a leitura?)
#!/bin/bash
#--------------------------- CONFIGURACOES ---------------------------
ArquivoListaIP=ips.txt
LiberarPortas=(80,7777)
PortaSSH=22
#----------------------------------------------------------------------
echo "Carregando modulos..."
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_nat
/sbin/modprobe iptable_mangle
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_REDIRECT
/sbin/modprobe ipt_MASQUERADE
echo "Iniciando configuração..."
#Limpar iptables ------------------------------------------------------
iptables -F
#Fechando todas conexões ----------------------------------------------
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
# Liberando acesso SSH ------------------------------------------------
echo "Liberando o SSH"
iptables -I INPUT -p tcp --dport $PortaSSH -i venet0 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 -j DROP
iptables -A INPUT -p tcp --dport $PortaSSH -j ACCEPT
iptables -A INPUT -p udp --dport $PortaSSH -j ACCEPT
#Libera conexões estabilecidas ----------------------------------------
echo "Liberando conexoes estabelecidas..."
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -m state --state RELATED,ESTABLISHED,NEW -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED,NEW -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
# Liberando portas ----------------------------------------------------
# Abrir portas TCP
BADIPS=$(egrep -v "^#|^$" $ArquivoListaIP)
for IP in $BADIPS
do
iptables -A INPUT -p tcp -m iprange --src-range $IP -m multiport --dports $LiberarPortas -j ACCEPT
echo " > Range ($IP) Liberada com sucesso!"
done
echo "> Abrindo portas UDP"
/sbin/iptables -A INPUT -p udp -m multiport --dports $LiberarPortas -j ACCEPT
# Bloqueando qualquer outro acesso as portas --------------------------
for port in ${LiberarPortas[@]}
do
echo "> Bloqueando outros acessos a porta $port"
iptables -A INPUT -i eth0 -p tcp -m multiport --dports $port -j DROP
done
echo "Descartando demais conexões!"
# Descartando tentativa de conexões não autorizadas nas portas 80 e 7777
iptables -A INPUT -p tcp --syn -m state --state NEW -m multiport --dports 80,7777 -j DROP
# Descarta pacotes inválidos
iptables -A INPUT -m state --state INVALID -j DROP
echo
echo "FiM!"