Εάν ενδιαφέρεστε σοβαρά για την ασφάλεια του δικτύου και τη βελτίωση της προστασίας, τότε η εγκατάσταση συστημάτων ανίχνευσης και πρόληψης εισβολής (IPS ή IDS) είναι απαραίτητη για την ενίσχυση της περιμέτρου του δικτύου και την εκτροπή της ανεπιθύμητης κυκλοφορίας δικτύου.
Το Snort είναι μια δημοφιλής δωρεάν και ανοιχτού κώδικα λύση IPS/IDS. Ας μάθουμε πώς μπορείτε να εγκαταστήσετε και να ρυθμίσετε το Snort στο Linux για να προστατεύσετε το δίκτυό σας από κυβερνοεπιθέσεις. Επαληθεύω Τι συμβαίνει όταν το τηλέφωνό σας σας κατασκοπεύει;

Γρήγοροι σύνδεσμοι
Τι είναι το ροχαλητό;

Το Snort είναι μια εφαρμογή Ανίχνευσης και Πρόληψης Εισβολής Δικτύου ανοιχτού κώδικα (NIDS/IPS) που, όπως υποδηλώνει το όνομα, συμβάλλει στην ασφάλεια της περιμέτρου του δικτύου σας επιβάλλοντας κανόνες και φίλτρα που εντοπίζουν και απορρίπτουν κακόβουλα πακέτα που εισάγονται στο δίκτυό σας.
Με το Snort, θα μπορείτε να εκτελείτε προηγμένη καταγραφή κυκλοφορίας δικτύου, ανίχνευση πακέτων και ανάλυση και να δημιουργήσετε ένα ισχυρό σύστημα πρόληψης εισβολής που προστατεύει το δίκτυό σας από ανεπιθύμητη και δυνητικά κακόβουλη κυκλοφορία.
Προϋποθέσεις για την εγκατάσταση του Snort
Πριν εγκαταστήσετε το Snort, πρέπει να γίνει κάποια αρχική ρύθμιση. Αυτό περιλαμβάνει κυρίως την ενημέρωση και την αναβάθμιση του συστήματός σας και την εγκατάσταση των εξαρτήσεων που απαιτεί το Snort για να λειτουργεί σωστά.
Ξεκινήστε με την ενημέρωση και την αναβάθμιση του συστήματός σας.
Σε διανομές Linux που βασίζονται στο Ubuntu και στο Debian:
sudo apt update && apt upgrade -y
Σχετικά με το Arch Linux και τις βασισμένες διανομές του:
sudo pacman -Syu
Σε RHEL και Fedora:
sudo dnf αναβάθμιση
Καθώς το σύστημά σας αναβαθμίζεται, συνεχίστε να εγκαθιστάτε τις εξαρτήσεις που απαιτεί το Snort. Εδώ είναι οι εντολές που πρέπει να εκτελέσετε:
Σε Ubuntu και Debian, εκτελέστε:
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
Στο Arch Linux, εκτελέστε:
sudo pacman -S gperftools hwloc hyperscan ibdaqlibdnet libmnl libpcap libunwind luajit lz4 openssl pcre pullporkxz zlib cmake pkgconf
Για RHEL και Fedora, εκδώστε την ακόλουθη εντολή:
sudo dnf install gcc gcc-c++ libnetfilter_queue-devel git flex bison zlib zlib-devel pcre pcredevel libdnet tcpdump libnghttp2 wget xz-devel -y
Επιπλέον, πρέπει επίσης να εγκαταστήσετε με μη αυτόματο τρόπο τη βιβλιοθήκη απόκτησης δεδομένων, το LibDAQ για το Snort για να λειτουργήσει σωστά και επίσης το gperftools για τη δημιουργία αρχείων έκδοσης.
Αρχικά, πραγματοποιήστε λήψη των αρχείων πηγής LibDAQ από τον επίσημο ιστότοπο χρησιμοποιώντας την εντολή wget. Στη συνέχεια, εξαγάγετε το αρχείο zip και πηγαίνετε στον κατάλογο με το cd. Μέσα στον κατάλογο, εκτελέστε την εκκίνηση και διαμορφώστε τα σενάρια και, στη συνέχεια, προχωρήστε στην προετοιμασία των αρχείων με την εντολή make install.
wget https://www.snort.org/downloads/snortplus/libdaq-3.0.11.tar.gz tar -xzvf lib* cd lib* ./bootstrap ./configure δημιουργία sudo δημιουργία εγκατάστασης
Με εγκατεστημένο το LibDAQ, πρέπει να εγκαταστήσετε μια τελευταία εξάρτηση: gperftools. Ξεκινήστε λαμβάνοντας τα αρχεία προέλευσης από το αποθετήριο GitHub. Εξαγάγετε τα αρχεία, πλοηγηθείτε στον κατάλογο και εκτελέστε το σενάριο διαμόρφωσης. Τέλος, εγκαταστήστε το πακέτο χρησιμοποιώντας εντολές 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
Μόλις εγκατασταθούν αυτές οι εξαρτήσεις, μπορείτε να προχωρήσετε στα επόμενα βήματα για να εγκαταστήσετε το Snort.
Εγκαταστήστε το Snort από την πηγή στο Linux

