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.
No hay comentarios:
Publicar un comentario