Nombre: acceso.sh
Autor: Flypp
Lenguaje: Bash
Licencia: Libre
Propósito: Cortar/dar acceso a las direcciones IP dadas
Ejemplos de uso: ¿Alguna vez habéis detectado una conexión a una dirección IP de la que desconfiáis?. Con este sencillo script podréis indicar que se desechen todos los paquetes TCP/IP que vengan o vayan hacia esa dirección. También podréis "castigar" o "banear" a direcciones IP (por ejemplo, a "leechers" que detectéis desde vuestro cliente torrent favorito).
Por ejemplo: Yo lo utilizo para "castigar" a los usuarios de Ares, que es un programa que ya no tiene soporte y es un coladero de virus para los windowseros que, irresponsablemente, lo utilizan. Así que...
./acceso.sh <dirección IP>
código escribió:
###########################################################
# Script para cortar la recepción/envío de paquetes TCP/IP
# a una dirección IP señalada
###########################################################
function cortar {
# Se añaden las reglas iptables de desechar el tráfico
# desde y hacia las direcciones IP indicadas
for i in $*; do
iptables -A INPUT -s $i -j DROP
iptables -A OUTPUT -d $i -j DROP
done
# Listado de las reglas iptables actuales
iptables -L -n
# Finalización del script
break
}
function abrir {
# Se eliminan las reglas iptables de desechar el tráfico
# desde y hacia las direcciones IP indicadas
for i in $*; do
iptables -D INPUT -s $i -j DROP
iptables -D OUTPUT -d $i -j DROP
done
# Listado de las reglas iptables actuales
iptables -L -n
# Finalización del script
break
}
# Preguntar qué acción se va a realizar con las IP's indicadas
echo "¿Qué acción se llevará a cabo con las IP's indicadas?"
select accion in Cortar Abrir Cancelar; do
if [ $accion = "Cortar" ]; then
cortar $*
elif [ $accion = "Abrir" ]; then
abrir $*
else
break
fi
done