Αφού ολοκληρωθεί η αρχική ρύθμιση, μπορείτε τώρα να εστιάσετε στην εγκατάσταση της πραγματικής εφαρμογής. Θα το δημιουργήσετε από την πηγή, οπότε λάβετε πρώτα τα απαιτούμενα αρχεία κατασκευής.
Χρησιμοποιήστε την εντολή wget ή κατεβάστε τα αρχεία με μη αυτόματο τρόπο από την επίσημη σελίδα λήψης:
wget https://www.snort.org/downloads/snortplus/snort3-3.1.58.0.tar.gz
για να κατεβάσετε: Φύσημα
Μόλις ολοκληρωθεί η λήψη του αρχείου zip που περιέχει τα αρχεία κατασκευής, εξαγάγετε το χρησιμοποιώντας την εντολή πίσσα:
tar -xzvf ρουθούνισμα*
Μεταβείτε στον φάκελο που έχει εξαχθεί, εκτελέστε το σενάριο διαμόρφωσης και χρησιμοποιήστε την εντολή κάνω Για να προετοιμάσετε τα αρχεία και, στη συνέχεια, να το εγκαταστήσετε με make install:
cd snort* ./configure_cmake.sh — prefix=/usr/local — enable-tcmalloc cd build make sudo make install
Το Snort θα εγκατασταθεί πλέον με επιτυχία στο σύστημά σας. Ωστόσο, υπάρχει ένα ακόμη βήμα που πρέπει να ολοκληρώσετε. Κατά την μη αυτόματη εγκατάσταση μιας νέας εφαρμογής, ο κατάλογος εγκατάστασης και οι απαιτούμενες βιβλιοθήκες ενδέχεται να μην περιλαμβάνονται αυτόματα στην προεπιλεγμένη διαδρομή του συστήματος. Επομένως, ενδέχεται να αντιμετωπίσετε σφάλματα κατά την εκκίνηση της εφαρμογής.
Για να αποφύγετε αυτό το πρόβλημα, πρέπει να εκτελέσετε την εντολή ldconfig. Θα συγχρονίσει την προσωρινή μνήμη κοινόχρηστης βιβλιοθήκης του συστήματος με βιβλιοθήκες και δυαδικά αρχεία που έχουν εγκατασταθεί πρόσφατα. Εκτελέστε την εντολή ldconfig Με δικαιώματα root ή χρησιμοποιώντας πρόθεμα sudo:
sudo ldconfig
Τώρα έχω καλύψει όλα τα σημαντικά βήματα που απαιτούνται για την εγκατάσταση του Snort. Για να ελέγξετε την εγκατάσταση, εκτελέστε την εντολή snort με μια σημαία -V , και θα πρέπει να δείτε μια έξοδο που επιστρέφει το όνομα της έκδοσης και άλλα δεδομένα.
ρουθούνισμα -V
Αφού επαληθεύσετε ότι το Snort είναι εγκατεστημένο, ακολουθήστε τα επόμενα βήματα για να το ρυθμίσετε ως IDS/IPS που λειτουργεί πλήρως.
Αρχική διαμόρφωση του Snort σε Linux

