So konfigurieren Sie Snort unter Debian

Snort ist ein kostenloses Network Intrusion Detection System (IDS). In weniger offiziellen Begriffen können Sie Ihr Netzwerk in Echtzeit auf verdächtige Aktivitäten überwachen . Derzeit bietet Snort Pakete für Fedora-, CentOS-, FreeBSD- und Windows-basierte Systeme an. Die genaue Installationsmethode variiert zwischen den Betriebssystemen. In diesem Tutorial werden wir direkt aus den Quelldateien für Snort installieren. Dieser Leitfaden wurde für Debian geschrieben.

Aktualisieren, aktualisieren und neu starten

Bevor wir die Snort-Quellen tatsächlich in die Hände bekommen, müssen wir sicherstellen, dass unser System auf dem neuesten Stand ist. Wir können dies tun, indem wir die folgenden Befehle eingeben.

sudo apt-get update
sudo apt-get upgrade -y
sudo reboot

Konfiguration vorinstallieren

Nach dem Neustart Ihres Systems müssen wir eine Reihe von Paketen installieren, um sicherzustellen, dass wir SBPP installieren können. Ich konnte herausfinden, dass einige der Pakete benötigt wurden, daher ist der Basisbefehl unten.

sudo apt-get install flex bison build-essential checkinstall libpcap-dev libnet1-dev libpcre3-dev libnetfilter-queue-dev iptables-dev libdumbnet-dev zlib1g-dev -y

Sobald alle Pakete installiert sind, müssen Sie ein temporäres Verzeichnis für Ihre Quelldateien erstellen - sie können sich an einer beliebigen Stelle befinden. Ich werde verwenden /usr/src/snort_src. Um diesen Ordner zu erstellen, müssen Sie als rootBenutzer angemeldet sein oder über sudoBerechtigungen verfügen - dies rootmacht es nur einfacher.

sudo mkdir /usr/src/snort_src
cd /usr/src/snort_src

Installieren der Datenerfassungsbibliothek (DAQ)

Bevor wir die Quelle für Snort erhalten können, müssen wir den DAQ installieren. Es ist ziemlich einfach zu installieren.

wget https://www.snort.org/downloads/snort/daq-2.0.6.tar.gz

Extrahieren Sie die Dateien aus dem Tarball.

tar xvfz daq-2.0.6.tar.gz

Wechseln Sie in das DAQ-Verzeichnis.

cd daq-2.0.6

Konfigurieren und installieren Sie den DAQ.

./configure; make; sudo make install

Diese letzte Zeile wird ./configurezuerst ausgeführt. Dann wird es ausgeführt make. Zuletzt wird es ausgeführt make install. Wir verwenden hier die kürzere Syntax, um ein wenig beim Tippen zu sparen.

Snort installieren

Wir möchten sicherstellen, dass wir wieder im /usr/src/snort_srcVerzeichnis sind. Wechseln Sie also in dieses Verzeichnis mit:

cd /usr/src/snort_src

Nachdem wir uns im Verzeichnis für die Quellen befinden, laden wir die tar.gzDatei für die Quelle herunter . Zum Zeitpunkt dieses Schreibens ist die neueste Version von Snort 2.9.8.0.

wget https://www.snort.org/downloads/snort/snort-2.9.8.0.tar.gz

Die Befehle zum tatsächlichen Installieren von snort sind denen für den DAQ sehr ähnlich, haben jedoch unterschiedliche Optionen.

Extrahieren Sie die Snort-Quelldateien.

tar xvfz snort-2.9.8.0.tar.gz

Wechseln Sie in das Quellverzeichnis.

cd snort-2.9.8.0

Konfigurieren und installieren Sie die Quellen.

 ./configure --enable-sourcefire; make; sudo make install

Nachinstallation von Snort

Sobald wir Snort installiert haben, müssen wir sicherstellen, dass unsere gemeinsam genutzten Bibliotheken auf dem neuesten Stand sind. Wir können dies mit dem Befehl tun:

sudo ldconfig

Testen Sie anschließend Ihre Snort-Installation:

snort --version

Wenn dieser Befehl nicht funktioniert, müssen Sie einen Symlink erstellen. Sie können dies tun, indem Sie Folgendes eingeben:

