Enrutador basado en Linux
En Linux, el intercambio de claves (generalmente ISAKMP) se realiza en el espacio del usuario, mientras que las políticas de seguridad, las claves y el cifrado / descifrado se realizan a nivel del núcleo. Cuando llega un paquete, el núcleo primero procesa este paquete verificando si el SPI y la IP coinciden con una política de seguridad. Si lo hace, el paquete se procesa con las claves almacenadas de la política y se promueve en la pila de red para su procesamiento. Esto todavía se realiza a nivel del kernel.
Ahora, donde Snort se sienta en la implementación de la pila de red es importante. Como es un programa de espacio de usuario, recibe paquetes del núcleo. Esto se realiza generalmente por el filtro de red del núcleo. Luego, los paquetes del netfilter del kernel pasan a programas de espacio de usuario como snort [1] ( busca Snort) .
Lo que esto significa para ti
- Kernel ve paquetes encriptados
- El kernel determina si tiene una política de seguridad que coincida con estos paquetes
- En caso afirmativo, el núcleo descifra los paquetes y los promueve en la pila de la red
- Netfilter los procesa y lleva los paquetes descifrados al espacio del usuario
- Snort ve los paquetes descifrados y los procesa.
Este no es el proceso completo, y podría haber pasado por alto un poco de la pila de red del kernel de Linux. Pero de todos modos no quieres esos detalles.
O quizás lo haga ...
Detalles sucios en la pila de red del kernel de Linux
Detalles de suciedad en Netfilter
Filtrado de paquetes IPSec después de descifrado utilizando iptables
Una nota interesante:
Si está olfateando paquetes en el Router 1 con Snort o incluso con Wireshark. Ping a través de la VPN. Desde el Enrutador 1, debería ver el paquete ESP cifrado que viene, y la respuesta descifrada en Snort / Wireshark. Como verificación de que, de hecho, verá ambos paquetes.