Se sei seriamente interessato alla sicurezza della rete e al miglioramento della protezione, l'installazione di sistemi di rilevamento e prevenzione delle intrusioni (IPS o IDS) è un must per rafforzare il perimetro della rete e deviare il traffico di rete indesiderato.
Snort è una popolare soluzione IPS/IDS gratuita e open source. Impariamo come installare e configurare Snort su Linux per difendere la tua rete dagli attacchi informatici. Verificare Cosa succede quando il tuo telefono ti sta spiando?

Link veloci
Cos'è lo sbuffo?

Snort è un'applicazione NIDS/IPS (Network Intrusion Detection and Prevention) open source che, come suggerisce il nome, aiuta a proteggere il perimetro della rete applicando regole e filtri che rilevano e rilasciano pacchetti dannosi iniettati nella rete.
Con Snort, sarai in grado di eseguire la registrazione avanzata del traffico di rete, lo sniffing e l'analisi dei pacchetti e impostare un potente sistema di prevenzione delle intrusioni che protegge la tua rete da traffico indesiderato e potenzialmente dannoso.
Prerequisiti per l'installazione di Snort
Prima di installare Snort, è necessario eseguire alcune impostazioni iniziali. Ciò comporta principalmente l'aggiornamento e l'aggiornamento del sistema e l'installazione delle dipendenze necessarie a Snort per funzionare correttamente.
Inizia aggiornando e aggiornando il tuo sistema.
Nelle distribuzioni Linux basate su Ubuntu e Debian:
sudo apt update && apt upgrade -y
Su Arch Linux e le sue distribuzioni basate:
sudo pacman -Syu
Su RHEL e Fedora:
sudo dnf upgrade
Man mano che il tuo sistema si aggiorna, continua a installare le dipendenze richieste da Snort. Ecco i comandi che devi eseguire:
Su Ubuntu e Debian, esegui:
sudo apt install -y build-essential autotools-dev libdumbnet-dev libluajit-5.1-dev libpcap-dev zlib1g-dev pkg-config libhwloc-dev cmake liblzma-dev openssl libssl-dev cpputest libsqlite3-dev libtool uuid-dev git autoconf bison flex libcmocka-dev libnetfilter-queue-dev libunwind-dev libmnl-dev ethtool libjemalloc-dev libpcre++-dev
Su Arch Linux, esegui:
sudo pacman -S gperftools hwloc hyperscan ibdaqlibdnet libmnl libpcap libunwind luajit lz4 openssl pcre pulledporkxz zlib cmake pkgconf
Per RHEL e Fedora, immetti il seguente comando:
sudo dnf install gcc gcc-c++ libnetfilter_queue-devel git flex bison zlib zlib-devel pcre pcredevel libdnet tcpdump libnghttp2 wget xz-devel -y
Inoltre, è necessario installare manualmente anche la libreria di acquisizione dati, LibDAQ affinché Snort funzioni correttamente e anche gperftools per generare file di build.
Innanzitutto, scarica i file sorgente LibDAQ dal sito Web ufficiale utilizzando il comando wget. Quindi, estrai il file zip e vai alla directory con cd. All'interno della directory eseguire il boot e configurare gli script, quindi procedere alla preparazione dei file con il comando make install.
wget https://www.snort.org/downloads/snortplus/libdaq-3.0.11.tar.gz tar -xzvf lib* cd lib* ./bootstrap ./configure make sudo make install
Con LibDAQ installato, è necessario installare un'ultima dipendenza: gperftools. Inizia recuperando i file di origine dal repository GitHub. Estrai i file, vai alla directory ed esegui lo script di configurazione. Infine, installa il pacchetto usando i comandi make install.
wget https://github.com/gperftools/gperftools/releases/download/gperftools-2.10/gperftools-2.10.tar.gz tar -xvzf gper* && cd gper ./configure make sudo make install
Una volta installate queste dipendenze, puoi passare ai passaggi successivi per installare Snort.
Installa Snort dal sorgente su Linux

