¡Esta es una revisión vieja del documento!
Tabla de Contenidos
¿Qué es PortSentry?
PortSentry es parte del conjunto de herramientas de seguridad del Proyecto Abacus. Es un programa diseñado para detectar y responder escaneos de puertos contra un host objetivo en tiempo real.
PortSentry detectará escaneos ocultos de SYN / half-open, FIN, NULL, X-MAS…
PortSentry informará todas las violaciones a los demonios syslog locales o remotos que indiquen el nombre del sistema, la hora de ataque, la IP del host atacante y el puerto TCP o UDP en el que se realizó un intento de conexión. Una vez que se detecta un escaneo, su sistema se convertirá en un agujero negro y desaparecerá del atacante.
Requisito previo
Instalación de Ubuntu Desktop 12.04 LTS Instalación de BackTrack 5 R1
Notas de la practica
- En esta practica veremos cómo hacer lo siguiente:
- Instalaremos PortSentry en Ubuntu.
- Probamos NMAP en un PortSentry no configurado
- Configuraremos PortSentry.
- Probaremos NMAP en un PortSentry configurado
- Le mostraremos cómo desbloquear un atacante.
Verificamos que tenemos conexión
root@ubuntu12:/# ifconfig -a
si no tenemos conexion
root@ubuntu12:/# dhclient -v root@ubuntu12:/# /etc/init.d/networking restart
Actualización del indice de paquetes
root@ubuntu12:/# apt-get update
buscamos denyhosts
root@ubuntu12:/# apt-cache search portsentry
Instalamos los paquetes necesarios
root@ubuntu12:/# apt-get install portsentry
verificamos que se está ejecutando
root@ubuntu12:/# ps -eaf | grep -v grep | grep portsentry \\
ps -eaf, muestra todos los procesos.
grep -v grep, filtra el proceso grep.
grep denyhosts, muestra solo el proceso portsentry.
ver los ficheros de configuracion
root@ubuntu12:/etc# ls -l /etc/portsentry/
observamos 3 ficheros
portsentry.conf que es el fichero de configuración
portsentry.ignore es el fichero donde añadimos las ips que PortSentry ignora si es escaneado
portsentry-ogmpre-statcc es el script para empezar el demonio
Para ver los mensajes de PortSentry en /grep/log/syslog
grep portsentry /var/log/syslog
Nos indica que está instalado y está monitoreando varios puertos tanto TCP como UDP
Observamos si el script de portsentry se encuenta en init.d
root@ubuntu12:/etc# ls -l /etc/init.d/portsentry root@ubuntu12:/etc# find /etc/rc*.d/* -print | xargs ls -l | grep portsentry
nivel de ejecución
Identifica las secuencias de comandos de inicio y finalización para denyhosts
Identifica el nivel de ejecución actual.
0 System Halt
1 usuario individual
2 Modo multiusuario completo (predeterminado)
3-5 Igual que 2
6 Reinicio del sistema
Detenemos el servicio y volvemos a arrancarlo con /etc/init.d/squid3
root@ubuntu12:/etc# cd /etc/init.d root@ubuntu12:/etc/init.d# ./portsentry stop root@ubuntu12:/etc/init.d# ps -eaf | grep -v grep | grep portsentry
No devuelve nada, el servicio está parado
root@ubuntu12:/etc/init.d# ./portsentry start root@ubuntu12:/etc/init.d# ps -eaf | grep -v grep | grep portsentry
Ahora nos devuelve 1 linea porque el servicio está ejecutandose
Parar e iniciar el servico squid3 con el comando "service"
root@ubuntu12:/etc/init.d# service portsentry status
Nos muestra el numero de proceso o PID, en mis caso es 3386.
root@ubuntu12:/etc/init.d# ps -eaf | grep -v grep | grep 3386
Tienes que reemplazar el PID por el tuyo
root@ubuntu12:/etc/init.d# service portsentry stop
este comando parara el demonio
root@ubuntu12:/etc/init.d# ps -eaf | grep -v grep | grep portsentrys
No muestra nada porque el proceso está detenido
root@ubuntu12:/etc/init.d# service portsentry start
Iniciamos el servicio
root@ubuntu12:/etc/init.d# ps -eaf | grep -v grep | grep portsentry