Archivo etiqueta python
Howto fail2ban en Gentoo Linux
Fail2Ban es un framework escrito en Python, el cual es capaz de correr en sistemas Linux y con firewalls ya funcionando como iptables, TCP Wrapper, etc … Es libre y se distribuye bajo licencia GNU. Su objetivo es leer logs del sistema y banear aquellas IPs que intentan loguear en el sistema un número determinado de veces. Para instalarlo necesitamos tener Python 2.3 o superior.
Instalación y ficheros de configuración.
# Como ya sabemos las instalaciones en Gentoo Linux son sencillas. emerge fail2ban. # el fichero de configuración esta localizado en /etc/fail2ban/fail2ban.conf # el fichero donde configuraremos los parámetros a configurar está en /etc/fail2ban/jail.conf # y los directorios de acciones y filtros a realizar en /etc/fail2ban/action.d/ /etc/fail2ban/filter.d/
# del fichero de configuración fail2ban.conf lo más importante es indicarle la ruta donde se guardará el log. logtarget = /var/log/fail2ban.log # el tiempo en segundos de baneo a una IP. bantime = 600 # el número de fallos antes de ejecutar un Ban a IP. maxretry = 3
A continuación muestro 2 ejemplos del fichero jail.conf para comprobar los accesos en los protocolos SSH y FTP usando IPtables.
[ssh-iptables] enabled = true filter = sshd action = iptables[name=SSH, port=ssh, protocol=tcp] mail-whois[name=SSH, dest=su@email.net] logpath = /var/log/auth.log maxretry = 3 [proftpd-iptables] enabled = true filter = proftpd action = iptables[name=ProFTPD, port=ftp, protocol=tcp] mail-whois[name=ProFTPD, dest=su@email.net] logpath = /var/log/auth.log maxretry = 3
true indica que deseamos activarlo, que el puerto y protocolo a usar será ssh o ftp, y que nos enviará un email en el caso de que se ejecute un Ban. Es muy importante indicarle el LOG donde chequeará tanto los fallos como el numero de intentos antes de proceder a banear una IP.
Puesta en marcha y comprobaciones varias.
# Para iniciar fail2ban ejecutamos fail2ban-client start # y para cargar nuevas configuraciones fail2ban-client reload # tambien debemos incluirlo para que se inicie como demonio al arrancar el sistema rc-update add fail2ban default # y chequearemos que está trabajando correctamente. ps -ef
Qmail, queue-repair, warning: unable to stat mess
Cuando monitorizamos en tiempo real el log de mensajes del QMAIL este podría mostrar errores al acceder a la cola de mensajes. Este error puede ser provocado por falta de espacio, la cola de correo esta dañada o con errores, etc …
tail -f /var/log/qmail/current
Uno de los errores más comunes es tener la cola de correo dañada y por lo tanto recibiremos el siguiente error cada vez que recibamos correos en nuestras cuentas …
... warning: unable to stat mess/0/0 ... warning: unable to stat mess/1/1 ... warning: unable to stat mess/1/2 ... ... warning: unable to stat mess/22/22
Una de las soluciones que encontré para rehacer la cola del qmail fué instalar queue-repair. Es un script muy útil para reparar las colas de correo, recreear la estructura de directorios de esta ó solucionar una cola dañada. Para poder usar queue-repair necesitaremos tener instalado Python 1.5.2 o superior y sobre todo estar utilizando Qmail.
//Descargamos queue-repair a nuestro directorio de trabajo wget http://pyropus.ca/software/queue-repair/queue-repair-0.9.0.tar.gz //Descomprimimos y desempaquetamos el archivo descargado. tar xfz queue-repair-0.9.0.tar.gz cd queue-repair-0.9.0 //Paramos el Qmail para evitar errores. /etc/init.d/qmail stop ./queue_repair.py -c -s 23 --no-bigtodo /var/qmail //Volvemos a iniciar el Qmail /etc/init.d/qmail start //procedemos a comprobar la cola de correo /var/qmail/bin/qmail-qread
Continuar leyendo “Qmail, queue-repair, warning: unable to stat mess”