Η αποτελεσματικότητα του Snort εξαρτάται σχεδόν εξ ολοκλήρου από την ποιότητα των συνόλων κανόνων με τα οποία παρέχεται.
Ωστόσο, προτού ξεκινήσετε τη ρύθμιση των κανόνων, πρέπει να διαμορφώσετε τις κάρτες δικτύου σας ώστε να λειτουργούν με το Snort και πρέπει επίσης να ελέγξετε τον τρόπο χειρισμού της προεπιλεγμένης διαμόρφωσης από το Snort. Ξεκινήστε διαμορφώνοντας τις κάρτες δικτύου.
Πρέπει να ρυθμίσετε τη διεπαφή δικτύου σε ακατάλληλη λειτουργία:
sudo ip link set dev interface_name promisc on
χρησιμοποιώντας ettool , απενεργοποιήστε την εκφόρτωση καθολικής λήψης (GRO) και τη μεγάλη εκφόρτωση λήψης (LRO) για να αποτρέψετε την αποκοπή μεγαλύτερων πακέτων δικτύου:
sudo ethtool -K interface_name gro off lro off

Ελέγξτε πώς λειτουργεί το Snort με την προεπιλεγμένη διαμόρφωση:
snort -c /usr/local/etc/snort/snort.lua
Αυτό θα επιστρέψει μια επιτυχημένη έξοδο που έχετε εγκαταστήσει και ρυθμίσει σωστά το Snort στο σύστημά σας. Τώρα μπορείτε να τροποποιήσετε τις δυνατότητές του και να δοκιμάσετε διαφορετικές διαμορφώσεις για να βρείτε το καλύτερο σύνολο κανόνων για την ασφάλεια του δικτύου σας.
Ορίστε και επιβάλλετε κανόνες με το Snort
Με τις βασικές ρυθμίσεις, το Snort είναι πλέον έτοιμο να υπερασπιστεί την περίμετρό σας. Όπως γνωρίζετε, το Snort χρειάζεται σύνολα κανόνων για να καθορίσει την εγκυρότητα της κυκλοφορίας δεδομένων, ας ετοιμάσουμε μερικά δωρεάν σύνολα κανόνων που έχουν δημιουργηθεί από την κοινότητα για το Snort.
Το Snort διαβάζει σύνολα κανόνων και διαμορφώσεις από καθορισμένους καταλόγους. Έτσι πρώτα, χρησιμοποιώντας εντολές mkdir و αφή , δημιουργήστε μερικούς σημαντικούς καταλόγους για την αποθήκευση κανόνων και άλλων σχετικών δεδομένων για 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.blocklistΔημιουργώντας αυτούς τους οδηγούς, μπορείτε να κάνετε λήψη του συνόλου κανόνων κοινότητας από τον επίσημο ιστότοπο χρησιμοποιώντας την εντολή wget:
wget https://www.snort.org/downloads/community/snort3-community-rules.tar.gz
Μόλις ολοκληρωθεί η λήψη του συνόλου κανόνων, εξαγάγετε το και αντιγράψτε το στον κατάλογο /usr/local/etc/rules/.
tar -xvzf snort3-com* cd snort3-com* cp * /usr/local/etc/rules/

Για να εκτελέσετε ένα snort με το σύνολο κανόνων, εκτελέστε αυτήν την εντολή:
sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -i όνομα_διεπαφής -s 65535 -k κανένα
εξήγηση εντολής:
- -c Καθορίζει τη διαδρομή προς το προεπιλεγμένο αρχείο ρυθμίσεων.
- -R Καθορίζει τη διαδρομή προς τον κανόνα που επιβάλλεται.
- -i Καθορίζει τη διεπαφή.
- -s αγνοεί το όριο snaplen.
- -k Αγνοεί το άθροισμα ελέγχου.
Αυτό θα πρέπει να επικυρώσει τη διαμόρφωση και να αναγκάσει όλα τα σύνολα κανόνων σε Snort. Μόλις εντοπίσει οποιαδήποτε διαταραχή δικτύου, θα σας ειδοποιήσει με ένα μήνυμα κονσόλας.
Εάν θέλετε να δημιουργήσετε και να εφαρμόσετε το δικό σας σύνολο κανόνων, μπορείτε να μάθετε περισσότερα για αυτούς στη διεύθυνση Επίσημες σελίδες τεκμηρίωσηςΕ Επαληθεύω Οι καλύτερες υπηρεσίες τείχους προστασίας εφαρμογών Ιστού για ασφαλή ιστότοπο.
Ρύθμιση ρεκόρ με το Snort

