¿Qué es Psad?
El servicio psad es un detector de intrusos y un analizador de logs de iptables. Consta de tres servicios ligeros que analizan los logs de Iptables, para detectar los escaneos de puertos y otro tráfico sospechoso.
Además, psad se nutre de las firmas del detector de intrusos Snort, para detectar acesos de programas del tipo “backdoor” (EvilFTP, GirlFriend, …), herramientas para ataques DDos (mstream, shaft, …) y otras más avanzadas de escaneo de puertos.
¿Cómo instalar psad?
NOTA: Todas las configuraciones que se llevarán a cabo a continuación se tienen que hacer con un usuario root o que pertenezca al grupo de sudoers i se ha utilizado un sistema Debian 7. Se ha obviado el comando sudo.
Primero de todo necesitamos configurar iptables
Primero, para facilitarnos la tarea de configuración de iptables, podemos usar iptables-persistent. Del cual ya hablamos en una entrada anterior “Cómo usar iptables-persistent”, si ya sabeis cómo va, o teneis otro método, podemos seguir.
Necesitamos que iptables guarde en un log, el tráfico descartado para así psad poder leerlo
iptables -A INPUT -j LOG iptables -A FORWARD -j LOG
Seguidamente guardamos los cambios.
Instalación del psad
Para instalar es muy simple.
apt-get install psad
Configuración
Para configurar el servicio de psad se tiene que modificar el fichero psad.conf.
Antes de empezar a modificarlo, mejor crear una copia de seguridad para tener una referencia
cp /etc/psad/psad.conf /etc/psad/psad.conf.backup
Después ya podemos editar tranquilamente.
nano /etc/psad/psad.conf
Para configurar las diferentes variables del fichero de configuración, podéis revisar la manpage del psad, donde encontrareis todas las variables. Todos los valores han de terminar en punt y coma (;)
man psad
A continuación explicaré unas cuantas, digamos, las más importantes:
EMAIL_ADDRESS: Es a dirección de correo donde se enviarán las notificaciones. Se pueden añadir varias separadas por coma. Ejemplo:
EMAIL_ADDRESS root@localhost, email@example.com, firstname.lastname@example.org;
HOSTNAME: El nombre de la máquina en la que está instalado psad. Exejemplo:
HOSTNAME foner.uep.cat;
IPT_SYSLOG_FILE: El fichero de log donde psad recogerá la información. En los sistemas debian suele estar en /var/log/kern.log.
IPT_SYSLOG_FILE /var/log/kern.log;
PSAD_EMAIL_LIMIT: Define el nombre máximo de correos a enviar para cada una de las IP que nos escanean (por defecto 50). Nota importante: Esta variable no está asignada en el fichero por defecto, por tanto, psad usará el valor por defecto de 50. Mejor bajar el valor, ya que podriamos tener el correo inundado de avisos.
PSAD_EMAIL_LIMIT 20;
EMAIL_ALERT_DANGER_LEVEL: Define el nivel de peligro que tiene que llegar un escanop antes de enviarnos un correo (por defecto 1). Nota importante: Esta variable no está asignada en el fichero por defecto, por tanto, psad usará el valor por defecto de 1. Mejor subir el valor a 3, ya que podríamos tener el correo inundado de avisos.
EMAIL_ALERT_DANGER_LEVEL 3;
Podemo configurar IPs y/o Ports para añadirlos a una lista negra blacklist o una lista blanca whitelist. Para hacerlo tenemos que modificar el siguiente fichero:
nano /etc/psad/auto_dl
Donde podemos ver que sigue la siguiente estructura:
<IP address> <danger level> <optional protocol>/<optional ports> ;
Lo suyo es añadir las IP del servidor y las que se usen para su administración a la lista blanca. Por ejemplo:
127.0.0.1 0; #adreça IP local 18.104.22.168 0; #adreça IP publica servidor 22.214.171.124 0; #adreça IP d’administració
(IPs inventadas)
Una vez se hayan modificado los ficheros, es necesario reiniciar psad
service psad restart
Una vez reiniciado el servicio, ya tenemos el psad funcionando.
Para ver el estado del servicio ejecutamos
psad -S
Hasta aquí, que lo disfrutes 🙂
Fuentes: