Καταγραφή όλων των δραστηριοτήτων με iptables

IptablesΑπό προεπιλογή, έχει τον κανόνα φίλτρου στη λειτουργία "Αποδοχή όλων", δηλαδή επιτρέπει σε και έξω όλες τις συνδέσεις από ή προς τον υπολογιστή μας, αλλά τι γίνεται αν θέλουμε να καταγράψουμε όλες τις πληροφορίες σχετικά με τις συνδέσεις που έγιναν στους διακομιστές ή τους υπολογιστές μας;

Σημείωση: Η διαδικασία που θα εκτελέσω είναι έγκυρη 100% σε διανομές Debian/Με βάση το Debian, έτσι εάν χρησιμοποιείτε Slackware, Μαλακό καπέλλο, CentOS, OpenSuSe, η διαδικασία μπορεί να μην είναι η ίδια, σας συνιστούμε να διαβάσετε και να κατανοήσετε το σύστημα σύνδεσης της διανομής σας πριν εφαρμόσετε αυτό που εξηγείται παρακάτω. Υπάρχει επίσης η δυνατότητα εγκατάστασης του rsyslog στη διανομή σας, εάν είναι διαθέσιμο στα αποθετήρια, αν και σε αυτό το σεμινάριο, το syslog εξηγείται επίσης στο τέλος.

Όλα καλά μέχρι τώρα, αλλά τιΠού θα συνδεθούμε; Εύκολο, στο αρχείο «/var/log/firewall/iptables.log", τι δεν υπάρχει, μέχρι να το πιστέψουμε οι ίδιοι ...

1- Πρέπει να δημιουργήσουμε το αρχείο «iptables.log»Μέσα στο φάκελο«/ var / log / τείχος προστασίας»Πρέπει να το δημιουργήσουμε, γιατί δεν υπάρχει.

mkdir -p / var / log / τείχος προστασίας /
αγγίξτε το /var/log/firewall/iptables.log

2- Άδειες, πολύ σημαντικό ...

chmod 600 /var/log/firewall/iptables.log
chown root: adm /var/log/firewall/iptables.log

3- rsyslog, ο δαίμονας σύνδεσης του Debian, διαβάζει τη διαμόρφωση από «/etc/rsyslog.d«Πρέπει λοιπόν να δημιουργήσουμε ένα αρχείο που θα ονομάσω«τείχος προστασίας.conf»Από το οποίο το rsyslog μπορεί να ερμηνεύσει τι θέλουμε να κάνουμε.

αγγίξτε /etc/rsyslog.d/firewall.conf

Και μέσα τον αφήνουμε πτώση απαλά το ακόλουθο περιεχόμενο:

: msg, περιέχει, "iptables:" - / var / log / firewall / iptables.log
& ~

Δεν έχω την παραμικρή ιδέα,τι κάνουν αυτές οι δυο γραμμές?

Η πρώτη γραμμή ελέγχει τα καταγεγραμμένα δεδομένα για τη συμβολοσειρά «iptables: »Και το προσθέτει στο αρχείο«/var/log/firewall/iptables.log«

Το δεύτερο, σταματά την επεξεργασία των πληροφοριών που έχουν καταγραφεί με το προηγούμενο μοτίβο, ώστε να μην συνεχιστεί η αποστολή στο «/ var / log / μηνύματα".

4- Περιστροφή του αρχείου καταγραφής, με logrotate.

Πρέπει να δημιουργήσουμε μέσα στο «/etc/logrotate.d/" το αρχείο "firewall»Που θα περιέχει το ακόλουθο περιεχόμενο:

/var/log/firewall/iptables.log
{
περιστροφή 7
καθημερινά
μέγεθος 10M
ημερομηνία
missingok
δημιουργήστε 600 root adm
notifempty
κομπρέσα
καθυστέρηση συμπίεσης
μεταπροστατική
invoke-rc.d rsyslog reload> / dev / null
τελικό κείμενο
}

Για να περιστρέψετε τα αρχεία καταγραφής 7 φορές πριν τα διαγράψετε, 1 φορά την ημέρα, μέγιστο μέγεθος αρχείου καταγραφής 10MB, συμπιεσμένο, με ημερομηνία, χωρίς να δοθεί σφάλμα εάν το αρχείο καταγραφής δεν υπάρχει, δημιουργήθηκε ως root.

5- Επανεκκινήστε, όπως όλα τα xD, το δαίμονα rsyslog:

/etc/init.d/rsyslog επανεκκίνηση

Πώς να αποδείξετε ότι όλα αυτά λειτουργούν;

Ας δοκιμάσουμε το SSH.

εγκαταστήσετε OpenSSH (σε περίπτωση που δεν το έχουν εγκαταστήσει ...):

apt-get να εγκαταστήσετε το openssh-server

Πριν συνεχίσουμε, πρέπει να τρέξουμε ως root σε μια κονσόλα:

iptables -A INPUT -p tcp --dport 22 --syn -j LOG --log-prefix "iptables: " --log-level 4

