GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar CSF (Config Server Firewall) en CentOS 8

Introducción

CSF es un cortafuegos de inspección de estado de paquetes (SPI), aplicación de seguridad y detección de inicio de sesión/intrusos para servidores Linux.

Consta del propio cortafuegos (CSF), que es completo, sencillo, fácil y flexible de configurar.

También tiene un Login Failure Daemon (LFD) que complementa perfectamente a CSF. Este LFD se ejecuta todo el tiempo y periódicamente (cada X segundos) escanea las últimas entradas del archivo de registro en busca de intentos de inicio de sesión en su servidor que fallan continuamente en un corto período de tiempo. Dichos intentos a menudo se denominan "ataques de fuerza bruta" y el proceso daemon responde muy rápidamente a tales patrones y bloquea rápidamente las IP ofensivas.

Instalar CSF en CentOS 8

Como era de esperar, CSF no está disponible en los repositorios oficiales de CentOS. Sin embargo, es posible instalarlo ya que está fuertemente vinculado a Perl y este lenguaje es compatible con CentOS 8.

Entonces, abra una sesión de terminal y actualice CentOS 8

sudo dnf install

Al final, instala el Perl módulos elementales y otras herramientas que usaremos más adelante como vim

sudo dnf install @perl curl tar vim

Al final de la instalación, debe instalar otros módulos adicionales de Perl en CentOS 8

sudo dnf install perl-libwww-perl.noarch perl-LWP-Protocol-https.noarch perl-GDGraph

Puede verificar la instalación de Perl ejecutando el comando:

[root@unixcop ~]# perl -v

This is perl 5, version 26, subversion 3 (v5.26.3) built for x86_64-linux-thread-multi
(with 55 registered patches, see perl -V for more detail)

Copyright 1987-2018, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.

[root@unixcop ~]# 

Ahora puedes descargar CSF usando el comando curl

[root@unixcop ~]# curl -O https://download.configserver.com/csf.tgz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 2244k  100 2244k    0     0   655k      0  0:00:03  0:00:03 --:--:--  655k
[root@unixcop ~]# 

Como puedes notar, es bastante liviano. Ahora descomprímelo.

tar xvfz csf.tgz

Así que acceda a la carpeta generada y, dentro de ella, ejecute el script de instalación llamado instalar .sh

cd csf
sudo sh install.sh

Esto iniciará el proceso de instalación y se aplicará la configuración predeterminada.

Configurar CSF en CentOS 8

Cuando está instalado, CFS aplica algunas configuraciones predeterminadas muy buenas, sin embargo, cada uno de nosotros tiene algunos ajustes que hacer.

El archivo es /etc/csf/csf.conf que se debe hacer una copia de seguridad antes de editar para estar seguro.

sudo vim /etc/csf/csf.conf

Y en este archivo encontrará muchos parámetros muy bien documentados. Y una de las secciones más importantes es la que enumera los puertos abiertos para las conexiones entrantes y salientes.

En este mismo archivo puede habilitar o deshabilitar CSF cambiando el siguiente valor:

TESTING = "1"

para

TESTING = "0"

De esta forma le indicas al programa que está listo para iniciarse.

Guarde los cambios y cierre el archivo.

Ahora puede iniciar el servicio CSF.

sudo systemctl enable --now csf

También es recomendable comprobar el estado del servicio para ver si se está ejecutando correctamente.

[root@unixcop csf]# sudo systemctl enable --now csf
[root@unixcop csf]# sudo systemctl status csf
● csf.service - ConfigServer Firewall & Security - csf
   Loaded: loaded (/usr/lib/systemd/system/csf.service; enabled; vendor preset: disabled)
   Active: active (exited) since Mon 2021-07-26 17:43:04 EET; 17s ago
  Process: 20176 ExecStart=/usr/sbin/csf --initup (code=exited, status=0/SUCCESS)
 Main PID: 20176 (code=exited, status=0/SUCCESS)