sudo ln -s /usr/local/bin/snort /usr/sbin/snort
snort --version

Die resultierende Ausgabe ähnelt der folgenden:

   ,,_     -*> Snort! <*-
  o"  )~   Version 2.9.7.5 GRE (Build 262)
   ''''    By Martin Roesch & The Snort Team: http://www.snort.org/contact#team
           Copyright (C) 2014-2015 Cisco and/or its affiliates. All rights reserved.
           Copyright (C) 1998-2013 Sourcefire, Inc., et al.
           Using libpcap version 1.6.2
           Using PCRE version: 8.35 2014-04-04
           Using ZLIB version: 1.2.8

Snort ohne Wurzeln

Nachdem wir snort installiert haben, möchten wir nicht, dass es als ausgeführt rootwird. Daher müssen wir einen snortBenutzer und eine Gruppe erstellen . Um einen neuen Benutzer und eine neue Gruppe zu erstellen, können Sie diese beiden Befehle verwenden:

sudo groupadd snort
sudo useradd snort -r -s /sbin/nologin -c SNORT_IDS -g snort

Da wir das Programm unter Verwendung der Quelle installiert haben, müssen wir die Konfigurationsdateien und die Regeln für Snort erstellen.

sudo mkdir /etc/snort
sudo mkdir /etc/snort/rules
sudo mkdir /etc/snort/preproc_rules
sudo touch /etc/snort/rules/white_list.rules /etc/snort/rules/black_list.rules /etc/snort/rules/local.rules

Nachdem wir die Verzeichnisse und Regeln erstellt haben, müssen wir jetzt das Protokollverzeichnis erstellen.

sudo mkdir /var/log/snort

Und bevor wir Regeln hinzufügen können, benötigen wir einen Speicherort für die dynamischen Regeln.

sudo mkdir /usr/local/lib/snort_dynamicrules

Nachdem alle vorherigen Dateien erstellt wurden, legen Sie die richtigen Berechtigungen für sie fest.

sudo chmod -R 5775 /etc/snort
sudo chmod -R 5775 /var/log/snort
sudo chmod -R 5775 /usr/local/lib/snort_dynamicrules
sudo chown -R snort:snort /etc/snort
sudo chown -R snort:snort /var/log/snort
sudo chown -R snort:snort /usr/local/lib/snort_dynamicrules

Einrichten der Konfigurationsdateien

Um viel Zeit zu sparen und nicht alles kopieren und einfügen zu müssen, kopieren Sie einfach alle Dateien in das Konfigurationsverzeichnis.

sudo cp /usr/src/snort_src/snort*/etc/*.conf* /etc/snort
sudo cp /usr/src/snort_src/snort*/etc/*.map /etc/snort

Nachdem die Konfigurationsdateien vorhanden sind, können Sie zwei Dinge tun:

  • Sie können Barnyard2 aktivieren
  • Oder Sie lassen die Konfigurationsdateien einfach in Ruhe und aktivieren selektiv die gewünschten Regeln.

In jedem Fall werden Sie noch einige Dinge ändern wollen. Weiter lesen.

Aufbau

In der /etc/snort/snort.confDatei müssen Sie die Variable ändern HOME_NET. Es sollte auf den IP-Block Ihres internen Netzwerks eingestellt sein, damit die Versuche Ihres eigenen Netzwerks, sich beim Server anzumelden, nicht protokolliert werden. Dies kann 10.0.0.0/24oder sein 192.168.0.0/16. /etc/snort/snort.confÄndern Sie in Zeile 45 die Variable HOME_NETauf den Wert des IP-Blocks Ihres Netzwerks.

In meinem Netzwerk sieht es so aus:

ipvar HOME_NET 192.168.0.0/16

Dann müssen Sie die EXTERNAL_NETVariable auf Folgendes setzen :

any

Was sich einfach EXERNAL_NETin das verwandelt, was du HOME_NETnicht bist .

Regeln festlegen

Nachdem ein Großteil des Systems eingerichtet ist, müssen wir unsere Regeln für dieses kleine Schweinchen konfigurieren. Irgendwo um Zeile 104 in Ihrer /etc/snort/snort.confDatei, sollten Sie eine „var“ Deklaration und die Variablen sehen RULE_PATH, SO_RULE_PATH, PREPROC_RULE_PATH, WHITE_LIST_PATH, und BLACK_LIST_PATH. Ihre Werte sollten auf die Pfade eingestellt werden, in denen wir verwendet haben Un-rooting Snort.

var RULE_PATH /etc/snort/rules
var SO_RULE_PATH /etc/snort/so_rules
var PREPROC_RULE_PATH /etc/snort/preproc_rules
var WHITE_LIST_PATH /etc/snort/rules
var BLACK_LIST_PATH /etc/snort/rules

Sobald diese Werte festgelegt sind, löschen oder kommentieren Sie die aktuellen Regeln ab Zeile 548.

Überprüfen Sie nun, ob Ihre Konfiguration korrekt ist. Sie können es mit überprüfen snort.

 # snort -T -c /etc/snort/snort.conf

Sie sehen eine Ausgabe ähnlich der folgenden (der Kürze halber abgeschnitten).

 Running in Test mode

         --== Initializing Snort ==--
 Initializing Output Plugins!
 Initializing Preprocessors!
 Initializing Plug-ins!
 .....
 Rule application order: activation->dynamic->pass->drop->sdrop->reject->alert->log
 Verifying Preprocessor Configurations!

         --== Initialization Complete ==--

    ,,_     -*> Snort! <*-
   o"  )~   Version 2.9.8.0 GRE (Build 229) 
    ''''    By Martin Roesch & The Snort Team: http://www.snort.org/contact#team
            Copyright (C) 2014-2015 Cisco and/or its affiliates. All rights reserved.
            Copyright (C) 1998-2013 Sourcefire, Inc., et al.
            Using libpcap version 1.7.4
            Using PCRE version: 8.35 2014-04-04
            Using ZLIB version: 1.2.8

            Rules Engine: SF_SNORT_DETECTION_ENGINE  Version 2.4  <Build 1>
            Preprocessor Object: SF_IMAP  Version 1.0  <Build 1>
            Preprocessor Object: SF_FTPTELNET  Version 1.2  <Build 13>
            Preprocessor Object: SF_SIP  Version 1.1  <Build 1>
            Preprocessor Object: SF_REPUTATION  Version 1.1  <Build 1>
            Preprocessor Object: SF_POP  Version 1.0  <Build 1>
            Preprocessor Object: SF_DCERPC2  Version 1.0  <Build 3>
            Preprocessor Object: SF_SDF  Version 1.1  <Build 1>
            Preprocessor Object: SF_GTP  Version 1.1  <Build 1>
            Preprocessor Object: SF_DNS  Version 1.1  <Build 4>
            Preprocessor Object: SF_SSH  Version 1.1  <Build 3>
            Preprocessor Object: SF_DNP3  Version 1.1  <Build 1>
            Preprocessor Object: SF_SSLPP  Version 1.1  <Build 4>
            Preprocessor Object: SF_SMTP  Version 1.1  <Build 9>
            Preprocessor Object: SF_MODBUS  Version 1.1  <Build 1>

 Snort successfully validated the configuration!
 Snort exiting

Nachdem alles fehlerfrei konfiguriert wurde, können Sie Snort testen.

Schnauben testen

Der einfachste Weg, Snort zu testen, ist das Aktivieren von local.rules. Dies ist eine Datei, die Ihre benutzerdefinierten Regeln enthält.

Wenn Sie in der snort.confDatei irgendwo in Zeile 546 bemerkt haben , existiert diese Zeile:

include $RULE_PATH/local.rules

Wenn Sie es nicht haben, fügen Sie es bitte um 546 hinzu. Sie können die local.rulesDatei dann zum Testen verwenden. Als Basistest muss Snort nur eine Ping-Anfrage (ICMP-Anfrage) verfolgen. Sie können dies tun, indem Sie in der folgenden Zeile zu Ihrer local.rulesDatei hinzufügen .

 alert icmp any any -> $HOME_NET any (msg:"ICMP test"; sid:10000001; rev:001;)

Sobald Sie das in Ihrer Datei haben, speichern Sie es und lesen Sie weiter.

Führen Sie den Test aus

Der folgende Befehl startet Snort und druckt Warnungen im "Schnellmodus", während der Benutzer unter der Gruppe schnaubt, unter Verwendung der Konfiguration /etc/snort/snort.confund überwacht die Netzwerkschnittstelle eno1. Sie müssen zu eno1der Netzwerkschnittstelle wechseln , die Ihr System abhört.

