Cómo instalar el cortafuegos del servidor de configuración (CSF) en Debian 11

Cómo instalar el cortafuegos del servidor de configuración (CSF) en Debian 11

CSF también conocido como «Config Server Firewall» es un firewall gratuito y avanzado para sistemas Linux. Viene con algunas funciones de seguridad avanzadas, como detecciones de intrusión, inundación e inicio de sesión. Está diseñado para defenderse contra muchos ataques, como escaneos de puertos, inundaciones SYN y ataques de fuerza bruta de inicio de sesión. También proporciona integración para cPanel, DirectAdmin y Webmin.

Este tutorial explicará la instalación de CSF, la configuración básica y los comandos esenciales para CSF en Debian 11.

requisitos previos

  • Un servidor que ejecuta Debian 11.
  • Una contraseña de root está configurada en el servidor.

Empezando

Antes de comenzar, se recomienda actualizar los paquetes de su sistema a la versión actualizada. Puedes hacerlo usando el siguiente comando:

apt-get update -y

Una vez que todos los paquetes estén actualizados, instale otras dependencias requeridas usando el siguiente comando:

apt-get install sendmail dnsutils unzip libio-socket-ssl-perl libcrypt-ssleay-perl git perl iptables libnet-libidn-perl libio-socket-inet6-perl libsocket6-perl -y

Instalar CSF en Debian 11

De forma predeterminada, el paquete CSF no está incluido en el repositorio predeterminado de Debian 11. Deberá descargarlo de su sitio web oficial.

Puede descargar la última versión de CSF con el siguiente comando:

wget http://download.configserver.com/csf.tgz

Una vez que se complete la descarga, extraiga el archivo descargado con el siguiente comando:

tar -xvzf csf.tgz

A continuación, cambie el directorio a CSF y ejecute el instalar.sh script para instalar CSF en su servidor.

cd csf
bash install.sh

Una vez que se haya instalado el CSF, debería obtener el siguiente resultado:

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:
*WARNING* URLGET set to use LWP but perl module is not installed, fallback to using CURL/WGET
Adding 106.222.22.32 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'
Created symlink /etc/systemd/system/multi-user.target.wants/csf.service → /lib/systemd/system/csf.service.
Created symlink /etc/systemd/system/multi-user.target.wants/lfd.service → /lib/systemd/system/lfd.service.
Failed to disable unit: Unit file firewalld.service does not exist.
Failed to stop firewalld.service: Unit firewalld.service not loaded.
Unit firewalld.service does not exist, proceeding anyway.
Created symlink /etc/systemd/system/firewalld.service → /dev/null.
'/etc/csf/csfwebmin.tgz' -> '/usr/local/csf/csfwebmin.tgz'

Installation Completed

Después de la instalación, verifique los módulos de iptables requeridos para CSF usando el siguiente comando:

perl /usr/local/csf/bin/csftest.pl

Si todo está bien, debería obtener el siguiente resultado:

Testing ip_tables/iptable_filter...OK
Testing ipt_LOG...OK
Testing ipt_multiport/xt_multiport...OK
Testing ipt_REJECT...OK
Testing ipt_state/xt_state...OK
Testing ipt_limit/xt_limit...OK
Testing ipt_recent...OK
Testing xt_connlimit...OK
Testing ipt_owner/xt_owner...OK
Testing iptable_nat/ipt_REDIRECT...OK
Testing iptable_nat/ipt_DNAT...OK

RESULT: csf should function on this server

Configurar CSF

A continuación, deberá configurar CSF según sus requisitos. Puedes configurarlo editando /etc/csf/csf.conf expediente.

nano /etc/csf/csf.conf

Primero, busque la línea TESTING = «1» y cambie el valor a «0» para habilitar el CSF:

TESTING = "0"

A continuación, encuentra la línea RESTRICCIÓN_SYSLOG = «0»y cambie el valor a 3 para establecer el acceso a los archivos syslog/rsyslog solo para los miembros de la RESTRICT_SYSLOG_GROUP:

RESTRICT_SYSLOG = "3"

Agregue los puertos abiertos TCP entrantes requeridos en la siguiente línea:

TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995"

Agregue sus puertos TCP salientes requeridos en la siguiente línea:

# Allow outgoing TCP ports
TCP_OUT = "20,21,22,25,53,80,110,113,443,587,993,995"

Agregue sus puertos abiertos UDP entrantes requeridos en la siguiente línea:

# Allow incoming UDP ports
UDP_IN = "20,21,53,80,443"

Agregue sus puertos UDP salientes requeridos en la siguiente línea:

# Allow outgoing UDP ports
UDP_OUT = "20,21,53,113,123"

Guarde y cierre el archivo, luego vuelva a cargar el firewall CSF para aplicar los cambios:

csf -r

Comandos básicos de CSF

Para detener el firewall CSF, ejecute el siguiente comando:

csf -s

Para vaciar el firewall CSF, ejecute el siguiente comando:

csf -f

Para enumerar todas las reglas de IPTABLES agregadas por CSF, ejecute el siguiente comando:

csf -l

Para iniciar el CSF y permitir que se inicie al reiniciar el sistema, ejecute el siguiente comando:

systemctl start csf
systemctl enable csf

Para verificar el estado del firewall CSF, ejecute el siguiente comando:

systemctl status csf

Deberías obtener el siguiente resultado:

? csf.service - ConfigServer Firewall & Security - csf
     Loaded: loaded (/lib/systemd/system/csf.service; enabled; vendor preset: enabled)
     Active: active (exited) since Sat 2021-09-18 15:42:04 UTC; 11s ago
    Process: 8022 ExecStart=/usr/sbin/csf --initup (code=exited, status=0/SUCCESS)
   Main PID: 8022 (code=exited, status=0/SUCCESS)
        CPU: 705ms

Sep 18 15:42:04 debian11 csf[8022]: ACCEPT  all opt    in * out lo  ::/0  -> ::/0
Sep 18 15:42:04 debian11 csf[8022]: LOGDROPOUT  all opt    in * out !lo  ::/0  -> ::/0
Sep 18 15:42:04 debian11 csf[8022]: LOGDROPIN  all opt    in !lo out *  ::/0  -> ::/0
Sep 18 15:42:04 debian11 csf[8022]: csf: FASTSTART loading DNS (IPv4)
Sep 18 15:42:04 debian11 csf[8022]: csf: FASTSTART loading DNS (IPv6)
Sep 18 15:42:04 debian11 csf[8022]: LOCALOUTPUT  all opt -- in * out !lo  0.0.0.0/0  -> 0.0.0.0/0
Sep 18 15:42:04 debian11 csf[8022]: LOCALINPUT  all opt -- in !lo out *  0.0.0.0/0  -> 0.0.0.0/0
Sep 18 15:42:04 debian11 csf[8022]: LOCALOUTPUT  all opt    in * out !lo  ::/0  -> ::/0
Sep 18 15:42:04 debian11 csf[8022]: LOCALINPUT  all opt    in !lo out *  ::/0  -> ::/0
Sep 18 15:42:04 debian11 systemd[1]: Finished ConfigServer Firewall & Security - csf.

Para permitir un host específico por dirección IP, ejecute el siguiente comando:

csf -a 192.168.100.10

Para denegar un host específico por dirección IP, ejecute el siguiente comando:

csf -d 192.168.100.11

Para eliminar una IP de la lista de permitidos, ejecute el siguiente comando:

csf -ar 192.168.100.10

Para eliminar una IP de la lista de denegación, ejecute el siguiente comando:

csf -dr 192.168.100.11

Puede agregar direcciones IP de confianza editando /etc/csf/csf.permitir expediente:

nano /etc/csf/csf.allow

Agrega tus IPs de confianza:

192.168.100.10

Puede agregar direcciones IP que no sean de confianza editando /etc/csf/csf.deny expediente:

nano /etc/csf/csf.deny

Agregue sus direcciones IP que no son de confianza:

192.168.100.11

Conclusión

En la guía anterior, explicamos cómo instalar el firewall CSF en Debian 11. También le mostramos algunos comandos básicos de CSF para administrar su tráfico. Para obtener más información, visite el LCR documentación.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *