En este tutorial, le mostraremos cómo instalar Suricata en AlmaLinux 8. Para aquellos de ustedes que no sabían, Suricata es una aplicación gratuita y de código abierto, madura, rápida y robusto motor de detección de amenazas de red. Puede funcionar como motor de detección de intrusiones (IDS), sistema de prevención de intrusiones en línea (IPS), monitoreo de seguridad de red (NSM), así como una herramienta de procesamiento de pcap fuera de línea. Suricata inspecciona el tráfico de red usando reglas poderosas y extensas y lenguaje de firma y tiene un potente soporte de secuencias de comandos Lua para la detección de amenazas complejas.
Este artículo asume que tiene al menos conocimientos básicos de Linux, sabe cómo usar el shell y, lo que es más importante, aloja su sitio en su propio VPS. La instalación es bastante simple y asume que se están ejecutando en la cuenta raíz, si no, es posible que deba agregar 'sudo
' a los comandos para obtener privilegios de root. Te mostraré la instalación paso a paso de Suricata en un AlmaLinux 8. Puedes seguir las mismas instrucciones para Rocky Linux.
Requisitos previos
- Un servidor que ejecuta uno de los siguientes sistemas operativos:AlmaLinux 8, CentOS y Rocky Linux 8.
- Se recomienda que utilice una instalación de sistema operativo nueva para evitar posibles problemas.
- Acceso SSH al servidor (o simplemente abra Terminal si está en una computadora de escritorio).
- Un
non-root sudo user
o acceder alroot user
. Recomendamos actuar como unnon-root sudo user
, sin embargo, puede dañar su sistema si no tiene cuidado al actuar como root.
Instalar Suricata en AlmaLinux 8
Paso 1. Primero, comencemos asegurándonos de que su sistema esté actualizado.
sudo dnf update sudo dnf install epel-release sudo dnf config-manager --set-enabled PowerTools sudo dnf install diffutils gcc jansson-devel make nss-devel pcre-devel python3 python3-pyyaml rust-toolset zlib-devel curl wget tar lua lz4-devel
Paso 2. Instalar Suricata en AlmaLinux 8.
Ahora descargamos la última versión estable del código fuente de Suricata desde la página oficial:
wget https://www.openinfosecfoundation.org/download/suricata-6.0.3.tar.gz tar xzf suricata-6.0.3.tar.gz
Luego, compila e instala Suricata usando el siguiente comando a continuación:
cd suricata-6.0.3 ./configure --sysconfdir=/etc --localstatedir=/var --prefix=/usr/ --enable-lua --enable-geopip make make install-full
Verificar la instalación de Suricata:
suricata -V
Paso 3. Configurar Suricata.
Una vez instalado, el archivo de configuración se encuentra en /etc/suricata/suricata.yaml
. Sin embargo, para nuestra configuración básica, solo nos centraremos en la interfaz de red en la que escucha Suricata y la dirección IP adjunta a esa interfaz:
nano /etc/suricata/suricata.yaml
Agregue las siguientes líneas:
vars: # more specific is better for alert accuracy and performance address-groups: #HOME_NET: "[192.168.0.0/16,10.0.0.0/8,172.16.0.0/12]" HOME_NET: "[192.168.77.21]" #HOME_NET: "[192.168.0.0/16]" #HOME_NET: "[10.0.0.0/8]" #HOME_NET: "[172.16.0.0/12]" #HOME_NET: "any" EXTERNAL_NET: "!$HOME_NET" #EXTERNAL_NET: "any" ...
Luego, establezca el nombre de la interfaz en af-packet:
# Linux high speed capture support af-packet: - interface: enp0s3 ...........
Defina los archivos de reglas de Suricata a usar. Estamos usando las reglas de ET predeterminadas en esta demostración:
... default-rule-path: /var/lib/suricata/rules rule-files: - suricata.rules ...
Después de eso, desactive la descarga de paquetes de Suricata desactivando la interfaz Descarga de recepción grande (LRO)/Descarga de recepción genérica (GRO):
sudo ethtool -K <interface> gro off lro off
Salida:
tx-checksum-ip-generic: ongeneric-segmentation-offload: ongeneric-receive-offload: offlarge-receive-offload: off [fixed]
Si está habilitado, deshabilítelo ejecutando el siguiente comando:
ethtool -K <interface> gro off lro off
Paso 4. Ejecutar Suricata.
Suricata puede ser administrado por un systemd
Servicio. Pero antes de inicializarlo, primero, especifique la interfaz en la que escucha Suricata de la siguiente manera:
nano /etc/sysconfig/suricata
Agregue las siguientes líneas:
# Add options to be passed to the daemon #OPTIONS="-i eth0 --user suricata " OPTIONS="-i enp0s3 --user suricata "
Guarde y salga del archivo también, inicie y permita que Suricata se ejecute en el arranque:
sudo systemctl enable --now suricata
Para verificar si Suricata se está ejecutando, verifique el registro de Suricata:
sudo tail /var/log/suricata/suricata.log
Paso 5. Prueba de las reglas de Suricata.
En esta demostración, estamos usando las reglas predeterminadas de ET Suricata. Si ha creado sus propias reglas personalizadas, asegúrese de probar las reglas de Suricata para detectar errores de sintaxis:
sudo suricata -c /etc/suricata/suricata.yaml -T -v
Salida:
26/7/2021 -- 16:46:11 - - Running suricata under test mode 26/7/2021 -- 16:46:11 - - This is Suricata version 5.0.3 RELEASE running in SYSTEM mode 26/7/2021 -- 16:46:11 - - CPUs/cores online: 1 26/7/2021 -- 16:46:11 - - fast output device (regular) initialized: fast.log 26/7/2021 -- 16:46:11 - - eve-log output device (regular) initialized: eve.json 26/7/2021 -- 16:46:11 - - stats output device (regular) initialized: stats.log 26/7/2021 -- 16:46:13 - - 1 rule files processed. 20676 rules successfully loaded, 0 rules failed 26/7/2021 -- 16:46:13 - - Threshold config parsed: 0 rule(s) found 26/7/2021 -- 16:46:13 - - 20679 signatures processed. 1138 are IP-only rules, 3987 are inspecting packet payload, 15324 inspect application layer, 103 are decoder event only26/7/2021 -- 16:46:28 - - Configuration provided was successfully loaded. Exiting.26/7/2021 -- 16:46:28 - - cleaning up signature grouping structure… complete
¡Felicitaciones! Ha instalado Suricata con éxito. Gracias por usar este tutorial para instalar Suricata en su sistema AlmaLinux 8. Para obtener ayuda adicional o información útil, le recomendamos que consulte el sitio web oficial de Suricata.