jueves, 25 de abril de 2013

Ejercicios de Iptables 4.b


b.- Utilizar la opción de log con cualquiera de las reglas probadas y comprobar que los mensajes son realmente registrados a través del syslog del sistema. Analizar la entrada que aparece en el log del sistema e identificar cada parte del mensaje.

La opción LOG proporciona un registro de paquetes coincidentes mediante el núcleo. Dispone de estas opciones adicionales:
                     log-level : seguido de un número (o nombre) de nivel. Los nombres válidos son (distingue mayúsculas/minúsculas) «debug», «info». «notice», «warning», «err», «crit», «alert». «emerg», que corresponden a los números 7 a 0.
                     log-prefix: seguido de una cadena de hasta 30 caracteres, que corresponden a un texto que se escribe al comienzo de cada «log» (registro), para permitir que sean identificados unívocamente.
                     Opciones adicionales: --log-tcp-options, --log-tcp-sequence, --log-ip-options
Este módulo es más útil junto a un objetivo «limit», de manera que no se inunden los archivos de registro.

Por ejemplo para registrar el tráfico icmp de entrada al sistema (pregunta 1.a) haríamos:
iptables -A INPUT -p icmp -j LOG --log-prefix “icmp de entrada” --log-level info
iptables -A INPUT -p icmp -j ACCEPT
tras hacer un ping -c 2 192.168.56.101 el resultado sería
y si consultamos el syslog, fichero /var/log/syslog o bien consultando /var/log/messages:
En el log podemos observar:
          en primer lugar nos aparece la fecha y equipo en el que se ha grabado el fichero
          el log-prefix que hemos insertado “icmp de entrada”
          nos indica la interfaz de entrada IN=eth1
          la interfaz por la que ha salido (en este caso en blanco) OUT=
          La Mac de las interfaces que intervienen MAC=:
          la mac de la interfaz que ha recibido el icmp: 08:00:27:be:76:27
          la mac de la interfaz que ha enviado la solicitud: 08:00:27:67:e4:82
          Protocolo ip: 08:00
          Dirección IP de origen: SRC=192.168.56.102
          Dirección IP de destino: DST=192.168.56.101
          Longitud del paquete: LEN=84
          Bits de calidad de servicio Type of service, en este caso, ninguno marcado: TOS=0X00
          Precedencia: PREC: 0x00
          Time To Live o tiempo máximo del mensaje en internet: TTL=64
          Identificador: ID= 0
          No fragmentar:  DF
          Para el protocolo icmp: PROTO= ICMP
          Para mensajes de eco: TYPE=8
          Para marcar los mensajes con el identificador: CODE=0
          Identificador, cuando code=0 sirve de ayuda para asociar los ecos con las respuestas: ID=1569
          Número de secuencia, cuando code=0 sirve de ayuda para asociar los ecos con las respuestas, de modo que un mismo id (con un ping) enviamos varias secuencias (varias solicitudes de eco que se van numerando): SEQ=1
Con objeto de ver cómo registraría los paquetes TCP he incluido la regla:
iptables -A INPUT -p tcp --sport http -j LOG
y he iniciado una conexión con el navegador con objeto de registrar la respuesta, para analizar las diferencias:
como vemos a los valores anteriores ya comentados se suman los siguientes:
          ID:el campo ID utilizado para rearmar fragmentos, aparecerían también los flags activos si los hubiera.
          PROTO, SPT y DPT: en este caso, protocolo de transporte y puertos de origen y destino. El valor de PROTO se obtiene del campo protocolo de la cabecera IP por lo que podría tratarse por ejemplo de un datagrama icmp, en tal caso no aparecerán los campos SPT y DPT.
          SEQ, ACK y WINDOW: Por tratarse de un segmento TCP, número de secuencia del segmento, número de asentimiento y tamaño de la ventana.
          ACK , PSH yURGP: flags TCP, el valor de URGP no es el del flag URG sino el puntero, es generalmente 0 y su valor no es significativo a menos que el flag URG esté activo. En este apartado aparecerán los flags SYN, FIN, RST y PSH cuando estuvieran activos.
 << Anterior                                                                                                                Siguiente >>