$ sudo /usr/local/bin/snort -A console -q -u snort -g snort -c /etc/snort/snort.conf -i eno1

Sobald Sie es ausgeführt haben, pingen Sie diesen Computer an. Sie sehen eine Ausgabe, die wie folgt aussieht:

01/07−16:03:30.611173 [**] [1:10000001:0] ICMP test [**] [Priority: 0]  192.168.1.105 -> 192.168.1.104
01/07−16:03:31.612174 [**] [1:10000001:0] ICMP test [**] [Priority: 0]  192.168.1.104 -> 192.168.1.105
01/07−16:03:31.612202 [**] [1:10000001:0] ICMP test [**] [Priority: 0]  192.168.1.105 -> 192.168.1.104
^C*** Caught Int−Signal

Sie können Strg + C drücken , um das Programm zu beenden, und das war's. Snort ist fertig. Sie können jetzt alle gewünschten Regeln verwenden.

Abschließend möchte ich darauf hinweisen, dass es einige öffentliche Regeln der Community gibt, die Sie von der offiziellen Website unter der Registerkarte "Community" herunterladen können . Suchen Sie nach "Snort", dann gibt es direkt darunter einen Community-Link. Laden Sie das herunter, extrahieren Sie es und suchen Sie nach der community.rulesDatei.



Richten Sie mit OpenVPN Ihr eigenes privates Netzwerk ein

Richten Sie mit OpenVPN Ihr eigenes privates Netzwerk ein

Vultr bietet Ihnen eine hervorragende Konnektivität für private Netzwerke für Server, die am selben Standort ausgeführt werden. Aber manchmal möchten Sie zwei Server in verschiedenen Ländern

Installieren und Verwenden von Yunohost unter Debian 7 x64

Installieren und Verwenden von Yunohost unter Debian 7 x64

Dieses Tutorial führt Sie durch die Installation des Yunohost Complete Server-Kontrollfelds unter Debian. Folgen Sie einfach dem Tutorial und Ihr Server wird in Betrieb sein

Chroot auf Debian einrichten

Chroot auf Debian einrichten

In diesem Artikel erfahren Sie, wie Sie unter Debian ein Chroot-Gefängnis einrichten. Ich gehe davon aus, dass Sie Debian 7.x verwenden. Wenn Sie Debian 6 oder 8 ausführen, funktioniert dies möglicherweise, bu

So installieren Sie PiVPN unter Debian

So installieren Sie PiVPN unter Debian

Einführung Eine einfache Möglichkeit, einen VPN-Server unter Debian einzurichten, ist PiVPN. PiVPN ist ein Installationsprogramm und ein Wrapper für OpenVPN. Es werden einfache Befehle für Sie erstellt

Richten Sie Cacti auf Debian Jessie ein

Richten Sie Cacti auf Debian Jessie ein

Einführung Cacti ist ein Open-Source-Überwachungs- und Grafiktool, das vollständig auf RRD-Daten basiert. Mit Cacti können Sie nahezu jede Art von Gerät überwachen

Einrichten von Teamspeak 3 auf Debian Wheezy

Einrichten von Teamspeak 3 auf Debian Wheezy

Dieser Artikel zeigt Ihnen, wie Sie einen Teamspeak 3-Server unter Debian Wheezy ausführen. Bevor Sie damit beginnen können, sollten Sie einige Vorbereitungen für Ihr VPS treffen. ich

Verwenden von MySQL Views unter Debian 7

Verwenden von MySQL Views unter Debian 7

Einführung MySQL verfügt über eine großartige Funktion, die als Ansichten bezeichnet wird. Ansichten sind gespeicherte Abfragen. Stellen Sie sich diese als Alias ​​für eine ansonsten lange Abfrage vor. In diesem Handbuch

So installieren Sie ModSecurity für Nginx unter CentOS 7, Debian 8 und Ubuntu 16.04