Al termine della configurazione iniziale, ora puoi concentrarti sull'installazione dell'applicazione vera e propria. Lo costruirai dal sorgente, quindi procurati prima i file di build richiesti.
Usa il comando wget o scarica i file manualmente dalla pagina di download ufficiale:
scarica https://www.snort.org/downloads/snortplus/snort3-3.1.58.0.tar.gz
scaricare: sbuffo
Una volta terminato il download del file zip contenente i file di build, estrailo utilizzando il comando tar:
tar -xzvf snort*
Vai alla cartella estratta, esegui lo script di configurazione e usa il comando make Per preparare i file, e poi finalmente installarlo con make install:
cd snort* ./configure_cmake.sh — prefisso=/usr/local — enable-tcmalloc cd build make sudo make install
Snort verrà ora installato con successo nel tuo sistema. Tuttavia, c'è un altro passaggio che devi completare. Quando si installa manualmente una nuova applicazione, la directory di installazione e le librerie richieste potrebbero non essere incluse automaticamente nel percorso predefinito del sistema. Quindi potresti riscontrare errori all'avvio dell'applicazione.
Per evitare questo problema, è necessario eseguire il comando ldconfig. Sincronizzerà la cache della libreria condivisa di sistema con le librerie e i binari appena installati. Eseguire il comando ldconfig Con privilegi di root o utilizzando un prefisso sudo:
sudo ldconfig
Ora ho coperto tutti i passaggi importanti necessari per installare Snort. Per verificare l'installazione, eseguire il comando snort con un flag -V e dovresti vedere un output che restituisce il nome della versione e altri dati.
sbuffare -V
Dopo aver verificato che Snort è installato, segui i passaggi successivi per configurarlo come IDS/IPS completamente funzionante.
Configurazione iniziale di Snort su Linux

L'efficienza di Snort dipende quasi interamente dalla qualità dei set di regole di cui è dotato.
Tuttavia, prima di iniziare a configurare le regole, è necessario configurare le schede di rete in modo che funzionino con Snort e occorre anche verificare come viene gestita la configurazione predefinita da Snort. Inizia configurando le schede di rete.
È necessario impostare l'interfaccia di rete in modalità promiscua:
sudo ip link set dev interface_name promisc on
utilizzando ethtool , disabilitare Global Receive Offload (GRO) e Large Receive Offload (LRO) per impedire il taglio di pacchetti di rete più grandi:
sudo ethtool -K nome_interfaccia gro off lro off

Testa le prestazioni di Snort con la configurazione predefinita:
snort -c /usr/local/etc/snort/snort.lua
Questo dovrebbe restituire un output di successo che hai installato e configurato correttamente Snort nel tuo sistema. Ora puoi modificare le sue funzionalità e provare diverse configurazioni per trovare il miglior set di regole per proteggere la tua rete.
Stabilisci e applica le regole con Snort
Con le impostazioni di base in atto, Snort è ora pronto a difendere il tuo perimetro. Come sai, Snort ha bisogno di serie di regole per determinare la validità del traffico dati, prepariamo alcune serie di regole gratuite create dalla comunità per Snort.
Snort legge set di regole e configurazioni da directory specificate. Quindi, prima, usando i comandi mkdir و toccare , crea alcune directory importanti per memorizzare regole e altri dati correlati per snort:
sudo mkdir -p /usr/local/etc/{lists,so_rules,rules} sudo touch /usr/local/etc/rules/local.rules sudo touch /usr/local/etc/lists/default.blocklistCreando queste guide, puoi scaricare il set di regole della community dal sito Web ufficiale utilizzando il comando wget:
scarica https://www.snort.org/downloads/community/snort3-community-rules.tar.gz
Una volta terminato il download del set di regole, estrailo e copialo nella directory /usr/local/etc/rules/.
tar -xvzf snort3-com* cd snort3-com* cp * /usr/local/etc/rules/

