Αρχική σελίδα » πως να » Χρησιμοποιώντας το Iptables σε Linux

    Χρησιμοποιώντας το Iptables σε Linux

    Αυτός ο οδηγός θα προσπαθήσει να εξηγήσει πώς να χρησιμοποιήσει το iptables στο linux σε κατανοητή γλώσσα.

    Περιεχόμενα

    [κρύβω]

    • 1 Επισκόπηση
    • 2 Χρήση
      • 2.1 Αποκλεισμός μιας ενιαίας διεύθυνσης IP
      • 2.2 Επιτρέποντας όλη την κυκλοφορία από μια διεύθυνση IP
      • 2.3 Αποκλεισμός θυρίδας από όλες τις διευθύνσεις
      • 2.4 Επιτρέπεται μια ενιαία θύρα από μια ενιαία διεύθυνση IP
      • 2.5 Προβολή των Τρεχόντων Κανόνων
      • 2.6 Διαγραφή των Τρεχόντων Κανόνων
    • 3 Ειδικά για τη διανομή
      • 3.1 Gentoo

    ΣΦΑΙΡΙΚΗ ΕΙΚΟΝΑ

    Το Iptables είναι ένα τείχος προστασίας βασισμένο σε κανόνες, το οποίο θα επεξεργάζεται κάθε κανόνα μέχρι να εντοπίσει ένα που ταιριάζει.

    Todo: συμπεριλάβετε το παράδειγμα εδώ

    Χρήση

    Το βοηθητικό πρόγραμμα iptables είναι συνήθως προεγκατεστημένο στη διανομή του linux, αλλά δεν τρέχει κανένας κανένας κανόνας. Θα βρείτε το βοηθητικό πρόγραμμα εδώ στις περισσότερες διανομές:

    / sbin / iptables

    Αποκλεισμός μιας ενιαίας διεύθυνσης IP

    Μπορείτε να αποκλείσετε μια διεύθυνση IP χρησιμοποιώντας την παράμετρο -s, αντικαθιστώντας την 10.10.10.10 με τη διεύθυνση που προσπαθείτε να αποκλείσετε. Θα σημειώσετε σε αυτό το παράδειγμα ότι χρησιμοποιήσαμε την παράμετρο -I (ή -αποτελεί επίσης εισαγωγή) αντί για την προσθήκη, επειδή θέλουμε να βεβαιωθείτε ότι αυτός ο κανόνας εμφανίζεται πρώτα, πριν από οποιονδήποτε κανόνες επιτρεπόμενων.

    / sbin / iptables -I INPUT -s 10.10.10.10 -j DROP

    Επιτρέποντας όλη την επισκεψιμότητα από μια διεύθυνση IP

    Μπορείτε εναλλακτικά να επιτρέψετε την κίνηση από μια διεύθυνση IP χρησιμοποιώντας την ίδια εντολή όπως παραπάνω, αλλά αντικαθιστώντας το DROP με ACCEPT. Πρέπει να βεβαιωθείτε ότι αυτός ο κανόνας εμφανίζεται πρώτα, πριν από τους κανόνες DROP.

    / sbin / iptables -A INPUT -s 10.10.10.10 -j ACCEPT

    Αποκλεισμός θυρίδας από όλες τις διευθύνσεις

    Μπορείτε να αποκλείσετε πρόσβαση σε μια θύρα εξ ολοκλήρου μέσω του δικτύου, χρησιμοποιώντας τον διακόπτη -dport και προσθέτοντας τη θύρα της υπηρεσίας που θέλετε να αποκλείσετε. Σε αυτό το παράδειγμα, θα αποκλείσουμε τη θύρα mysql:

    / sbin / iptables -A INPUT -p tcp -dport 3306 -j DROP

    Επιτρέποντας μια ενιαία θύρα από μια ενιαία διεύθυνση IP

    Μπορείτε να προσθέσετε την εντολή -s μαζί με την εντολή -dport για να περιορίσετε περαιτέρω τον κανόνα σε μια συγκεκριμένη θύρα:

    / sbin / iptables -A INPUT -p tcp -s 10.10.10.10 - έκδοση 3306 -j ACCEPT

    Προβολή των ισχυόντων κανόνων

    Μπορείτε να δείτε τους τρέχοντες κανόνες χρησιμοποιώντας την ακόλουθη εντολή:

    / sbin / iptables -L

    Αυτό θα σας δώσει μια έξοδο παρόμοια με την ακόλουθη:

    Αλυσίδα INPUT (πολιτική ACCEPT) στόχος προορισμός προεπιλεγμένης πηγής ACCEPT all - 192.168.1.1/24 οπουδήποτε ACCEPT all - 10.10.10.0/24 οπουδήποτε DROP tcp - οπουδήποτε οπουδήποτε tcp dpt: ssh DROP tcp - οπουδήποτε οπουδήποτε tcp dpt: mysql

    Η πραγματική παραγωγή θα είναι λίγο μακρύτερη, φυσικά.

    Διαγραφή των ισχυόντων κανόνων

    Μπορείτε να εκκαθαρίσετε όλους τους ισχύοντες κανόνες χρησιμοποιώντας την παράμετρο εκκαθάρισης. Αυτό είναι πολύ χρήσιμο εάν πρέπει να βάλετε τους κανόνες στη σωστή σειρά ή όταν δοκιμάζετε.

    / sbin / iptables -flush

    Ειδικά για τη διανομή

    Ενώ οι περισσότερες διανομές Linux περιλαμβάνουν μια μορφή iptables, μερικές από αυτές περιλαμβάνουν επίσης περιτυλίγματα που κάνουν τη διαχείριση λίγο πιο εύκολη. Τα πιο συχνά αυτά τα "addons" παίρνουν τη μορφή init scripts που φροντίζουν για την προετοιμασία του iptables κατά την εκκίνηση, αν και ορισμένες διανομές περιλαμβάνουν επίσης εφαρμογές full wrap-wrap που προσπαθούν να απλοποιήσουν την κοινή υπόθεση.

    Gentoo

    ο iptables Το σενάριο init στο Gentoo είναι ικανό να χειρίζεται πολλά κοινά σενάρια. Για αρχάριους, σας επιτρέπει να ρυθμίσετε το iptables για φόρτωση κατά την εκκίνηση (συνήθως ό, τι θέλετε):

    rc-ενημέρωση προσθέστε iptables προεπιλογή

    Χρησιμοποιώντας το σενάριο init, είναι δυνατή η φόρτωση και εκκαθάριση του τείχους προστασίας με μια εντολή εύκολης ανάληψης:

    /etc/init.d/iptables έναρξη /etc/init.d/iptables διακοπή

    Το σενάριο init χειρίζεται τις λεπτομέρειες της συνέχισης της τρέχουσας ρύθμισης τείχους προστασίας σας στην αρχή / στάση. Έτσι, το τείχος προστασίας είναι πάντα στην κατάσταση που τον αφήσατε. Αν χρειαστεί να αποθηκεύσετε χειροκίνητα έναν νέο κανόνα, το σενάριο init μπορεί να χειριστεί και αυτό:

    /etc/init.d/iptables αποθήκευση

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

    /etc/init.d/iptables reload

    Τέλος, το σενάριο init μπορεί να θέσει το iptables σε λειτουργία "πανικού", όπου όλες οι εισερχόμενες και εξερχόμενες κυκλοφορίες μπλοκάρονται. Δεν είμαι σίγουρος γιατί αυτή η λειτουργία είναι χρήσιμη, αλλά όλα τα τείχη προστασίας του Linux φαίνεται να έχουν.

    /etc/init.d/iptables panic

    Προειδοποίηση: Μην ξεκινήσετε τη λειτουργία πανικού εάν είστε συνδεδεμένοι στο διακομιστή σας μέσω SSH. εσύ θα να αποσυνδεθείτε! Η μόνη φορά που πρέπει να βάλετε το iptables σε κατάσταση πανικού είναι όσο βρίσκεστε φυσικώς μπροστά από τον υπολογιστή.