So installieren Sie ModSecurity für Nginx unter CentOS 7, Debian 8 und Ubuntu 16.04

ModSecurity ist ein WAF-Modul (Open Source Web Application Firewall), mit dem Apache, Nginx und IIS vor verschiedenen Cyberangriffen geschützt werden können

Installieren Sie Hiawatha Web Server mit PHP-FPM und MySQL unter Debian

Installieren Sie Hiawatha Web Server mit PHP-FPM und MySQL unter Debian

Hiawatha ist ein Webserver, der Einfachheit, Benutzerfreundlichkeit und Sicherheit im Auge hat. Es ist die perfekte Lösung für kleinere Server, ältere Hardware oder Embedde

Installieren Sie Lynis auf Debian 8

Installieren Sie Lynis auf Debian 8

Einführung Lynis ist ein kostenloses Open-Source-Tool zur Systemprüfung, das von vielen Systemadministratoren verwendet wird, um die Integrität zu überprüfen und ihre Systeme zu härten. ich

Überwachen Sie den Debian-Serverstatus mit Munin

Überwachen Sie den Debian-Serverstatus mit Munin

Munin ist ein Überwachungstool zur Überwachung von Prozessen und Ressourcen in Ihrer Maschine und präsentiert die Informationen in Diagrammen über eine Weboberfläche. Verwenden Sie die folgenden

So installieren Sie das NodeBB-Forum unter Debian 9

So installieren Sie das NodeBB-Forum unter Debian 9

Verwenden Sie ein anderes System? NodeBB ist ein Node.js-basiertes Forum. Es verwendet Web-Sockets für sofortige Interaktionen und Echtzeitbenachrichtigungen. NodeBB-Quellcode i

So installieren Sie BigTree CMS auf einem Debian 9 LAMP VPS

So installieren Sie BigTree CMS auf einem Debian 9 LAMP VPS

Verwenden Sie ein anderes System? BigTree CMS 4.2 ist ein schnelles und leichtes, kostenloses und Open-Source-Content-Management-System (CMS) für Unternehmen mit umfangreichen Funktionen

So installieren Sie Koel unter Debian 9

So installieren Sie Koel unter Debian 9

Verwenden Sie ein anderes System? Koel ist eine einfache webbasierte persönliche Audio-Streaming-App, die auf der Clientseite in Vue und auf der Serverseite in Laravel geschrieben wurde. Koe

Sticky Session mit Docker Swarm (CE) auf Debian 9

Sticky Session mit Docker Swarm (CE) auf Debian 9

Verwenden Sie ein anderes System? Einführung Docker Swarm verwandelt Ihre einzelnen Server in einen Computercluster. Erleichterung der Skalierung, Hochverfügbarkeit an

So installieren Sie Paste 2.1 auf einem Debian 9 LAMP VPS

So installieren Sie Paste 2.1 auf einem Debian 9 LAMP VPS

Verwenden Sie ein anderes System? Paste 2.1 ist eine einfache und flexible, kostenlose und Open-Source-Pastebin-Anwendung zum Speichern von Code, Text und mehr. Es war ursprünglich

Erzwinge Apt-Get auf IPv4 oder IPv6 unter Ubuntu oder Debian

Erzwinge Apt-Get auf IPv4 oder IPv6 unter Ubuntu oder Debian

Hier bei Vultr haben wir die Option, IPv6 auf allen bereitstellbaren VPS zu aktivieren. Aber damit bevorzugen einige Programme und Befehle den einen oder anderen Witz

So installieren Sie Automad CMS unter Debian 9

So installieren Sie Automad CMS unter Debian 9

Verwenden Sie ein anderes System? Einführung Automad ist ein Open Source File-basiertes Content Management System (CMS) und eine in PHP geschriebene Template Engine. Automa

So installieren Sie Apache Cassandra 3.11.x unter Debian 9

So installieren Sie Apache Cassandra 3.11.x unter Debian 9

Verwenden Sie ein anderes System? Apache Cassandra ist ein kostenloses und Open-Source-NoSQL-Datenbankverwaltungssystem, das Skalierbarkeit bietet

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist

ReactOS: Ist das die Zukunft von Windows?

ReactOS: Ist das die Zukunft von Windows?

ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.