Per eseguire uno snort con il set di regole, esegui questo comando:
sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -i nome_interfaccia -s 65535 -k nessuno
spiegazione del comando:
- -c Specifica il percorso del file di configurazione predefinito.
- -R Specifica il percorso della regola che viene applicata.
- -i Definisce l'interfaccia.
- -s ignora il limite snaplen.
- -k Ignora il checksum.
Questo dovrebbe convalidare la configurazione e forzare tutti i set di regole su Snort. Una volta rilevato qualsiasi disturbo di rete, ti avviserà con un messaggio di console.
Se desideri creare e implementare il tuo insieme di regole, puoi saperne di più su di esse all'indirizzo Pagine di documentazione ufficiale. Verificare I migliori servizi di firewall per applicazioni Web per proteggere il sito Web.
Stabilire record con Snort

Per impostazione predefinita, Snort non emette alcun registro. È necessario specificare utilizzando il tag -L Per avviare Snort in modalità registrazione, specificare il tipo di file di registro e un tag -l Imposta la directory del registro per Snort per eseguire il dump dei registri.
Ecco il comando per avviare Snort con i log abilitati:
sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -i nome_interfaccia -s 65535 -k nessuno -L tipo_file -l /var/log/snort
spiegazione del comando:
- -c Specifica il percorso del file di configurazione predefinito.
- -R Specifica il percorso della regola che viene applicata.
- -i Definisce l'interfaccia.
- -s ignora il limite snaplen.
- -k Ignora il checksum.
- -L Abilita la modalità di registrazione e specifica il tipo di file di registro.
- Precisa -l Registra il percorso di archiviazione.
Si noti che nell'esempio di comando precedente, la directory del registro è impostata su /var/log/snort. Sebbene questa sia una pratica consigliata, sei libero di archiviare i tuoi record altrove.
Puoi leggere i file di registro da Snort dalla directory specificata o passarli a un'applicazione SIEM come Splunk per un'ulteriore analisi.
Aggiungi Snort come processo demone per avviarlo con il sistema

Anche se hai installato e configurato Snort, devi assicurarti che inizi l'esecuzione all'avvio e funzioni come server in background. Aggiungendolo come servizio di sistema ad avvio automatico assicurerai che Snort sia in esecuzione e difenda il tuo sistema per tutto il tempo in cui è online.
Ecco come aggiungere il processo daemon per avviare Snort su Linux:
- Inizia creando un file di servizio systemd nuovo:
tocca /lib/systemd/system/snort.service
- Apri il file in un editor di testo a tua scelta e compilalo con i seguenti dati. È possibile modificare i tag in base alle proprie esigenze:
[Unità] Descrizione=Snort Daemon Dopo=syslog.target network.target [Servizio] Tipo=simple ExecStart=/usr/local/bin/snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -s 65535 -k none -l /var/log/snort -D -L pcap -i ens33 [Installa] WantedBy=multi-user.target
- Salva ed esci dal file. Successivamente, utilizzando i due comandi INSTALLAZIONE و systemctl , abilita e avvia lo script:
sudo systemctl enable snort. servizio sudo snort start
Il demone Snort ora dovrebbe essere in esecuzione. Puoi controllare lo stato dello script usando il comando. Dovrebbe restituire un output positivo.
systemctl status snort
Ora sai come proteggere la tua rete con Snort IDS
Sebbene l'IDS sia una buona pratica, è più un'azione passiva che attiva. Il modo migliore per migliorare e garantire la sicurezza della tua rete è testarla costantemente e cercare difetti che devono essere corretti.
I test di penetrazione sono un ottimo modo per trovare e correggere le vulnerabilità sfruttabili. Puoi visualizzare ora I migliori strumenti di test di penetrazione per i professionisti della sicurezza informatica.










