Hoy les voy a explicar como hacer para monitorear IPSec/Racoon en pfsense 2.x
Elementos
1 instalacion de Pfsense (http://pfsense.org)
1 instalacion de Nagios (http://nagios.org)
1 cliente ssh / sftp
No voy a explicar como instalar nagios ni pfsense, si no sabes esta pagina no es para vos y podes volver a taringa o al twitter de tn tecno (!)...
Primero... se debe instalar el agente de nagios para pfsense, esto es una pavada, hay que ir a System > Packages
luego en Available buscar el que dice NRPE V2, como se muestra en la foto
Hacer click en el "+" y blablabla
Ahora, con nuestro cliente ssh favorito debemos subir el archivo que chequea los tuneles IPSec, que es el siguiente (NOTA: aclaro que parte del script me lo robe de por ahi porque soy de madera haciendo scripts...)
PARM1="$1"
WARN="$2"
PARM2="$3"
CRIT="$4"
if [ $PARM2 != "-c" -o $CRIT = "" ] ; then
echo "UsageL $0 -w-c "
if [ "$PARM1" != "-h" ]; then
exit 3
else
echo ""
echo " -w = Minimum Ipsec tunnel Numbers warning."
echo " -c = Critical Ipsec tunnel number."
echo " -h = help."
exit 3
fi
fi
NUMBER=$(sudo racoonctl -l show-sa isakmp | awk 'int ($9)' | wc -l)
HOSTNAME=$(hostname)
if [ $NUMBER -le $CRIT ]; then
echo "Critical - Total IpSec detected tunnels: $NUMBER"
exit 2
else
if [ "$NUMBER" -le "$WARN" ]; then
echo "Warning - detected tunnels: $NUMBER"
exit 1
else
echo "OK: \"$HOSTNAME\" is running: $NUMBER Ipsec Tunnels"
exit 0
fi
fi
Basicamente lo que hace este script es usar el comando racoonctl para ver que tuneles estan activos y con awk hago la cuenta de cuantos han pasado phase2.
Se debe copiar en la carpeta /usr/local/libexec/nagios/ con el nombre check_ipsec
Ahora lo que falta es, como se ve en el script editar el sudoers, peeeeero.. pfsense NO tiene sudo, asi que tendremos que instalarlo. Dentro del equipo ejecutar:
PARA 32 BITS:
# pkg_add -r ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8-stable/Latest/sudo.tbz
PARA 64 BITS:
# pkg_add -r ftp://ftp.freebsd.org/pub/FreeBSD/ports/amd64/packages-8-stable/Latest/sudo.tbz
Listo, instalado el visudo, seguramente les dara un warning, pero no pasa nada. Ahora se debe editar el sudoers,
#/usr/local/sbin/visudo
y en la ultima linea agregar lo siguiente:
nagios ALL=(ALL) NOPASSWD: /usr/local/sbin/racoonctl
nagios ALL=(ALL) NOPASSWD: /usr/local/libexec/nagios/check_ipsec
honestamente, no se si hace falta el check_ipsec, yo por las dudas lo puse
Una vez hecho esto, hay que configurar el plugin desde la gui del pfsense, va una captura como ejemplo, los valores de warning y critical manejenlos de acuerdo a lo que necesiten
y listo el pollo pelada la gallina, espero que les sea util ya que esto no lo vi por ningun lado
hasta la proxima cyberamigos, que les garue finito y ojo con los hackers