Hola,
Estoy haciendo un mini-firewall con iptables + un miniscript en shell script (Bash).
De momento estoy logeando todo el trafico en syslog... para ello tengo esto:
Código:
iptables -A INPUT -p tcp --dport 22 -j LOG --log-prefix "firewall "
Es decir, lo guardo via syslog y añado el prefijo "firewall ", notese el espacio al final de la cadena prefix "firewall ". Es importante el espacio del final ya que si no se solapa... con la siguiente cadena, ejemplo:
Correcto:
Cita: Feb 6 00:47:59 linux kernel: firewall IN= OUT=eth0 SRC=10.10.10.10 DST=10.10.10.11 LEN=40 TOS=0x00 PREC=0x00 TTL=45 ID=57270 PROTO=TCP SPT=46519 DPT=860 WINDOW=2048 RES=0x00 SYN URGP=0
Mal:
Cita: Feb 6 00:47:59 linux kernel: firewallIN= OUT=eth0 SRC=10.10.10.10 DST=10.10.10.11 LEN=40 TOS=0x00 PREC=0x00 TTL=45 ID=57270 PROTO=TCP SPT=46519 DPT=860 WINDOW=2048 RES=0x00 SYN URGP=0
El prefijo puede variar y como va a aparecer en varios sitios.. he preparado una variable para almacenar esa cadena, en concreto lo que tengo es esto:
Código:
LOG="-j LOG --log-prefix \"firewall \""
iptables -A INPUT -p tcp --dport 22 $LOG
Al ejecutar obtengo este error:
Cita: # /etc/init.d/firewall.sh
Bad argument `"'
Try `iptables -h' or 'iptables --help' for more information.
He probado de muchisimas formas, sin exito... ¿Alguna forma de solucionar este problema? Gracias!