Από προεπιλογή, το Snort δεν εξάγει κανένα αρχείο καταγραφής. Πρέπει να καθορίσετε χρησιμοποιώντας την ετικέτα -L Για να ξεκινήσετε το Snort σε λειτουργία καταγραφής, καθορίστε τον τύπο αρχείου καταγραφής και μια ετικέτα -l Ρυθμίζει τον κατάλογο μητρώου για το Snort ώστε να απορρίπτει αρχεία καταγραφής.
Ακολουθεί η εντολή για να ξεκινήσετε το Snort με ενεργοποιημένα τα αρχεία καταγραφής:
sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -i όνομα_διεπαφής -s 65535 -k κανένα -L τύπος_αρχείου -l /var/log/snort
εξήγηση εντολής:
- -c Καθορίζει τη διαδρομή προς το προεπιλεγμένο αρχείο ρυθμίσεων.
- -R Καθορίζει τη διαδρομή προς τον κανόνα που επιβάλλεται.
- -i Καθορίζει τη διεπαφή.
- -s αγνοεί το όριο snaplen.
- -k Αγνοεί το άθροισμα ελέγχου.
- -L Ενεργοποιεί τη λειτουργία εγγραφής και καθορίζει τον τύπο του αρχείου καταγραφής.
- Διευκρινίζει -l Διαδρομή αποθήκευσης εγγραφών.
Σημειώστε ότι στο προηγούμενο παράδειγμα εντολής, ο κατάλογος μητρώου έχει οριστεί σε /var/log/snort. Αν και αυτή είναι μια συνιστώμενη πρακτική, μπορείτε να αποθηκεύσετε τα αρχεία σας αλλού.
Μπορείτε να διαβάσετε τα αρχεία καταγραφής από το Snort από τον κατάλογο που ορίσατε ή να τα μεταβιβάσετε σε μια εφαρμογή SIEM όπως το Splunk για περαιτέρω ανάλυση.
Προσθέστε το Snort ως διαδικασία δαίμονα για να το ξεκινήσετε με το σύστημα

Παρόλο που έχετε εγκαταστήσει και ρυθμίσει το Snort, πρέπει να βεβαιωθείτε ότι ξεκινά να εκτελείται κατά την εκκίνηση και ότι εκτελείται ως διακομιστής παρασκηνίου. Η προσθήκη του ως υπηρεσία συστήματος αυτόματης εκκίνησης θα διασφαλίσει ότι το Snort εκτελείται και προστατεύει το σύστημά σας όλη την ώρα που είναι online.
Δείτε πώς μπορείτε να προσθέσετε τη διαδικασία δαίμονα για να ξεκινήσετε το Snort στο Linux:
- Ξεκινήστε δημιουργώντας ένα αρχείο υπηρεσίας systemd νέος:
αγγίξτε /lib/systemd/system/snort.service
- Ανοίξτε το αρχείο σε ένα πρόγραμμα επεξεργασίας κειμένου της επιλογής σας και συμπληρώστε το με τα παρακάτω δεδομένα. Μπορείτε να τροποποιήσετε τις ετικέτες για να ταιριάζουν στις ανάγκες σας:
[Μονάδα] Περιγραφή=Snort Daemon After=syslog.target network.target [Υπηρεσία] Τύπος=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 [Εγκατάσταση] WantedBy=multi-user.target
- Αποθηκεύστε και βγείτε από το αρχείο. Μετά από αυτό, χρησιμοποιώντας τις δύο εντολές υπηρεσία و systemctl , ενεργοποιήστε και ξεκινήστε το σενάριο:
sudo systemctl ενεργοποίηση snort. υπηρεσία sudo snort start
Ο δαίμονας Snort θα πρέπει τώρα να τρέχει. Μπορείτε να ελέγξετε την κατάσταση του σεναρίου χρησιμοποιώντας την εντολή. Θα πρέπει να επιστρέψει μια θετική έξοδο.
snort κατάστασης systemctl
Τώρα ξέρετε πώς να προστατεύσετε το δίκτυό σας με το Snort IDS
Αν και το IDS είναι καλή πρακτική, είναι περισσότερο παθητική παρά ενεργητική δράση. Ο καλύτερος τρόπος για να βελτιώσετε και να διασφαλίσετε την ασφάλεια του δικτύου σας είναι να το δοκιμάζετε συνεχώς και να αναζητάτε ελαττώματα που πρέπει να διορθωθούν.
Η δοκιμή διείσδυσης είναι ένας πολύ καλός τρόπος για να βρείτε και να επιδιορθώσετε εκμεταλλεύσιμα τρωτά σημεία. Μπορείτε να δείτε τώρα Τα καλύτερα εργαλεία δοκιμών διείσδυσης για επαγγελματίες ασφάλειας στον κυβερνοχώρο.