Η εκτέλεση αυτής της δήλωσης iptables θα καταγράψει αρκετές πληροφορίες για να δείξει ότι αυτό που κάναμε δεν είναι μάταια. Σε αυτήν τη δήλωση λέμε iptables να καταγράφουν όλες τις πληροφορίες που φτάνουν μέσω της θύρας 22. Για να δοκιμάσετε με άλλες υπηρεσίες, απλώς αλλάξτε τον αριθμό θύρας, όπως το 3306 για το MySQL, απλώς για να αναφέρω ένα παράδειγμα, εάν θέλετε περισσότερες πληροφορίες, διαβάστε αυτό το πολύ καλά τεκμηριωμένο σεμινάριο και βασίζεται σε τυπικά παραδείγματα των πιο διαμορφωμένων διαμορφώσεων.

Το SSH χρησιμοποιεί τη θύρα 22 από προεπιλογή, οπότε θα το δοκιμάσουμε. Έχοντας εγκαταστήσει το opensh, συνδεόμαστε με αυτό.

ssh pepe @ δοκιμαστικός διακομιστής

Για να δείτε τα αρχεία καταγραφής, με μια ουρά επιλύετε αυτό το πρόβλημα:

ουρά -f /var/log/firewall/iptables.log

Το Iptables, σε αυτό το παράδειγμα, καταγράφει τα πάντα, ημέρα, ώρα, ip, mac κ.λπ., γεγονός που το καθιστά ιδανικό για την παρακολούθηση των διακομιστών μας. Λίγη βοήθεια που δεν πονάει ποτέ.

Τώρα, σημειώνοντας ότι χρησιμοποιούμε μια άλλη διανομή, όπως είπα στην αρχή, χρησιμοποιείται συνήθως rsyslogή κάτι παρόμοιο. Εάν η διανομή σας χρησιμοποιεί syslog, για να κάνουμε την ίδια άσκηση πρέπει να επεξεργαστούμε / τροποποιήσουμε ελαφρώς syslog.conf

nano /etc/syslog.conf

Προσθέστε και αποθηκεύστε την ακόλουθη γραμμή:

kern.warning /var/log/firewall/iptables.log

Και τότε, ξέρετε, το χαρούμενο τέλος:

/etc/init.d/sysklogd επανεκκίνηση

Αποτέλεσμα: το ίδιο.

Αυτό είναι όλο για τώρα, σε μελλοντικές δημοσιεύσεις, θα συνεχίσουμε να παίζουμε με iptables

Παραπομπές:

Αναγκάστε τα iptables να συνδεθούν σε διαφορετικό αρχείο

Συνδεθείτε iptables σε ξεχωριστό αρχείο με rsyslog

Εκμάθηση διαμόρφωσης Iptables σε συστήματα Fedora / RHEL


Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.

  1.   FerreryGuardia dijo

    Υπέροχο αυτό το «μίνι-εγχειρίδιο» για το BOFH που κάνετε σιγά-σιγά

  2.   Κορατσούκι dijo

    Ευχαριστώ, σιγά-σιγά θα δώσω λεπτομέρειες και δεδομένα των iptables, τα οποία έπρεπε να γνωρίζω από τη δουλειά μου, τα οποία μερικές φορές χρειαζόμαστε και εξηγούνται ελάχιστα στο Διαδίκτυο, όλα από τον χρήστη ... xD

    1.    KZKG ^ Γκάρα dijo

      Παίρνω αυτήν την ευκαιρία για να σας καλωσορίσω μέλος 😀
      Έχετε πραγματικά πολύ να συνεισφέρετε, έχετε πραγματικά προηγμένη γνώση δικτύων, συστημάτων, τείχους προστασίας κ.λπ., οπότε θα είμαι (είμαι) ένας από τους πολλούς αναγνώστες που θα έχετε χαχαχα.

      Χαιρετισμούς και καλά ... ξέρετε, ό, τι χρειάζεται 😀

    2.    Ισαρ dijo

      Ανυπομονώ για αυτά τα στοιχεία ^^

  3.   Hugo dijo

    Έλα Koratsuki, δεν ήξερα ότι συχνάζατε αυτό το blog.

    Παρεμπιπτόντως, μια άλλη παραλλαγή της καταγραφής δραστηριότητας τείχους προστασίας χρησιμοποιεί το πακέτο Ουλόγκντ, το οποίο δημιουργήθηκε από τους ανθρώπους του έργου netfilter για να διευκολύνει το διαχωρισμό αυτού του τύπου ιχνών (επιτρέπει την αποθήκευσή τους με διαφορετικούς τρόπους). Είναι η προσέγγιση που συνήθως χρησιμοποιώ. Η χρήση του είναι εύκολη, για παράδειγμα:

    iptables -A INPUT -p udp -m multiport ! --ports 53,67:68 -m state --state NEW -j ULOG --ulog-prefix "Solicitud UDP dudosa"

  4.   Κορατσούκι dijo

    Θα πρέπει να δώσω ένα F5 στην ανάρτηση, ο τρόπος εργασίας του Ulogd με ταιριάζει, ακόμη και η MySQL καταγράφει τον τύπο: D.

  5.   MSX dijo

    Καλή ανάρτηση, συνεχίστε.

  6.   Τσινολόκο dijo

    Γεια σου αφεντικό, πώς πηγαίνει;
    Θα μπορούσες να μου δώσεις ένα χέρι;
    Δεδομένου ότι δεν έχω το σεμινάριο και είναι πιο καθαρό από το νερό, δεν ξέρω πού κάνω λάθος