Jul 26 17:43:03 unixcop csf[20176]: ACCEPT  all opt    in * out lo  ::/0  -> ::/0
Jul 26 17:43:03 unixcop csf[20176]: LOGDROPOUT  all opt    in * out !lo  ::/0  -> ::/0
Jul 26 17:43:03 unixcop csf[20176]: LOGDROPIN  all opt    in !lo out *  ::/0  -> ::/0
Jul 26 17:43:03 unixcop csf[20176]: csf: FASTSTART loading DNS (IPv4)
Jul 26 17:43:03 unixcop csf[20176]: csf: FASTSTART loading DNS (IPv6)
Jul 26 17:43:03 unixcop csf[20176]: LOCALOUTPUT  all opt -- in * out !lo  0.0.0.0/0  -> 0.0.0.0/0
Jul 26 17:43:03 unixcop csf[20176]: LOCALINPUT  all opt -- in !lo out *  0.0.0.0/0  -> 0.0.0.0/0
Jul 26 17:43:03 unixcop csf[20176]: LOCALOUTPUT  all opt    in * out !lo  ::/0  -> ::/0
Jul 26 17:43:03 unixcop csf[20176]: LOCALINPUT  all opt    in !lo out *  ::/0  -> ::/0
Jul 26 17:43:04 unixcop systemd[1]: Started ConfigServer Firewall & Security - csf.
[root@unixcop csf]# 

También puede verificar los puertos que están abiertos cuando se está ejecutando CSF.

[root@unixcop csf]# sudo csf -p
Ports listening for external connections and the executables running behind them:
Port/Proto Open Conn  PID/User             Command Line                            Executable
22/tcp     4/6  1     (910/root)           /usr/sbin/sshd -D -oCiphers=aes256-g... /usr/sbin/sshd
323/udp    -/-  -     (853/chrony)         /usr/sbin/chronyd                       /usr/sbin/chronyd
[root@unixcop csf]# 

Habilitar la interfaz de usuario en CSF Firewall en CentOS

CSF Firewall viene con una interfaz de usuario independiente. Esto está deshabilitado por defecto. En CentOS, instale los siguientes requisitos yum install perl-IO-Socket-SSL perl-Net-SSLeay perl-Net-LibIDN perl-IO-Socket-INET6 perl-Socket6

yum install perl-IO-Socket-SSL perl-Net-SSLeay perl-Net-LibIDN perl-IO-Socket-INET6 perl-Socket

Editar archivo de configuración CSF

vim /etc/csf/csf.conf

Reemplazar UI ="0" con IU ="1"

Cambie las siguientes configuraciones según sea necesario.

UI_PORT = "6666"
UI_USER = "username"
UI_PASS = "password"

De forma predeterminada, solo la IP incluida en la lista blanca puede acceder a la interfaz de usuario, para incluir su IP en la lista blanca, ejecute

echo "YOUR_IP_ADDR" >> /etc/csf/ui/ui.allow

Si desea permitir la interfaz de usuario de CSF desde todas las direcciones IP, establezca UI_ALLOW en 0 en csf.conf

UI_ALLOW = "0"

CSF usa un SSL autofirmado, si tiene un certificado SSL, puede usarlo. El certificado SSL está disponible en la carpeta

/etc/csf/ui/

Para usar el certificado SSL gratuito de LetsEncrypt para la interfaz de usuario de CSF, configuro el enlace simbólico en el certificado SSL.

cd /etc/csf/ui
mv server.key server.key.old
mv server.crt server.crt.old
ln -s /etc/letsencrypt/live/DOMAIN/fullchain.pem server.crt
ln -s /etc/letsencrypt/live/DOMAIN/privkey.pem server.key

Ahora reinicie CSF y LDF

systemctl restart lfd
systemctl restart csf

Esto solicitará primero la autenticación del usuario. Después de iniciar sesión correctamente, encontrará una pantalla como la siguiente.

Conclusión

Así que ha aprendido a instalar Config Server Firewall en CentOS 8. Como puede notar, el proceso no es complejo, pero requiere algunos pasos adicionales para completarlo.


Cent OS
  1. Cómo instalar el servidor de Minecraft en CentOS 7

  2. Cómo instalar Nginx en CentOS 8

  3. Cómo instalar el servidor Teamspeak 3 en CentOS 8

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

  5. Cómo instalar el cortafuegos CSF en CentOS 7

Cómo instalar Nginx en CentOS

Cómo instalar y configurar CSF (Config Server Firewall) en Ubuntu 20.04 LTS

Cómo instalar MySQL 8 en CentOS 8

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

Cómo instalar Shoutcast Server en CentOS 8

Cómo instalar el firewall del servidor de configuración (CSF) en Rocky Linux 8