CSF significa ConfigServer Security and Firewall es una de las aplicaciones de seguridad de código abierto más útiles para los sistemas operativos Linux que se utiliza como firewall de inspección de paquetes, inicio de sesión y detección de intrusiones para los servidores Linux. El uso de CSF ayuda a proteger los servidores contra muchos ataques de seguridad, como los ataques de fuerza bruta. Viene con un servicio llamado (LFD) Login Failure Daemon que evita el acceso no autorizado a los demonios de la red al observar su actividad de usuario en busca de fallas de inicio de sesión excesivas a las que queremos restringir el acceso por dirección IP para ayudar a prevenir el acceso a los demonios de las redes comprometidas. Por lo tanto, siempre que haya una gran cantidad de intentos erróneos desde una IP específica, esa IP se bloqueará temporalmente de inmediato para todos los servicios en el servidor.
ConfigServer Security &Firewall viene con muchas funciones para proporcionar notificaciones de inicio de sesión SSH, bloqueo excesivo de conexiones, fallas de mod_security, informes de procesos sospechosos y muchos otros.
1) Requisitos previos
CSF se puede instalar en cualquier distribución de Linux, pero en este tutorial lo instalaremos y configuraremos usando CentOS 7.1.
Inicie sesión en su servidor Centos 7 con usuario raíz y asegúrese de estar conectado a Internet para actualizar su sistema con las últimas actualizaciones y para instalar los paquetes dependientes necesarios para CSF.
Después de iniciar sesión, ejecute el siguiente comando para actualizar el sistema.
# yum update
Luego, para instalar los módulos perl que se requieren para configurar csf en Centos 7, ejecute el siguiente comando.
# yum -y install perl perl-libwww-perl perl-LWP-Protocol-https perl-GDGraph wget unzip net-tools
2) Descargar el paquete de instalación de CSF
Para descargar el paquete ConfigServer Security &Firewall, ejecute el siguiente comando en el directorio /usr/src/ como se muestra.
# wget https://download.configserver.com/csf.tgz
Después de descargar el paquete archivado, ejecute el siguiente comando para extraerlo dentro del mismo directorio.
# tar -xzf csf.tgz
Ahora cambie el directorio a la carpeta extraída y use el comando de lista para ver su configuración interna y los scripts de instalación como se muestra.
3) Instalación del cortafuegos de seguridad de ConfigServer
Para comenzar la instalación de CSF en CentOS 7, ejecutaremos el script de instalación que se encuentra dentro del mismo directorio que se muestra arriba.
Ejecutemos el siguiente comando como se muestra.
# sh install.sh
La secuencia de comandos de instalación verificará sus módulos perl básicos y acceso raíz, luego creará un número de directorios y compilará diferentes archivos de configuración y bibliotecas durante su proceso de instalación, como se muestra a continuación.
*** USE_CONNTRACK Enabled
*** IPV6 Enabled
*** IPV6_SPI set to 1
TCP ports currently listening for incoming connections:
22,5432
UDP ports currently listening for incoming connections:
5353,43539
Note: The port details above are for information only, csf hasn't been auto-configured.
Don't forget to:
1. Configure the following options in the csf configuration to suite your server: TCP_*, UDP_*
2. Restart csf and lfd
3. Set TESTING to 0 once you're happy with the firewall, lfd will not run until you do so
Adding current SSH session IP address to the csf whitelist in csf.allow:
Adding 172.xx.xx.xx to csf.allow only while in TESTING mode (not iptables ACCEPT)
*WARNING* TESTING mode is enabled - do not forget to disable it in the configuration
‘lfd.service’ -> ‘/usr/lib/systemd/system/lfd.service’
‘csf.service’ -> ‘/usr/lib/systemd/system/csf.service’
ln -s '/usr/lib/systemd/system/csf.service' '/etc/systemd/system/multi-user.target.wants/csf.service'
ln -s '/usr/lib/systemd/system/lfd.service' '/etc/systemd/system/multi-user.target.wants/lfd.service'
‘/etc/csf/csfwebmin.tgz’ -> ‘/usr/local/csf/csfwebmin.tgz’
Installation Completed
Podemos ver que antes de que se complete el proceso de instalación, csf configura automáticamente los puertos que ya están escuchando, incluido el puerto SSH en la instalación, y luego incluye automáticamente en la lista blanca la dirección IP conectada cuando sea posible en la instalación.
4) Prueba de módulos CSF IPTable
Una vez que se complete el proceso de instalación, ejecute el siguiente comando para probar el estado de los módulos de iptables requeridos.
# perl /usr/local/csf/bin/csftest.pl
5) Configuración y uso de CSF
Para configurar el cortafuegos CSF en CentOS 7 y otras distribuciones basadas en Red Hat Enterprise Linux (RHEL), el archivo de configuración predeterminado se puede encontrar en la ubicación "/etc/csf/"
Los archivos de configuración incluyen la siguiente cantidad de archivos, como se muestra en la imagen.
Para habilitar el cortafuegos CSF totalmente funcional, configure el archivo de configuración csf predeterminado con los siguientes parámetros.
[root@centos-7 csf]# vim csf.conf
TESTING = "0"
:wq!
Ahora especificaremos una dirección de correo electrónico para informar errores del Daemon de fallas de inicio de sesión haciendo los siguientes cambios de configuración.
Después de realizar los cambios de configuración, debemos volver a cargar los servicios csf utilizando el siguiente comando para que los cambios de configuración surtan efecto.
# csf -r
Si desea verificar el estado del servicio csf, ejecute el siguiente comando.
# service csf status
Ejecute el siguiente comando para obtener una descripción general completa de todas las opciones de la línea de comandos que puede usar con csf.
# csf --help
Conclusión
En este artículo, aprendimos sobre la instalación, configuración y uso de ConfigServer Security and Firewall, que es una de las herramientas de código abierto más utilizadas y disponibles gratuitamente para instalar en plataformas Linux. Usando esta herramienta podemos proteger nuestros servidores de muchas amenazas usando sus configuraciones y comandos simples. Su proceso de instalación es muy sencillo y fácil de usar, por eso muchas organizaciones prefieren utilizar esta herramienta. También podemos usarlo y administrarlo desde la interfaz gráfica de usuario a la que se puede acceder después de instalar la herramienta webmin utilizando sus complementos disponibles.