Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/06/2006, 18:56
Avatar de Sh4ka
Sh4ka
 
Fecha de Ingreso: marzo-2005
Mensajes: 205
Antigüedad: 19 años, 10 meses
Puntos: 0
Bash script, borrar ciertas lineas de un archivo desde un script

Hola amigos, como es costumbre yo con mis dilemas bashcripteros

Actualmente he realizado un script que busca ataques en un modulo de un servicio de un server, y si supera "X" numero de ataques, lo banea.

El firewall se basa en un deny.list, o sea, guarda y lee los hosts a banear desde un archivo "deny.list" por ej. desde mi script cuando se banean conexiones, lo hago de la siguiente manera para tener referencia que fue ese script el que baneo al host.

echo " ### Baneado por mi script"
echo "211.55.66.32"
echo " ### Baneado por mi script"
echo "115.25.65.31"


En base a eso me baso para saber si lo banee yo o si fue baneado automaticamente por el firewall.

Ahora, como muchos hosts son de IP dinámica, o si banee a alguien por error, quiero meter un cron que cada 12 horas por ejemplo borre las IPs que mi script baneo, que al resto de las IPs (sea por fuerza bruta, escaneos, etc, etc) baneadas las deje... como puedo hacer ???

Se me ocurre hacer un grep y encontrar la cadena "Baneado" y en base a eso, borrar esa misma linea, y la linea siguiente en el archivo.. pero .. como podría hacerlo ¿?¿?¿?

Gracias.