Έχει το Centos ένα τείχος προστασίας?
Πώς να απενεργοποιήσετε ή να απενεργοποιήσετε το firewalld στο centos 7
Iptables
Το Centos έχει ένα εξαιρετικά ισχυρό τείχος προστασίας ενσωματωμένο, που συνήθως αναφέρεται ως iptables, αλλά πιο ακρίβεια είναι iptables/netfilter. Το iPtables είναι η ενότητα χρηστών, το bit που εσείς, ο χρήστης, αλληλεπιδράτε με τη γραμμή εντολών για να εισαγάγετε κανόνες τείχους προστασίας σε προκαθορισμένους πίνακες. Το Netfilter είναι μια μονάδα πυρήνα, ενσωματωμένη στον πυρήνα, που στην πραγματικότητα κάνει το φιλτράρισμα. Υπάρχουν πολλά μπροστινά άκρα GUI για iptables που επιτρέπουν στους χρήστες να προσθέτουν ή να καθορίζουν κανόνες βάσει ενός σημείου και κάντε κλικ στο περιβάλλον χρήστη, αλλά αυτά συχνά στερούνται την ευελιξία της χρήσης της διεπαφής γραμμής εντολών και περιορίζουν τους χρήστες που κατανοούν τι συμβαίνει πραγματικά. Θα μάθουμε τη διεπαφή γραμμής εντολών των iptables.
Πριν μπορέσουμε πραγματικά να αντιμετωπίσουμε τα iptables, πρέπει να έχουμε τουλάχιστον μια βασική κατανόηση του τρόπου με τον οποίο λειτουργεί. Το iPtables χρησιμοποιεί την έννοια των διευθύνσεων IP, των πρωτοκόλλων (TCP, UDP, ICMP) και των θυρών. Δεν χρειάζεται να είμαστε ειδικοί σε αυτά για να ξεκινήσουμε (καθώς μπορούμε να αναζητήσουμε οποιαδήποτε από τις πληροφορίες που χρειαζόμαστε), αλλά βοηθά να έχουμε μια γενική κατανόηση.
Το iPtables θέτει τους κανόνες σε προκαθορισμένες αλυσίδες (εισροή, έξοδο και προς τα εμπρός) που ελέγχονται από οποιαδήποτε κυκλοφορία δικτύου (πακέτα IP) που σχετίζονται με αυτές τις αλυσίδες και λαμβάνεται απόφαση σχετικά με το τι πρέπει να κάνει με κάθε πακέτο με βάση το αποτέλεσμα αυτών των κανόνων, εγώ.μι. Αποδοχή ή απόρριψη του πακέτου. Αυτές οι ενέργειες αναφέρονται ως στόχοι, των οποίων οι δύο πιο συνηθισμένοι προκαθορισμένοι στόχοι είναι να μειώσουν ένα πακέτο ή να δεχτούν να δεχτούν ένα πακέτο.
Αλυσίδες
- Εισαγωγή – Όλα τα πακέτα που προορίζονται για τον υπολογιστή υποδοχής.
- Έξοδος – Όλα τα πακέτα που προέρχονται από τον υπολογιστή υποδοχής.
- Forward – Όλα τα πακέτα δεν προορίζονται ούτε προέρχονται από τον υπολογιστή υποδοχής, αλλά περνούν μέσω (δρομολόγησης) του υπολογιστή υποδοχής. Αυτή η αλυσίδα χρησιμοποιείται εάν χρησιμοποιείτε τον υπολογιστή σας ως δρομολογητή.
Ως επί το πλείστον, πρόκειται να ασχοληθούμε με την αλυσίδα εισροών για να φιλτράρουν πακέτα που εισέρχονται στο μηχάνημά μας – δηλαδή, διατηρώντας τους κακούς έξω.
Οι κανόνες προστίθενται σε μια λίστα σε κάθε αλυσίδα. Ένα πακέτο ελέγχεται με κάθε κανόνα με τη σειρά του, ξεκινώντας από την κορυφή, και αν ταιριάζει με αυτόν τον κανόνα, τότε λαμβάνεται μια ενέργεια όπως η αποδοχή (αποδοχή) ή η πτώση (πτώση) του πακέτου. Μόλις ένας κανόνας έχει αντιστοιχιστεί και μια ενέργεια που έχει ληφθεί, τότε το πακέτο επεξεργάζεται σύμφωνα με το αποτέλεσμα αυτού του κανόνα και δεν υποβάλλεται σε επεξεργασία με περαιτέρω κανόνες στην αλυσίδα. Εάν ένα πακέτο περάσει κάτω από όλους τους κανόνες της αλυσίδας και φτάσει στο κάτω μέρος χωρίς να ταιριάζει με οποιονδήποτε κανόνα, τότε η προεπιλεγμένη ενέργεια για αυτήν την αλυσίδα λαμβάνεται. Αυτό αναφέρεται ως η προεπιλεγμένη πολιτική και μπορεί να οριστεί είτε για αποδοχή είτε για αποχώρηση του πακέτου.
Η έννοια των αθέμιτων πολιτικών εντός των αλυσίδων δημιουργεί δύο θεμελιώδεις δυνατότητες που πρέπει πρώτα να εξετάσουμε πριν αποφασίσουμε πώς θα οργανώσουμε το τείχος προστασίας μας.
1. Μπορούμε να ορίσουμε μια προεπιλεγμένη πολιτική για να μειώσουμε όλα τα πακέτα και στη συνέχεια να προσθέσουμε κανόνες για να επιτρέψουμε συγκεκριμένα (αποδοχή) πακέτα που μπορεί να προέρχονται από αξιόπιστες διευθύνσεις IP ή σε ορισμένες θύρες στις οποίες διαθέτουμε υπηρεσίες όπως Bittorrent, διακομιστής FTP, διακομιστής ιστού, διακομιστής αρχείων Samba κ.λπ. κ.λπ.
2. Μπορούμε να ορίσουμε μια προεπιλεγμένη πολιτική για να δεχτούμε όλα τα πακέτα και στη συνέχεια να προσθέσουμε κανόνες για να αποκλείσουμε συγκεκριμένα (drop) πακέτα που ενδέχεται να προέρχονται από συγκεκριμένες διευθύνσεις IP όχλησης ή σειρές ή σε ορισμένες θύρες στις οποίες διαθέτουμε ιδιωτικές υπηρεσίες ή χωρίς υπηρεσίες που εκτελούνται.
Γενικά, η επιλογή 1 παραπάνω χρησιμοποιείται για την αλυσίδα εισόδου όπου θέλουμε να ελέγξουμε τι επιτρέπεται να αποκτήσουμε πρόσβαση στο μηχάνημά μας και η επιλογή 2 θα χρησιμοποιηθεί για την αλυσίδα εξόδου όπου εμπιστευόμαστε γενικά την κυκλοφορία που φεύγει (προέρχεται από) το μηχάνημά μας.
2. Ξεκινώντας
Η εργασία με τα iPtables από τη γραμμή εντολών απαιτεί προνόμια ρίζας, οπότε θα πρέπει να γίνουν ριζικά για τα περισσότερα πράγματα που θα κάνουμε.
Τα iptables πρέπει να εγκατασταθούν από προεπιλογή σε όλους τους Centos 5.x και 6.x Εγκαταστάσεις. Μπορείτε να ελέγξετε αν τα iPtables είναι εγκατεστημένα στο σύστημά σας από:
$ rpm -q iptables iptables -1.4.7-5.1.EL6_2.x86_64
Και για να δούμε αν το iPtables τρέχει στην πραγματικότητα, μπορούμε να ελέγξουμε ότι οι ενότητες iPtables φορτώνονται και χρησιμοποιούν το διακόπτη -L για να επιθεωρήσουν τους φορτωμένους κανόνες:
# lsmod | grep ip_tables ip_tables 29288 1 iptable_filter x_tables 29192 6 ip6t_reject, ip6_tables, ipt_reject, xt_state, xt_tcpudp, ip_tables
# iptables -l Εισαγωγή αλυσίδας (αποδοχή πολιτικής) Προορισμός προορισμού προορισμού προορισμού Prot Prot Opt Αποδοχή όλων - οπουδήποτε οπουδήποτε σχετίζεται, καθιερωμένη κατάσταση, καθιερωμένο Αποδοχή ICMP - οπουδήποτε οπουδήποτε Αποδοχή όλων - οπουδήποτε οπουδήποτε Αποδοχή TCP - οπουδήποτε οπουδήποτε δηλώνει νέα TCP DPT: SSH Απορρίψτε όλα-οπουδήποτε οπουδήποτε απορρίπτεται με το ICMP-Host-Prohibited Αλυσίδα προς τα εμπρός (αποδοχή πολιτικής) Προορισμός προορισμού προορισμού προορισμού Prot Prot Opt Απορρίψτε όλα-οπουδήποτε οπουδήποτε απορρίπτεται με το ICMP-Host-Prohibited Παράδοση αλυσίδας (αποδοχή πολιτικής) Προορισμός προορισμού προορισμού προορισμού Prot Prot Opt
Παραπάνω βλέπουμε το προεπιλεγμένο σύνολο κανόνων σε ένα σύστημα CentOS 6. Σημειώστε ότι η υπηρεσία SSH επιτρέπεται από προεπιλογή.
Εάν το iPtables δεν λειτουργεί, μπορείτε να το ενεργοποιήσετε εκτελώντας:
# System-Config-SecurityLevel
3. Γράφοντας ένα απλό σύνολο κανόνων
Θα χρησιμοποιήσουμε μια προσέγγιση βασισμένη στο παράδειγμα για να εξετάσουμε τις διάφορες εντολές iptables. Σε αυτό το πρώτο παράδειγμα, θα δημιουργήσουμε ένα πολύ απλό σύνολο κανόνων για τη δημιουργία ενός τείχους προστασίας κρατικών πακέτων (SPI) που θα επιτρέψει σε όλες τις εξερχόμενες συνδέσεις, αλλά θα εμποδίσει όλες τις ανεπιθύμητες εισερχόμενες συνδέσεις:
# iptables -p εισόδημα αποδοχή # iptables -f # iptables -α είσοδος -I lo -j αποδεχτείτε # iptables -a input -m State -state καθιερωμένη, σχετική -J αποδοχή # iptables -a input -p tcp -dport 22 -j Αποδοχή # iptables -p drop εισόδου # iptables -p Drop Drop # iptables -p output Αποδοχή # iptables -l -v
Ερωτήσεις:
- 1. Τι είναι τα iptables?
- 2. Ποιες είναι οι τρεις προκαθορισμένες αλυσίδες σε iptables?
- 3. Ποιος είναι ο σκοπός της αλυσίδας εισροών?
- 4. Πώς προστίθενται κανόνες στις αλυσίδες?
- 5. Τι συμβαίνει εάν ένα πακέτο ταιριάζει με έναν κανόνα στην αλυσίδα?
- 6. Ποια είναι η προεπιλεγμένη πολιτική της αλυσίδας εισροών?
- 7. Ποια είναι η προεπιλεγμένη πολιτική της αλυσίδας εξόδου?
- 8. Ποιες είναι οι δύο δυνατότητες για την οργάνωση ενός τείχους προστασίας χρησιμοποιώντας προεπιλεγμένες πολιτικές?
- 9. Ποια είναι η συνιστώμενη επιλογή για την αλυσίδα εισόδου?
- 10. Πώς ελέγχετε εάν είναι εγκατεστημένα στο σύστημά σας iptables?
- 11. Πώς ελέγχετε εάν εκτελείται το iPtables?
- 12. Πώς μπορείτε να ενεργοποιήσετε τα iptables εάν δεν εκτελούνται?
- 13. Ποιος είναι ο σκοπός ενός κρατικού τείχους επιθεώρησης πακέτων (SPI)?
- 14. Ποιες συνδέσεις επιτρέπονται από τον απλό κανόνα που έχει οριστεί στο παράδειγμα?
- 15. Ποιες συνδέσεις μπλοκαρίζονται από τον απλό κανόνα που έχει οριστεί στο παράδειγμα?
Απαντήσεις:
- 1. Τι είναι τα iptables?
Το iPtables είναι ένα ισχυρό τείχος προστασίας ενσωματωμένο σε CentOS που επιτρέπει στους χρήστες να καθορίζουν και να διαχειρίζονται κανόνες τείχους προστασίας χρησιμοποιώντας τη διεπαφή γραμμής εντολών. - 2. Ποιες είναι οι τρεις προκαθορισμένες αλυσίδες σε iptables?
Οι τρεις προκαθορισμένες αλυσίδες στο iptables είναι εισόδου, εξόδου και προς τα εμπρός. - 3. Ποιος είναι ο σκοπός της αλυσίδας εισροών?
Η αλυσίδα εισόδου χρησιμοποιείται για τη διήθηση πακέτων που εισέρχονται στον υπολογιστή κεντρικού υπολογιστή. - 4. Πώς προστίθενται κανόνες στις αλυσίδες?
Οι κανόνες προστίθενται στις αλυσίδες σε μια λίστα, με κάθε κανόνα να ελέγχεται έναντι της εισερχόμενης κυκλοφορίας δικτύου στην καθορισμένη αλυσίδα. - 5. Τι συμβαίνει εάν ένα πακέτο ταιριάζει με έναν κανόνα στην αλυσίδα?
Εάν ένα πακέτο ταιριάζει με έναν κανόνα στην αλυσίδα, λαμβάνεται μια ενέργεια που καθορίζεται από τον κανόνα (όπως η αποδοχή ή η πτώση) για αυτό το πακέτο. - 6. Ποια είναι η προεπιλεγμένη πολιτική της αλυσίδας εισροών?
Η προεπιλεγμένη πολιτική της αλυσίδας εισροών μπορεί να ρυθμιστεί για αποδοχή ή πτώση. Γενικά, συνιστάται να το ρυθμίσετε και να επιτρέψει ρητά αξιόπιστες συνδέσεις. - 7. Ποια είναι η προεπιλεγμένη πολιτική της αλυσίδας εξόδου?
Η προεπιλεγμένη πολιτική της αλυσίδας εξόδου συνήθως έχει οριστεί να αποδεχθεί, καθώς οι εξερχόμενες συνδέσεις είναι γενικά αξιόπιστες. - 8. Ποιες είναι οι δύο δυνατότητες για την οργάνωση ενός τείχους προστασίας χρησιμοποιώντας προεπιλεγμένες πολιτικές?
Οι δύο δυνατότητες καθορίζουν μια προεπιλεγμένη πολιτική για να μειώσουν και να επιτρέπουν συγκεκριμένες αξιόπιστες συνδέσεις (επιλογή 1) ή να ορίζουν μια προεπιλεγμένη πολιτική για την αποδοχή και την παρεμπόδιση συγκεκριμένων ανεπιθύμητων συνδέσεων (Επιλογή 2). - 9. Ποια είναι η συνιστώμενη επιλογή για την αλυσίδα εισόδου?
Η συνιστώμενη επιλογή για την αλυσίδα εισόδου είναι να ορίσετε μια προεπιλεγμένη πολιτική για να μειωθεί και να επιτρέψει ρητά τις αξιόπιστες συνδέσεις. - 10. Πώς ελέγχετε εάν είναι εγκατεστημένα στο σύστημά σας iptables?
Μπορείτε να ελέγξετε εάν το iPtables είναι εγκατεστημένο εκτελώντας την εντολή:rpm -q iptables
- 11. Πώς ελέγχετε εάν εκτελείται το iPtables?
Μπορείτε να ελέγξετε αν το iPtables εκτελείται ελέγχοντας εάν φορτώνονται οι ενότητες iptables και χρησιμοποιούν την εντολή:iptables -l
- 12. Πώς μπορείτε να ενεργοποιήσετε τα iptables εάν δεν εκτελούνται?
Μπορείτε να ενεργοποιήσετε τα iptables εκτελώντας την εντολή:System-Config-SecurityLevel
- 13. Ποιος είναι ο σκοπός ενός κρατικού τείχους επιθεώρησης πακέτων (SPI)?
Μια κρατική επιθεώρηση πακέτων (SPI) επιτρέπει τις εξερχόμενες συνδέσεις, αλλά αποκλείει ανεπιθύμητες εισερχόμενες συνδέσεις με βάση την κατάσταση και τα χαρακτηριστικά των πακέτων. - 14. Ποιες συνδέσεις επιτρέπονται από τον απλό κανόνα που έχει οριστεί στο παράδειγμα?
Ο απλός κανόνας που έχει οριστεί στο παράδειγμα επιτρέπει όλες τις εξερχόμενες συνδέσεις. - 15. Ποιες συνδέσεις μπλοκαρίζονται από τον απλό κανόνα που έχει οριστεί στο παράδειγμα?
Το απλό σύνολο κανόνων εμποδίζει όλες τις ανεπιθύμητες εισερχόμενες συνδέσεις.
Πώς να απενεργοποιήσετε ή να απενεργοποιήσετε το firewalld στο centos 7
Τώρα μπορείτε να χρησιμοποιήσετε αυτήν την υπηρεσία στις ζώνες σας όπως κανονικά θα.
Iptables
Το Centos έχει ένα εξαιρετικά ισχυρό τείχος προστασίας ενσωματωμένο, που συνήθως αναφέρεται ως iptables, αλλά πιο ακρίβεια είναι iptables/netfilter. Το iPtables είναι η ενότητα χρηστών, το bit που εσείς, ο χρήστης, αλληλεπιδράτε με τη γραμμή εντολών για να εισαγάγετε κανόνες τείχους προστασίας σε προκαθορισμένους πίνακες. Το Netfilter είναι μια μονάδα πυρήνα, ενσωματωμένη στον πυρήνα, που στην πραγματικότητα κάνει το φιλτράρισμα. Υπάρχουν πολλά μπροστινά άκρα GUI για iptables που επιτρέπουν στους χρήστες να προσθέτουν ή να καθορίζουν κανόνες βάσει ενός σημείου και κάντε κλικ στο περιβάλλον χρήστη, αλλά αυτά συχνά στερούνται την ευελιξία της χρήσης της διεπαφής γραμμής εντολών και περιορίζουν τους χρήστες που κατανοούν τι συμβαίνει πραγματικά. Θα μάθουμε τη διεπαφή γραμμής εντολών των iptables.
Πριν μπορέσουμε πραγματικά να αντιμετωπίσουμε τα iptables, πρέπει να έχουμε τουλάχιστον μια βασική κατανόηση του τρόπου με τον οποίο λειτουργεί. Το iPtables χρησιμοποιεί την έννοια των διευθύνσεων IP, των πρωτοκόλλων (TCP, UDP, ICMP) και των θυρών. Δεν χρειάζεται να είμαστε ειδικοί σε αυτά για να ξεκινήσουμε (καθώς μπορούμε να αναζητήσουμε οποιαδήποτε από τις πληροφορίες που χρειαζόμαστε), αλλά βοηθά να έχουμε μια γενική κατανόηση.
Το iPtables θέτει τους κανόνες σε προκαθορισμένες αλυσίδες (εισροή, έξοδο και προς τα εμπρός) που ελέγχονται από οποιαδήποτε κυκλοφορία δικτύου (πακέτα IP) που σχετίζονται με αυτές τις αλυσίδες και λαμβάνεται απόφαση σχετικά με το τι πρέπει να κάνει με κάθε πακέτο με βάση το αποτέλεσμα αυτών των κανόνων, εγώ.μι. Αποδοχή ή απόρριψη του πακέτου. Αυτές οι ενέργειες αναφέρονται ως στόχοι, των οποίων οι δύο πιο συνηθισμένοι προκαθορισμένοι στόχοι είναι να μειώσουν ένα πακέτο ή να δεχτούν να δεχτούν ένα πακέτο.
Αλυσίδες
- Εισαγωγή – Όλα τα πακέτα που προορίζονται για τον υπολογιστή υποδοχής.
- Έξοδος – Όλα τα πακέτα που προέρχονται από τον υπολογιστή υποδοχής.
- Forward – Όλα τα πακέτα δεν προορίζονται ούτε προέρχονται από τον υπολογιστή υποδοχής, αλλά περνούν μέσω (δρομολόγησης) του υπολογιστή υποδοχής. Αυτή η αλυσίδα χρησιμοποιείται εάν χρησιμοποιείτε τον υπολογιστή σας ως δρομολογητή.
Ως επί το πλείστον, πρόκειται να ασχοληθούμε με την αλυσίδα εισροών για να φιλτράρουν πακέτα που εισέρχονται στο μηχάνημά μας – δηλαδή, διατηρώντας τους κακούς έξω.
Οι κανόνες προστίθενται σε μια λίστα σε κάθε αλυσίδα. Ένα πακέτο ελέγχεται με κάθε κανόνα με τη σειρά του, ξεκινώντας από την κορυφή, και αν ταιριάζει με αυτόν τον κανόνα, τότε λαμβάνεται μια ενέργεια όπως η αποδοχή (αποδοχή) ή η πτώση (πτώση) του πακέτου. Μόλις ένας κανόνας έχει αντιστοιχιστεί και μια ενέργεια που έχει ληφθεί, τότε το πακέτο επεξεργάζεται σύμφωνα με το αποτέλεσμα αυτού του κανόνα και δεν υποβάλλεται σε επεξεργασία με περαιτέρω κανόνες στην αλυσίδα. Εάν ένα πακέτο περάσει κάτω από όλους τους κανόνες της αλυσίδας και φτάσει στο κάτω μέρος χωρίς να ταιριάζει με οποιονδήποτε κανόνα, τότε η προεπιλεγμένη ενέργεια για αυτήν την αλυσίδα λαμβάνεται. Αυτό αναφέρεται ως η προεπιλεγμένη πολιτική και μπορεί να οριστεί είτε για αποδοχή είτε για αποχώρηση του πακέτου.
Η έννοια των αθέμιτων πολιτικών εντός των αλυσίδων δημιουργεί δύο θεμελιώδεις δυνατότητες που πρέπει πρώτα να εξετάσουμε πριν αποφασίσουμε πώς θα οργανώσουμε το τείχος προστασίας μας.
1. Μπορούμε να ορίσουμε μια προεπιλεγμένη πολιτική για να μειώσουμε όλα τα πακέτα και στη συνέχεια να προσθέσουμε κανόνες για να επιτρέψουμε συγκεκριμένα (αποδοχή) πακέτα που μπορεί να προέρχονται από αξιόπιστες διευθύνσεις IP ή σε ορισμένες θύρες στις οποίες διαθέτουμε υπηρεσίες όπως Bittorrent, διακομιστής FTP, διακομιστής ιστού, διακομιστής αρχείων Samba κ.λπ. κ.λπ.
2. Μπορούμε να ορίσουμε μια προεπιλεγμένη πολιτική για να δεχτούμε όλα τα πακέτα και στη συνέχεια να προσθέσουμε κανόνες για να αποκλείσουμε συγκεκριμένα (drop) πακέτα που ενδέχεται να προέρχονται από συγκεκριμένες διευθύνσεις IP όχλησης ή σειρές ή σε ορισμένες θύρες στις οποίες διαθέτουμε ιδιωτικές υπηρεσίες ή χωρίς υπηρεσίες που εκτελούνται.
Γενικά, η επιλογή 1 παραπάνω χρησιμοποιείται για την αλυσίδα εισόδου όπου θέλουμε να ελέγξουμε τι επιτρέπεται να αποκτήσουμε πρόσβαση στο μηχάνημά μας και η επιλογή 2 θα χρησιμοποιηθεί για την αλυσίδα εξόδου όπου εμπιστευόμαστε γενικά την κυκλοφορία που φεύγει (προέρχεται από) το μηχάνημά μας.
2. Ξεκινώντας
Η εργασία με τα iPtables από τη γραμμή εντολών απαιτεί προνόμια ρίζας, οπότε θα πρέπει να γίνουν ριζικά για τα περισσότερα πράγματα που θα κάνουμε.
Τα iptables πρέπει να εγκατασταθούν από προεπιλογή σε όλους τους Centos 5.x και 6.x Εγκαταστάσεις. Μπορείτε να ελέγξετε αν τα iPtables είναι εγκατεστημένα στο σύστημά σας από:
$ rpm -q iptables iptables -1.4.7-5.1.EL6_2.x86_64
Και για να δούμε αν το iPtables τρέχει στην πραγματικότητα, μπορούμε να ελέγξουμε ότι οι ενότητες iPtables φορτώνονται και χρησιμοποιούν το διακόπτη -L για να επιθεωρήσουν τους φορτωμένους κανόνες:
# lsmod | grep ip_tables ip_tables 29288 1 iptable_filter x_tables 29192 6 ip6t_reject, ip6_tables, ipt_reject, xt_state, xt_tcpudp, ip_tables
# iptables -L Εισαγωγή αλυσίδας (πολιτική αποδοχή) Προέλευση προώθησης Prot Prot Opt Accept ALL-οπουδήποτε οπουδήποτε σχετίζεται με την κατάσταση, καθιερωμένη αποδοχή ICMP-οπουδήποτε οπουδήποτε δέχεται όλα-οπουδήποτε οπουδήποτε αποδέχεται το TCP-οπουδήποτε κατάσταση New TCP DPT: SSH απορρίπτεται όλα-οπουδήποτε οπουδήποτε απορρίπτεται από το ICMP-HOST-Prohibited αλυσίδα προς τα εμπρός (πολιτική αποδέχονται το prot optic Αποδοχή πολιτικής) Προορισμός προέλευσης Prot Prot Opt
Παραπάνω βλέπουμε το προεπιλεγμένο σύνολο κανόνων σε ένα σύστημα CentOS 6. Σημειώστε ότι η υπηρεσία SSH επιτρέπεται από προεπιλογή.
Εάν το iPtables δεν λειτουργεί, μπορείτε να το ενεργοποιήσετε εκτελώντας:
# System-Config-SecurityLevel
3. Γράφοντας ένα απλό σύνολο κανόνων
Θα χρησιμοποιήσουμε μια προσέγγιση βασισμένη στο παράδειγμα για να εξετάσουμε τις διάφορες εντολές iptables. Σε αυτό το πρώτο παράδειγμα, θα δημιουργήσουμε ένα πολύ απλό σύνολο κανόνων για τη δημιουργία ενός τείχους προστασίας κρατικών πακέτων (SPI) που θα επιτρέψει σε όλες τις εξερχόμενες συνδέσεις, αλλά θα εμποδίσει όλες τις ανεπιθύμητες εισερχόμενες συνδέσεις:
# iptables -p Εισαγωγή αποδοχής # iptables -f # iptables -a input -i lo -j αποδοχή # iptables -a input -m state -state etut # quots -j -l -l -V
που πρέπει να δώσει την ακόλουθη έξοδο:
Εισαγωγή αλυσίδας (πτώση πολιτικής 0 πακέτα, 0 bytes) pkts bytes στόχος prot opt in out out προορισμό προορισμό 0 0 abeard all - lo οπουδήποτε οπουδήποτε 0 0 δέχεται όλα - οποιοδήποτε οπουδήποτε οπουδήποτε κατάσταση που σχετίζεται, καθιερωμένη 0 0 packets 0 bytes) Target Prot Opt Out Out Source Destination
- Iptables -p εισόδους αποδοχή Εάν η σύνδεση εξ αποστάσεως πρέπει πρώτα να ορίσουμε προσωρινά την προεπιλεγμένη πολιτική στην αλυσίδα εισόδου για να δεχτούμε διαφορετικά όταν ξεπλύνουμε τους τρέχοντες κανόνες, θα κλειδωθούμε από τον διακομιστή μας.
- iptables -f Χρησιμοποιήσαμε το διακόπτη -f για να ξεπλύνετε όλους τους υπάρχοντες κανόνες, έτσι ξεκινάμε με μια καθαρή κατάσταση από την οποία μπορείτε να προσθέσετε νέους κανόνες.
- Iptables -A INPUT -I LO -J Αποδοχή Τώρα ήρθε η ώρα να αρχίσετε να προσθέτετε κάποιους κανόνες. Χρησιμοποιούμε το διακόπτη -a για να προσθέσουμε (ή να προσθέσουμε) έναν κανόνα σε μια συγκεκριμένη αλυσίδα, την αλυσίδα εισόδου σε αυτή την περίπτωση. Στη συνέχεια, χρησιμοποιούμε το διακόπτη -i (για διεπαφή) για να καθορίσουμε τα πακέτα που ταιριάζουν ή προορίζονται για το LO (localhost, 127.0.0.1) Διεπαφή και τέλος -J (Jump) στη δράση στόχου για πακέτα που ταιριάζουν με τον κανόνα – σε αυτή την περίπτωση αποδέχονται. Επομένως, αυτός ο κανόνας θα επιτρέψει σε όλα τα εισερχόμενα πακέτα που προορίζονται για να γίνει αποδεκτή η διεπαφή LocalHost. Αυτό απαιτείται γενικά, καθώς πολλές εφαρμογές λογισμικού αναμένουν να μπορούν να επικοινωνούν με τον προσαρμογέα LocalHost.
- Iptables -A εισόδου -m κατάσταση -State ettains, σχετική -J αποδοχή Αυτός είναι ο κανόνας που κάνει το μεγαλύτερο μέρος της εργασίας, και πάλι προσθέτουμε (-α) την στην αλυσίδα εισόδου. Εδώ χρησιμοποιούμε το διακόπτη -m για να φορτώσουμε μια ενότητα (κατάσταση). Η μονάδα κατάστασης είναι σε θέση να εξετάσει την κατάσταση ενός πακέτου και να προσδιορίσει εάν είναι καινούργιο, καθιερωμένο ή σχετικό. Το New αναφέρεται σε εισερχόμενα πακέτα που είναι νέες εισερχόμενες συνδέσεις που δεν ξεκίνησαν από το σύστημα υποδοχής. Καθιερωμένο και σχετικό αναφέρεται σε εισερχόμενα πακέτα που αποτελούν μέρος μιας ήδη καθιερωμένης σύνδεσης ή σχετίζονται και έχουν ήδη καθιερωμένη σύνδεση.
- Iptables -A INPUT -P TCP -DPORT 22 -J Αποδοχή Εδώ προσθέτουμε έναν κανόνα που επιτρέπει τις συνδέσεις SSH πάνω από τη θύρα TCP 22. Αυτό είναι για να αποφευχθεί τυχαία κλειδαριά όταν εργάζεστε σε απομακρυσμένα συστήματα μέσω σύνδεσης SSH. Θα εξηγήσουμε αυτόν τον κανόνα λεπτομερέστερα αργότερα.
- Iptables -p drop εισόδου Ο διακόπτης -p ορίζει την προεπιλεγμένη πολιτική στην καθορισμένη αλυσίδα. Τώρα λοιπόν μπορούμε να ορίσουμε την προεπιλεγμένη πολιτική στην αλυσίδα εισόδου για να μειωθεί. Αυτό σημαίνει ότι εάν ένα εισερχόμενο πακέτο δεν ταιριάζει με έναν από τους ακόλουθους κανόνες, θα πέσει. Εάν συνδέσαμε εξ αποστάσεως μέσω του SSH και δεν είχαμε προσθέσει τον παραπάνω κανόνα, θα είχαμε κλειδώσει τον εαυτό μας έξω από το σύστημα σε αυτό το σημείο.
- Iptables -p Drop Drop Ομοίως, εδώ έχουμε ορίσει την προεπιλεγμένη πολιτική στην προθεσμιακή αλυσίδα για να πέσει καθώς δεν χρησιμοποιούμε τον υπολογιστή μας ως δρομολογητή, οπότε δεν πρέπει να υπάρχουν πακέτα που διέρχονται από τον υπολογιστή μας.
- Iptables -p output Αποδοχή Τέλος, έχουμε ορίσει την προεπιλεγμένη πολιτική στην αλυσίδα εξόδου για να δεχτούμε καθώς θέλουμε να επιτρέψουμε σε όλη την εξερχόμενη κυκλοφορία (όπως εμπιστευόμαστε τους χρήστες μας).
- iptables -l -v Τέλος, μπορούμε να απαριθμήσουμε (-L) τους κανόνες που μόλις προσθέσαμε για να ελέγξουμε ότι έχουν φορτωθεί σωστά.
Τέλος, το τελευταίο πράγμα που πρέπει να κάνουμε είναι να αποθηκεύσουμε τους κανόνες μας έτσι ώστε την επόμενη φορά να επανεκκινήσουμε τον υπολογιστή μας, οι κανόνες μας επαναφορτίζονται αυτόματα:
# /sbin /service iptables Αποθήκευση
Αυτό εκτελεί το σενάριο IPTables init, το οποίο τρέχει/sbin/iptables-save και γράφει την τρέχουσα διαμόρφωση iptables σε/etc/sysconfig/iptables. Κατά την επανεκκίνηση, το IPTables Intin Script επαναλαμβάνει τους κανόνες που εξοικονομούνται στο/etc/sysconfig/iptables χρησιμοποιώντας την εντολή/sbin/iptables-restore.
Προφανώς η πληκτρολόγηση όλων αυτών των εντολών στο κέλυφος μπορεί να γίνει κουραστική, οπότε ο ευκολότερος τρόπος για να συνεργαστείτε με τα iPtables είναι να δημιουργήσετε ένα απλό σενάριο για να τα κάνετε όλα για εσάς. Οι παραπάνω εντολές μπορούν να εισαχθούν στον αγαπημένο σας επεξεργαστή κειμένου και να αποθηκευτούν ως myfirewall, για παράδειγμα:
# # IPTables Παράδειγμα Διαμόρφωση Script # # Flush Όλοι οι τρέχοντες κανόνες από το iPtables # iptables -f # # επιτρέπουν τις συνδέσεις SSH σε θύρα TCP 22 # αυτό είναι απαραίτητο όταν εργάζεστε σε απομακρυσμένους διακομιστές μέσω SSH για να αποτρέψετε τον εαυτό σας από το DropiS - # Πρόσβαση για το LocalHost # Iptables -a Εισαγωγή -I LO -J Αποδοχή # # Αποδοχή πακέτων που ανήκουν σε καθιερωμένες και σχετικές συνδέσεις # iptables -A εισόδου -m State -state ettains, σχετικές -j αποδοχή # # Αποθήκευση ρυθμίσεων # /sbin /service iptables save # # # # # # # # # # #
Σημείωση: Μπορούμε επίσης να σχολιάσουμε το σενάριό μας για να μας υπενθυμίσουμε τι έκαναν.
Τώρα κάντε το σενάριο εκτελέσιμο:
# chmod +x myfirewall
Τώρα μπορούμε απλά να επεξεργαστούμε το σενάριό μας και να το τρέξουμε από το κέλυφος με την ακόλουθη εντολή:
# ./myfirewall
4. Διεπαφές
Στο προηγούμενο παράδειγμα μας, είδαμε πώς θα μπορούσαμε να δεχτούμε όλα τα πακέτα που εισέρχονται σε μια συγκεκριμένη διεπαφή, στην περίπτωση αυτή η διεπαφή LocalHost:
Iptables -A INPUT -I LO -J Αποδοχή
Ας υποθέσουμε ότι έχουμε 2 ξεχωριστές διεπαφές, το ETH0 που είναι η εσωτερική μας σύνδεση LAN και το μόντεμ Dialup PPP0 (ή ίσως ETH1 για ένα NIC) που είναι η εξωτερική σύνδεσή μας στο Διαδίκτυο. Μπορεί να θέλουμε να επιτρέψουμε όλα τα εισερχόμενα πακέτα στο εσωτερικό μας LAN, αλλά εξακολουθούν να φιλτράρουν τα εισερχόμενα πακέτα στην εξωτερική σύνδεση στο Διαδίκτυο μας. Θα μπορούσαμε να το κάνουμε αυτό ως εξής:
Iptables -a είσοδος -i lo -j αποδέχονται iptables -a input -i eth0 -j Αποδοχή
Αλλά να είστε πολύ προσεκτικοί – Αν επρόκειτο να επιτρέψουμε όλα τα πακέτα για το εξωτερικό μας διεπαφή στο Διαδίκτυο (για παράδειγμα, μόντεμ Dialup PPP0):
Iptables -A INPUT -I PPP0 -J Αποδοχή
Θα είχαμε αποτελεσματικά απλά απενεργοποιήσαμε το τείχος προστασίας μας!
5. Διευθύνσεις IP
Το άνοιγμα μιας ολόκληρης διασύνδεσης σε εισερχόμενα πακέτα ενδέχεται να μην είναι αρκετά περιοριστικό και μπορεί να θέλετε περισσότερο έλεγχο σχετικά με το τι να επιτρέψετε και τι να απορρίψετε. Ας υποθέσουμε ότι έχουμε ένα μικρό δίκτυο υπολογιστών που χρησιμοποιούν το 192.168.0.x Ιδιωτικό υποδίκτυο. Μπορούμε να ανοίξουμε το τείχος προστασίας μας σε εισερχόμενα πακέτα από μία μόνο αξιόπιστη διεύθυνση IP (για παράδειγμα, 192.168.0.4):
# Αποδοχή πακέτων από αξιόπιστες διευθύνσεις IP iptables -α είσοδο -S 192.168.0.4 -J Αποδοχή # Αλλάξτε τη διεύθυνση IP ανάλογα με την περίπτωση
Σπάζοντας αυτήν την εντολή, πρώτα προσαρμόζουμε (-α) έναν κανόνα στην αλυσίδα εισροών για την πηγή (-s) διεύθυνση IP 192.168.0.4 Για να δεχτούμε όλα τα πακέτα (σημειώστε επίσης πώς μπορούμε να χρησιμοποιήσουμε το σύμβολο # για να προσθέσουμε σχόλια inline για να τεκμηριώσουμε το σενάριό μας με οτιδήποτε μετά το # αγνοείται και αντιμετωπίζεται ως σχόλιο).
Προφανώς, αν θέλουμε να επιτρέψουμε τα εισερχόμενα πακέτα από μια σειρά διευθύνσεων IP, θα μπορούσαμε απλώς να προσθέσουμε έναν κανόνα για κάθε αξιόπιστη διεύθυνση IP και αυτό θα λειτουργούσε καλά. Αλλά αν έχουμε πολλά από αυτά, μπορεί να είναι ευκολότερο να προσθέσετε μια σειρά διευθύνσεων IP σε ένα go. Για να γίνει αυτό, μπορούμε να χρησιμοποιήσουμε ένα netmask ή ένα τυπικό σημείωμα slash για να καθορίσουμε μια σειρά διεύθυνσης IP. Για παράδειγμα, αν θέλαμε να ανοίξουμε το τείχος προστασίας μας σε όλα τα εισερχόμενα πακέτα από το πλήρες 192.168.0.x (όπου x = 1 έως 254) εύρος, θα μπορούσαμε να χρησιμοποιήσουμε οποιαδήποτε από τις ακόλουθες μεθόδους:
# Αποδοχή πακέτων από αξιόπιστες διευθύνσεις IP iptables -α είσοδο -S 192.168.0.0/24 -J Αποδοχή # Χρήση τυπικής σημείωσης Slash Iptables -A Input -s 192.168.0.0/255.255.255.0 -J Αποδοχή # χρησιμοποιώντας μια μάσκα υποδικτύου
Τέλος, καθώς και φιλτράρισμα σε μια ενιαία διεύθυνση IP, μπορούμε επίσης να ταιριάξουμε με τη διεύθυνση MAC για τη δεδομένη συσκευή. Για να γίνει αυτό, πρέπει να φορτώσουμε μια μονάδα (μονάδα MAC) που επιτρέπει τη φιλτράρισμα έναντι των διευθύνσεων MAC. Νωρίτερα είδαμε ένα άλλο παράδειγμα χρήσης μονάδων για να επεκτείνουμε τη λειτουργικότητα των iPtables όταν χρησιμοποιήσαμε την κατάσταση κατάστασης για να ταιριάζει με καθιερωμένα και συναφή πακέτα. Εδώ χρησιμοποιούμε τη μονάδα MAC για να ελέγξουμε τη διεύθυνση MAC της πηγής του πακέτου εκτός από τη διεύθυνση IP:
# Αποδοχή πακέτων από αξιόπιστες διευθύνσεις IP iptables -α είσοδο -S 192.168.0.4 -M MAC - -MAC -Source 00: 50: 8d: FD: E6: 32 -J Αποδοχή
Πρώτα χρησιμοποιούμε -m Mac Για να φορτώσετε τη μονάδα MAC και στη συνέχεια χρησιμοποιούμε --πηγή Mac-source Για να καθορίσετε τη διεύθυνση MAC της διεύθυνσης IP προέλευσης (192.168.0.4). Θα χρειαστεί να μάθετε τη διεύθυνση MAC κάθε συσκευής Ethernet που θέλετε να φιλτράρετε. Τρέξιμο αν (ή iwconfig για ασύρματες συσκευές), καθώς η ρίζα θα σας παρέχει τη διεύθυνση MAC.
Αυτό μπορεί να είναι χρήσιμο για την πρόληψη της απομάκρυνσης της διεύθυνσης IP προέλευσης, καθώς θα επιτρέψει σε όλα τα πακέτα που προέρχονται πραγματικά από το 192.168.0.4 (έχοντας τη διεύθυνση MAC 00: 50: 8D: FD: E6: 32), αλλά θα εμποδίσει τα πακέτα που είναι πλαστογραφημένα να προέρχονται από αυτή τη διεύθυνση. Σημείωση, το φιλτράρισμα διευθύνσεων MAC δεν θα λειτουργήσει στο διαδίκτυο, αλλά σίγουρα λειτουργεί καλά σε ένα LAN.
6. Λιμάνια και πρωτόκολλα
Πάνω έχουμε δει πώς μπορούμε να προσθέσουμε κανόνες στο τείχος προστασίας μας για να φιλτράρουμε εναντίον πακέτων που ταιριάζουν με μια συγκεκριμένη διεπαφή ή μια διεύθυνση IP προέλευσης. Αυτό επιτρέπει την πλήρη πρόσβαση μέσω του τείχους προστασίας μας σε ορισμένες αξιόπιστες πηγές (υπολογιστές κεντρικού υπολογιστή). Τώρα θα δούμε πώς μπορούμε να φιλτράρουμε ενάντια στα πρωτόκολλα και τις θύρες για να βελτιώσουμε περαιτέρω ποια εισερχόμενα πακέτα επιτρέπουμε και τι μπλοκάρει.
Πριν μπορέσουμε να ξεκινήσουμε, πρέπει να γνωρίζουμε τι χρησιμοποιεί το πρωτόκολλο και το λιμάνι που χρησιμοποιεί μια συγκεκριμένη υπηρεσία. Για ένα απλό παράδειγμα, ας δούμε το BitTorrent. Το BitTorrent χρησιμοποιεί το πρωτόκολλο TCP στη θύρα 6881, οπότε θα πρέπει να επιτρέψουμε σε όλα τα πακέτα TCP στη θύρα προορισμού (η θύρα στην οποία φθάνουν στο μηχάνημά μας) 6881:
# Αποδοχή πακέτων TCP στη θύρα προορισμού 6881 (BitTorrent) Iptables -A INPUT -P TCP - -DPORT 6881 -J Αποδοχή
Εδώ προσαρμόζουμε έναν κανόνα για την αλυσίδα εισόδου για πακέτα που ταιριάζουν με το πρωτόκολλο TCP (-P TCP) και την είσοδο στο μηχάνημά μας στη θύρα προορισμού 6881 (--dport 6881·.
Σημείωση: Για να χρησιμοποιήσετε αγώνες όπως θύρες προορισμού ή προέλευσης (--ατέλειω ή --άθλημα), εσείς πρέπει Ορίστε πρώτα το πρωτόκολλο (TCP, UDP, ICMP, όλα).
Μπορούμε επίσης να επεκτείνουμε τα παραπάνω για να συμπεριλάβουμε ένα εύρος θυρών, για παράδειγμα, επιτρέποντας σε όλα τα πακέτα TCP στην περιοχή 6881 έως 6890:
# Αποδοχή πακέτων TCP στις θύρες προορισμού 6881-6890 IPTables -A INPUT -P TCP - -DPORT 6881: 6890 -J Αποδοχή
7. Βάζοντας όλα μαζί
Τώρα έχουμε δει τα βασικά, μπορούμε να αρχίσουμε να συνδυάζουμε αυτούς τους κανόνες.
Μια δημοφιλής υπηρεσία Unix/Linux είναι η υπηρεσία Secure Shell (SSH) που επιτρέπει απομακρυσμένες συνδέσεις. Από προεπιλογή η SSH χρησιμοποιεί τη θύρα 22 και πάλι χρησιμοποιεί το πρωτόκολλο TCP. Έτσι, αν θέλουμε να επιτρέψουμε απομακρυσμένες συνδέσεις, θα πρέπει να επιτρέψουμε τις συνδέσεις TCP στη θύρα 22:
# Αποδοχή πακέτων TCP στη θύρα προορισμού 22 (SSH) iptables -A είσοδος -P TCP - -DPORT 22 -J Αποδοχή
Αυτό θα ανοίξει τη θύρα 22 (SSH) σε όλες τις εισερχόμενες συνδέσεις TCP, οι οποίες αποτελούν πιθανή απειλή για την ασφάλεια, καθώς οι χάκερς θα μπορούσαν να δοκιμάσουν τη διάσπαση της βίαιης δύναμης σε λογαριασμούς με αδύναμους κωδικούς πρόσβασης. Ωστόσο, εάν γνωρίζουμε τις διευθύνσεις IP των αξιόπιστων απομακρυσμένων μηχανών που θα χρησιμοποιηθούν για να συνδεθούν με τη χρήση του SSH, μπορούμε να περιορίσουμε την πρόσβαση μόνο σε αυτές τις διευθύνσεις IP προέλευσης. Για παράδειγμα, αν θέλαμε απλώς να ανοίξουμε την πρόσβαση SSH στο ιδιωτικό μας LAN (192.168.0.x), μπορούμε να περιορίσουμε την πρόσβαση σε αυτό το εύρος διευθύνσεων IP προέλευσης:
# Αποδοχή πακέτων TCP στη θύρα προορισμού 22 (SSH) από το Private LAN IPTables -A INPUT -P TCP -S 192.168.0.0/24 -DPORT 22 -J Αποδοχή
Η χρήση του φιλτραρίσματος IP προέλευσης μας επιτρέπει να ανοίξουμε με ασφάλεια την πρόσβαση SSH στη θύρα 22 μόνο σε αξιόπιστες διευθύνσεις IP. Για παράδειγμα, θα μπορούσαμε να χρησιμοποιήσουμε αυτή τη μέθοδο για να επιτρέψουμε τις απομακρυσμένες συνδέσεις μεταξύ εργασίας και οικιακών μηχανών. Σε όλες τις άλλες διευθύνσεις IP, η θύρα (και η υπηρεσία) θα φαινόταν κλειστή σαν να ήταν απενεργοποιημένη η υπηρεσία, ώστε οι χάκερ να χρησιμοποιούν μεθόδους σάρωσης λιμένων.
8. Περίληψη
Έχουμε μόλις γδαρίσει την επιφάνεια του τι μπορεί να επιτευχθεί με τα iptables, αλλά ελπίζουμε ότι αυτό το howto έχει δώσει μια καλή γείωση στα βασικά από τα οποία μπορεί κανείς να οικοδομήσει πιο περίπλοκα κανόνα σύνολα.
9. Συνδέσεις
http: // ip2location.com/free/blocker – για την παρεμπόδιση ορισμένων χωρών σύμφωνα με τη διεύθυνση IP τους
Howtos/network/iptables (поседним ииравл я половат и р р р и и и и и и и и и и и и и и и и и и и и и и и и и и и и и и и и и и и и и п и и п п п п п п п п
- Moinmoin Powered
- Python Powered
- GPL με άδεια χρήσης
- Έγκυρη HTML 4.01
Πώς να απενεργοποιήσετε ή να απενεργοποιήσετε το firewalld στο centos 7
Το Firewalld είναι μια δυναμικά διαχειριζόμενη λύση τείχους προστασίας που υποστηρίζει το δίκτυο ζωνών. Οι διαχειριστές του συστήματος το χρησιμοποιούν για να επιτρέψουν και να αποκλείσουν δυναμικά την εισερχόμενη και εξερχόμενη κυκλοφορία. Υποστηρίζει τόσο τις ρυθμίσεις τείχους προστασίας IPv4 όσο και IPv6. Από το CentOS 7, το Firewalld (Dynamic Firewall Manager) είναι το προεπιλεγμένο εργαλείο τείχους προστασίας σε διακομιστές CentOS.
Σας συμβουλεύουμε να διατηρείτε ενεργό και ενεργοποιημένο το firewalld ανά πάσα στιγμή. Ωστόσο, οι διαχειριστές ενδέχεται να χρειαστεί να απενεργοποιήσουν το Firewalld για δοκιμή ή μετάβαση σε άλλο εργαλείο τείχους προστασίας, όπως τα iPtables.
Αυτό το σεμινάριο θα σας δείξει πώς να απενεργοποιήσετε και να σταματήσετε το τείχος προστασίας στο CentOS 7.
- Ένας χρήστης με προνόμια sudo
- Πρόσβαση σε γραμμή εντολών (Ctrl-Alt-T)
- Μηχανή Centos 7
Ελέγξτε την κατάσταση Firewalld
Το Firewalld είναι ενεργοποιημένο από προεπιλογή σε κάθε μηχανή CentOS 7.
Για να ελέγξετε την κατάσταση firewalld, εκτελέστε την ακόλουθη εντολή από την γραμμή εντολών:
sudo systemctl Κατάσταση firewalld
Εάν το τείχος προστασίας εκτελείται, θα δείτε φωτεινό πράσινο κείμενο που υποδεικνύει ότι το τείχος προστασίας είναι ενεργό, όπως φαίνεται παρακάτω.
Απενεργοποίηση τείχους προστασίας στο CentOS
Μπορείτε να απενεργοποιήσετε το τείχος προστασίας προσωρινά ή μόνιμα. Τα παρακάτω τμήματα παρέχουν οδηγίες και για τις δύο επιλογές.
Σταματήστε προσωρινά το firewalld
Για να απενεργοποιήσετε προσωρινά τον προεπιλεγμένο διαχειριστή τείχους προστασίας στο CentOS 7, χρησιμοποιήστε την ακόλουθη εντολή:
sudo systemctl stop firewalld
Δεν θα υπάρξει μήνυμα επιβεβαίωσης.
Για να επαληθεύσετε ότι το firewalld είναι απενεργοποιημένο, πληκτρολογήστε:
sudo systemctl Κατάσταση firewalld
Μπορείτε να περιμένετε να δείτε Ενεργός: Ανενεργός (νεκρός) .
ο SystemCtl Stop Firewalld Η εντολή απενεργοποιεί την υπηρεσία μέχρι την επανεκκίνηση. Αφού τελειώσει η συνεδρία εκτέλεσης και η επανεκκίνηση του συστήματος, η υπηρεσία τείχους προστασίας θα είναι ξανά ενεργή.
Απενεργοποιήστε μόνιμα το τείχος προστασίας
Για να απενεργοποιήσετε μόνιμα το τείχος προστασίας στο CentOS 7, θα χρειαστεί να σταματήσετε την υπηρεσία τείχους προστασίας και στη συνέχεια να το απενεργοποιήσετε εντελώς.
Για να σταματήσετε το εργαλείο τείχους προστασίας, εκτελέστε:
sudo systemctl stop firewalld
Αυτή είναι επίσης η ίδια εντολή που χρησιμοποιήσαμε για να σταματήσουμε προσωρινά το Firewalld. Ελέγξτε την κατάσταση τείχους προστασίας.
sudo systemctl Κατάσταση firewalld
Η έξοδος θα πρέπει να δηλώνει ότι η υπηρεσία είναι ανενεργή.
Για να απενεργοποιήσετε την υπηρεσία από την ενεργοποίηση κατά την εκκίνηση του συστήματος, εισαγάγετε αυτήν την εντολή:
Sudo SystemCtl Απενεργοποιήστε το Firewalld
Δείτε την παρακάτω εικόνα για την έξοδο που μπορείτε να περιμένετε να βρείτε:
Τώρα έχετε σταματήσει με επιτυχία και απενεργοποιήσατε την υπηρεσία τείχους προστασίας στον διακομιστή CentOS 7. Ωστόσο, άλλες ενεργές υπηρεσίες ενδέχεται να ενεργοποιήσουν το Firewalld.
Για να εμποδίσετε άλλες υπηρεσίες από την ενεργοποίηση του Firewalld, Mask Firewalld από άλλες υπηρεσίες του συστήματος:
Sudo SystemCtl Mask -Now Firewalld
Αυτό δημιουργεί έναν συμβολικό σύνδεσμο (σύμφωνος) από την υπηρεσία τείχους προστασίας έως /dev/null .
Η έξοδος πρέπει να εμφανίζεται ως τα εξής:
Η έξοδος δημιουργήθηκε Symlink από/etc/systemd/system/firewalld.εξυπηρέτηση σε /dev /null.
Ακολουθώντας αυτό το σεμινάριο, τώρα ξέρετε πώς να σταματήσετε και να απενεργοποιήσετε το τείχος προστασίας στο CentOS 7. Επιπλέον, έχετε μάθει πώς να καλύψετε την υπηρεσία τείχους προστασίας από άλλες ενεργές υπηρεσίες για να αποφύγετε την επανενεργοποίηση.
Οι καλές πρακτικές ασφαλείας απαγορεύουν την απενεργοποίηση του τείχους προστασίας, ειδικά σε ζωντανούς διακομιστές. Να είστε πάντα προσεκτικοί όταν το κάνετε, ακόμη και σε περιβάλλοντα δοκιμών.
Χρησιμοποιώντας το Firewalld στο Centos 7
Το Firewalld είναι το τείχος προστασίας για το CentOS και υποστηρίζει τις ζώνες δικτύου / τείχους προστασίας, προκειμένου να δημιουργηθεί το επίπεδο εμπιστοσύνης των συνδέσεων / διεπαφών δικτύου (δείτε τις ζώνες παράγραφο). Εκτός από τη δυνατότητα διαχείρισης συγκεκριμένων θυρών, υποστηρίζει επίσης την ικανότητα προσθήκης υπηρεσιών / εφαρμογών απευθείας.
- Συνδεθείτε στο VPS μέσω SSH ή στην κονσόλα VPS στον πίνακα ελέγχου σας και χρησιμοποιήστε το sudo ή ακολουθήστε τα βήματα σε αυτό το άρθρο ως χρήστης ρίζας.
- Χρησιμοποιείτε ένα Plesk VPS? Η προεπιλεγμένη ζώνη στις πρόσφατες εκδόσεις Plesk δεν είναι δημόσια, αλλά το Plesk (–ζη = plesk).
- Οι εγκαταστάσεις μας Plesk, Directadmin και Cpanel έρχονται με προεγκατεστημένα τείχος προστασίας.
Εγκατάσταση τείχους προστασίας
Το Firewalld είναι εύκολα εγκατεστημένο χρησιμοποιώντας τις ακόλουθες εντολές:
yum -y εγκαταστήστε το firewalld systemctl ενεργοποιήστε το firewalld
Έλεγχος της κατάστασης του firewalld
Πριν συνεχίσετε με τη διαμόρφωση του firewalld, είναι σοφό να ελέγξετε ότι λειτουργεί πραγματικά σωστά. Το κάνετε αυτό με την εντολή:
SystemCtl Κατάσταση Firewalld
Εάν δεν υπάρχουν προβλήματα, η είσοδος θα μοιάζει με αυτό:
Εάν δεν δηλώνει ότι το firewalld είναι ενεργό, προσπαθήστε να το επανεκκινήσετε με:
SystemCtl RESTART Firewalld
Το Firewalld δεν ξεκινά ακόμα? Ελέγξτε για πιθανά μηνύματα σφάλματος για να λύσετε το πρόβλημα με:
journalctl -xe -u firewalld
Ζώνες
Το Firewalld χρησιμοποιεί ζώνες, αλλά τι σημαίνει αυτό? Με μια ζώνη, υποδεικνύετε πραγματικά σε ποιο περιβάλλον βρίσκεται η σύνδεσή σας στο Διαδίκτυο και πόσο την εμπιστεύεστε, για παράδειγμα, ένα κοινό, σπίτι ή σύνδεση εργασίας. Αυτό είναι ιδιαίτερα χρήσιμο εάν χρησιμοποιείτε ένα ιδιωτικό δίκτυο, για παράδειγμα, ή χρησιμοποιείτε CentOS 7 σε φορητό υπολογιστή και εργάζεστε από διαφορετικές τοποθεσίες. Στη συνέχεια, μπορείτε να διαμορφώσετε διαφορετικές ζώνες εκ των προτέρων και να ρυθμίσετε την ενεργή σας ζώνη ανάλογα με το πού βρίσκεστε.
Διαμορφώνοντας διαφορετικές ζώνες, μπορείτε να διακρίνετε μεταξύ των οποίων οι υπηρεσίες / θύρες είναι προσβάσιμες, ανάλογα με το πού βρίσκεστε και ποια ζώνη χρησιμοποιείτε. Χρησιμοποιείτε συχνά μόνο μία ζώνη σε ένα VPS επειδή το VPS δεν αλλάζει από το σπίτι / εργασία / δημόσιο περιβάλλον.
Out-of-the-box, το Firewalld έρχεται με τις ακόλουθες ζώνες:
- πτώση: Απορρίπτονται όλες οι εισερχόμενες συνδέσεις. Είναι δυνατές εξερχόμενες συνδέσεις.
- ΟΙΚΟΔΟΜΙΚΟ ΤΕΤΡΑΓΩΝΟ: Όλες οι εισερχόμενες συνδέσεις αρνούνται με ένα προεπιλεγμένο μήνυμα για την πηγή της εισερχόμενης σύνδεσης. Για το IPv4, αυτό είναι το ICMP-Host-Prohibited και για το IPv6 ICMP6-ADM-Prohibited (το ICMP είναι προεπιλογή για την αποστολή μηνυμάτων πληροφοριών και σφάλματος στην κυκλοφορία IP). Είναι δυνατές οι εξερχόμενες συνδέσεις.
- δημόσιο: Χρησιμοποιήστε αυτήν τη ζώνη για δημόσια περιβάλλοντα στα οποία δεν εμπιστεύεστε άλλους υπολογιστές στο δίκτυο. Μόνο προκαθορισμένες συνδέσεις (i.μι. λιμάνια / υπηρεσίες) γίνονται αποδεκτές.
- εξωτερικός: Αυτό επικεντρώνεται κυρίως στο εάν το τείχος προστασίας σας λειτουργεί ως πύλη και χρησιμοποιείται μεταμφίεση NAT. Δεν εμπιστεύεστε άλλους υπολογιστές στο δίκτυο και γίνονται αποδεκτές μόνο οι προκαθορισμένες συνδέσεις.
- DMZ: Η αποστρατιωτικοποιημένη ζώνη, όπου ο υπολογιστής / διακομιστής απομονώνεται στο δίκτυο και δεν έχει πρόσβαση σε άλλους υπολογιστές / διακομιστές. Μόνο συγκεκριμένες συνδέσεις γίνονται αποδεκτές.
- δουλειά: Για εργασιακά περιβάλλοντα. Συνήθως, άλλοι υπολογιστές έχουν εμπιστοσύνη στο ίδιο δίκτυο. Και πάλι, γίνονται αποδεκτές μόνο προκαθορισμένες συνδέσεις.
- Σπίτι: Για οικιακή χρήση. Το ίδιο ισχύει και στη ζώνη «εργασίας». Σημειώστε ότι οι συνδέσεις στην εργασία είναι συχνά καλύτερα ασφαλείς από ό, τι σε ένα οικιακό δίκτυο.
- εσωτερικός: Για χρήση με ιδιωτικά δίκτυα. Οι υπολογιστές σε αυτό το δίκτυο είναι συνήθως αξιόπιστοι. Μόνο οι προκαθορισμένες συνδέσεις γίνονται αποδεκτές.
- έμπιστος: Όλες οι συνδέσεις γίνονται αποδεκτές.
Διαχείριση ζώων
Το Firewalld έρχεται με μια σειρά χρήσιμων εντολών για τη διαχείριση των ζωνών σας. Σε αυτή την ενότητα, εξηγούμε το πιο σημαντικό.
Έλεγχος της προεπιλεγμένης ζώνης
Από προεπιλογή, το ‘δημόσιοΗ ζώνη είναι η προεπιλεγμένη ζώνη. Ελέγχετε την προεπιλεγμένη ζώνη με την εντολή:
firewall-cmd-get-default-ζώνη
Έλεγχος της ενεργού ζώνης
Μπορεί να συμβεί ότι αλλάζετε την ενεργή ζώνη, αλλά όχι την προεπιλεγμένη ζώνη. Ελέγχετε την ενεργή ζώνη και τις διεπαφές δικτύου για τις οποίες χρησιμοποιούνται με:
firewall-cmd-get-active-zones
Ελέγξτε τις διαθέσιμες ζώνες
Ελέγχετε τις διαθέσιμες ζώνες με την εντολή:
firewall-cmd-get-zones
Αυτό είναι ιδιαίτερα χρήσιμο εάν θέλετε να αλλάξετε τις ζώνες και πρώτα θέλετε να δείτε τις επιλογές σας.
Λεπτομερείς πληροφορίες ζώνης
Λεπτομερείς πληροφορίες όπως εξουσιοδοτημένες υπηρεσίες και μεταφορά, αλλά και προώθηση λιμένων κ.λπ. μπορεί να προβληθεί με:
firewall-cmd --zone = public-list-all
Αλλαγή ‘δημόσιο«στην επιθυμητή ζώνη ή δείτε την έξοδο για όλες τις ζώνες με:
Firewall-CMD--list-all-zones | πιο λιγο
Αλλαγή της προεπιλεγμένης ζώνης
Για να αλλάξετε την προεπιλεγμένη ζώνη, έχετε δύο επιλογές: αλλάξτε τη ζώνη για όλες τις διεπαφές ή ανά διεπαφή. Ας υποθέσουμε ότι χρησιμοποιείτε μια διεπαφή δικτύου (και όχι επίσης ένα ιδιωτικό δίκτυο), τότε η χρήση μιας ζώνης είναι επαρκής και μπορείτε τότε να ρυθμίσετε την προεπιλεγμένη ζώνη όταν αλλάζετε ζώνες.
Ρυθμίστε τη ζώνη για όλες τις διεπαφές:
Firewall-CMD-Set-Default-Zone = Δημόσιο
firewall-cmd --zone = public-change-interface = eth0
Αντικαθιστώ δημόσιο με το όνομα της επιθυμητής ζώνης και το eth0 με το όνομα της επιθυμητής διεπαφής δικτύου. Με αυτόν τον τρόπο, μπορείτε επίσης να αλλάξετε τις ζώνες ανά διεπαφή για ιδιωτικά δίκτυα, για παράδειγμα:
Firewall-Cmd-Zone = Public-Change-Interface = ETH0 Firewall-Cmd-Zone = εσωτερική-Αλλαγή-Interface = Eth1
Θύρες ανοίγματος
Μπορείτε να ανοίξετε τις θύρες στο Firewalld ή να προσθέσετε υπηρεσίες για να δώσετε πρόσβαση στο δίκτυο σε εφαρμογές. Όχι κάθε εφαρμογή έρχεται με μια υπηρεσία ή ίσως αλλάξατε την προεπιλεγμένη θύρα της υπηρεσίας (e.σολ. για SSH). Σε αυτή την περίπτωση, ανοίγετε μία ή περισσότερες συγκεκριμένες θύρες.
Κάθε αλλαγή σε αυτό το μέρος είναι ενεργή μόνο μετά από μια επανεκκίνηση του VPS σας ή με την επαναφόρτωση της διαμόρφωσής σας με:
Firewall-CMD--Reload
Άνοιγμα μιας μόνο θύρας
Ανοίξτε μια θύρα με την εντολή:
firewall-cmd --zone = public-permanent-add-port = 1234/tcp
- Αντικαθιστώ δημόσιο με την επιθυμητή ζώνη
- –μόνιμος Εξασφαλίζει ότι η αλλαγή παραμένει άθικτη ακόμη και μετά από επανεκκίνηση
- Αντικαθιστώ 1234/TCP με την επιθυμητή θύρα και το επιθυμητό πρωτόκολλο (TCP ή UDP)
Σειρές
Θα προτιμούσατε να ανοίξετε μια σειρά? Στη συνέχεια χρησιμοποιείτε την εντολή:
firewall-cmd --zone = public-permanent-add-port = 1234-1345/tcp
Αντικαταστήστε 1234-1345 με το πραγματικό εύρος θύρας που θέλετε να ανοίξετε
Πρόσβαση ανά IP
Αντί να ανοίξετε μια θύρα για ολόκληρο τον ευρύ κόσμο, μπορείτε επίσης να το ανοίξετε για μια συγκεκριμένη IP χρησιμοποιώντας μόνο τις εντολές:
firewall-cmd-permanent --zone = public -add-ruch-rule = '
Οικογένεια κανόνων = "IPv4" Διεύθυνση πηγής = "123.123.123.123 "Port Protocol =" TCP "Port =" 123 "Αποδοχή"
Αντικαθιστώ 123.123.123.123 από την πραγματική διεύθυνση IP του πελάτη και 123 από το λιμάνι θα θέλατε να ανοίξετε. Επαναλάβετε αυτά τα βήματα στο Whitelist πολλαπλά IP και επαναφορτώστε ξανά τη διαμόρφωσή σας (Firewall-CMD–Reload). Μην ξεχάσετε να αφαιρέσετε τον γενικό κανόνα εάν η αντίστοιχη θύρα είχε ήδη ανοίξει.
Έλεγχος ανοιχτών θυρών
Με την πάροδο του χρόνου, μπορείτε να ξεχάσετε ποιες θύρες είναι ανοιχτές. Τα ελέγχετε με την εντολή:
Firewall-CMD-Zone = Public-PermanMent-List-Ports
Θύρες κλεισίματος
Το κλείσιμο των λιμένων λειτουργεί σχεδόν το ίδιο με το άνοιγμα μιας θύρας και το κάνετε με την εντολή:
firewall-cmd --zone = public-Permanmanent-Remove-port = 1234/tcp firewall-cmd--reload
- αντικαθιστώ 1234 με τον επιθυμητό αριθμό θύρας ή χρησιμοποιήστε 1234-1345/TCP ως σύνταξη για να διαγράψετε ένα εύρος θύρας
- Firewall-CMD–Reload Ενημερώνει αμέσως την αλλαγή διαμόρφωσης
Ρύθμιση της διαμόρφωσης απευθείας
Εκτός από τις παραπάνω εντολές, μπορείτε επίσης να προσαρμόσετε απευθείας το αρχείο διαμόρφωσης μιας συγκεκριμένης ζώνης. Μπορείτε να βρείτε τα αρχεία ρυθμίσεων των ζωνών με:
ls/etc/firewalld/zones
Σε μια νέα εγκατάσταση, μόνο δημόσιο.XML και κοινό.XML.Παλιά θα αναφερθούν εδώ. Μπορείτε να το ανοίξετε και να το επεξεργαστείτε με την εντολή:
Nano/etc/firewalld/ζώνες/δημόσιο.XML
Μπορείτε να ανοίξετε υπηρεσίες ή θύρες αντίστοιχα τοποθετώντας τις ακόλουθες προσθήκες στο αρχείο:
- Αντικαταστήστε το όνομα της υπηρεσίας με το πραγματικό όνομα της υπηρεσίας, για παράδειγμα, SSH.
- Αντικαταστήστε 1234 με τον επιθυμητό αριθμό και TCP με UDP εάν είστε σίγουροι ότι θέλετε να ανοίξετε τη θύρα UDP.
Θέλετε να δημιουργήσετε ένα νέο αρχείο διαμόρφωσης για άλλη ζώνη, για παράδειγμα, σπίτι? Τότε το κοινό.XML.Το παλιό είναι ένα εξαιρετικό σημείο εκκίνησης. Αλλάζετε το κοινό.XML.παλιό σε ένα αρχείο για άλλη ζώνη αντιγράφοντας το με:
CP/etc/firewalld/zones/public.XML.παλιά/etc/firewalld/ζώνες/σπίτι.XML
- Αντικαταστήστε το σπίτι με το όνομα της επιθυμητής ζώνης.
Προσθήκη υπηρεσιών
Εκτός από το άνοιγμα των θυρών, μπορείτε επίσης να ανοίξετε συγκεκριμένες υπηρεσίες στο Firewalld. Στη συνέχεια, προσθέτετε την υπηρεσία στο Firewalld και ανοίγουν μία ή περισσότερες θύρες. Υπάρχει μια πλευρική σημείωση εδώ:
Το FireWalld χρησιμοποιεί αρχεία ρυθμίσεων (βλέπε διαθέσιμες υπηρεσίες) στις οποίες ορίζονται οι θύρες διαφορετικών υπηρεσιών. Αυτές οι θύρες ανοίγουν όταν προστίθεται η υπηρεσία. Για παράδειγμα, εάν αλλάξετε τη θύρα SSH σας, εάν έχετε προσθέσει την υπηρεσία SSH, η νέα θύρα δεν θα ανοίξει αυτόματα εκτός εάν ανοίξετε τη θύρα με μη αυτόματο τρόπο ή προσαρμόστε τη διαμόρφωση της υπηρεσίας στο Firewalld.
Ανοίξτε τις υπηρεσίες στο Firewalld με την ακόλουθη εντολή, όπου αντικαθιστάτε το SSH με το σχετικό όνομα υπηρεσίας:
firewall-cmd --zone = public-PermanMent-Add-Service = SSH firewall-cmd--reload
Υπάρχουν δύο τρόποι για να δείτε ποιες υπηρεσίες είναι διαθέσιμες για χρήση με το Firewalld:
Με άμεση εντολή:
Firewall-CMD-
ls/usr/lib/firewalld/υπηρεσίες
Τα περιεχόμενα των διαθέσιμων αρχείων μπορούν να προβληθούν με:
cat/usr/lib/firewalld/services/servicenaam.XML
Αφαίρεση υπηρεσιών
Μπορείτε να καταργήσετε μια υπηρεσία εξίσου εύκολα με την προσθήκη της στο Firewalld:
firewall-cmd --zone = public-PermanManent-Remove-Service = SSH Firewall-CMD--Reload
Μπλοκάρισμα IPS
Μπορεί να συμβεί ότι ο VPS σας βομβαρδίζεται με επιθέσεις βίαιης δύναμης από bots. Σας συμβουλεύουμε να το λύσετε χρησιμοποιώντας το Fail2BAN, αλλά μπορείτε επίσης να αποκλείσετε με μη αυτόματο τρόπο IPS. Το κάνετε αυτό με τις εντολές:
Firewall-cmd-Permanent-ADDD-RICH-RULE = "Οικογένεια κανόνας = 'IPv4' Διεύθυνση πηγής = '123.123.123.0/24 "Απορρίψτε" Firewall-CMD--Reload
Αντικαταστήστε 123.123.123.0/24 με το συγκεκριμένο εύρος IP που θέλετε να αποκλείσετε ή με μια συγκεκριμένη διεύθυνση IP εάν θέλετε να μπλοκάρει ένα IP.
Εναλλακτικά, μπορείτε επίσης να μετατρέψετε αυτήν την αρχή και να αποκλείσετε την πρόσβαση σε μια θύρα για όλους και να επιτρέψετε μόνο συγκεκριμένα IPS. Καταργάτε πρώτα τη σχετική θύρα:
Firewall-cmd-Zone = Public-PermanMent-Remove-Port = 1234/TCP
Αντικαταστήστε το κοινό με τη σχετική ζώνη, 1234 και TCP με την επιθυμητή θύρα / πρωτόκολλο. Στη συνέχεια, μπορείτε να έχετε πρόσβαση σε συγκεκριμένα IPs με τις εντολές:
firewall-cmd-permanent --zone = public -add-ruch-rule = '
Οικογένεια κανόνων = "IPv4" Διεύθυνση πηγής = "1.2.3.4 "Port Protocol =" TCP "Port =" 1234 "Αποδοχή 'firewall-cmd--reload
Εάν είναι απαραίτητο, αντικαταστήστε το κοινό με την επιθυμητή ζώνη, 1.2.3.4. με τη σωστή IP και 1234 και TCP με τον σωστό αριθμό θύρας / πρωτόκολλο.
Έλεγχος μπλοκαρισμένων θυρών
Ας υποθέσουμε ότι μια διεύθυνση IP έχει προβλήματα να φτάσει σε μια υπηρεσία στο VPS σας, είναι χρήσιμο να αποκλείσετε εάν είναι μπλοκαρισμένο στο VPS σας. Το κάνετε αυτό με την εντολή:
firewall-cmd-list-all
Ξεμπλοκάρισμα IPS
Για να ξεμπλοκάρετε τα IPs που μπλοκαρίστηκαν στο Firewalld, μπορούν κατά κάποιο τρόπο, αντιστρέψτε τις εντολές από την προηγούμενη ενότητα. Ας υποθέσουμε ότι έχετε μπλοκάρει ένα εύρος IP / IP, στη συνέχεια χρησιμοποιείτε τη σύνταξη:
Firewall-CMD-ΠΕΡΙΟΡΙΣΜΕΝΗ-ΠΕΡΙΕΧΟΜΕΝΟ-REMOVE-RULE = "Οικογένεια κανόνων = 'IPv4' Διεύθυνση προέλευσης = '123.123.123.0/24 "Απορρίψτε" Firewall-CMD--Reload
Μην ξεχάσετε να προσαρμόσετε το IP εδώ. Έχετε δώσει μια συγκεκριμένη διεύθυνση IP πρόσβαση σε μια θύρα και θέλετε να την ανατρέψετε? Στη συνέχεια, χρησιμοποιήστε:
Firewall-cmd-Permanent --zone = δημόσιο-Remove-rule-rule = '
Οικογένεια κανόνων = "IPv4" Διεύθυνση πηγής = "1.2.3.4 "Port Protocol =" TCP "Port =" 1234 "Αποδοχή 'firewall-cmd--reload
Θέλετε να μάθετε ακόμη περισσότερα για το Firewalld? Ενημερώστε μας και ρίξτε μια ματιά στην τεκμηρίωση του Firewalld.
Εάν έχετε απομείνει ερωτήσεις σχετικά με αυτό το άρθρο, μην διστάσετε να επικοινωνήσετε με το τμήμα υποστήριξης μας. Μπορείτε να τα φτάσετε μέσω του ‘Επικοινωνήστε μαζί μας’ κουμπί στο κάτω μέρος αυτής της σελίδας.
Εάν θέλετε να συζητήσετε αυτό το άρθρο με άλλους χρήστες, αφήστε ένα μήνυμα κάτω από ‘Σχόλια“.
- Σε αυτό το άρθρο:
- Εγκατάσταση τείχους προστασίας
- Έλεγχος της κατάστασης του firewalld
- Ζώνες
- Διαχείριση ζώων
- Θύρες ανοίγματος
- Θύρες κλεισίματος
- Προσθήκη υπηρεσιών
- Αφαίρεση υπηρεσιών
- Μπλοκάρισμα IPS
- Ξεμπλοκάρισμα IPS
Πώς να ρυθμίσετε ένα τείχος προστασίας χρησιμοποιώντας το Firewalld στο Centos 7
Το Firewalld είναι μια λύση διαχείρισης τείχους προστασίας που διατίθεται για πολλές κατανομές Linux, η οποία λειτουργεί ως frontend για το σύστημα φιλτραρίσματος πακέτων iptables που παρέχεται από τον πυρήνα Linux. Σε αυτόν τον οδηγό, θα καλύψουμε τον τρόπο δημιουργίας ενός τείχους προστασίας για το διακομιστή σας και θα σας δείξουμε τα βασικά στοιχεία διαχείρισης του τείχους προστασίας με το διαχειριστικό εργαλείο Firewall-CMD (εάν εσείς’D Μάλλον χρησιμοποιήστε iptables με CentOS, ακολουθήστε αυτόν τον οδηγό).
Σημείωση: Υπάρχει μια πιθανότητα να εργάζεστε με μια νεότερη έκδοση του Firewalld από ό, τι ήταν διαθέσιμη κατά τη στιγμή της γραφής ή ότι ο διακομιστής σας δημιουργήθηκε ελαφρώς διαφορετικά από τον διακομιστή παραδείγματος που χρησιμοποιήθηκε σε όλο αυτόν τον οδηγό. Η συμπεριφορά ορισμένων από τις εντολές που εξηγούνται σε αυτόν τον οδηγό μπορεί να διαφέρει ανάλογα με τη συγκεκριμένη διαμόρφωση σας.
Βασικές έννοιες στο Firewalld
Πριν αρχίσουμε να μιλάμε για το πώς να χρησιμοποιήσουμε πραγματικά το βοηθητικό πρόγραμμα Firewall-CMD για να διαχειριστούμε τη διαμόρφωση του τείχους προστασίας, θα πρέπει να εξοικειωθούμε με μερικές βασικές έννοιες που εισάγει το εργαλείο.
Ζώνες
Ο δαίμονας του τείχους προστασίας διαχειρίζεται ομάδες κανόνων που χρησιμοποιούν οντότητες που ονομάζονται “ζώνες”. Οι ζώνες είναι βασικά σύνολα κανόνων που υπαγορεύουν ποια κυκλοφορία πρέπει να επιτρέπεται ανάλογα με το επίπεδο εμπιστοσύνης που έχετε στα δίκτυα που συνδέεται με τον υπολογιστή σας. Οι διεπαφές δικτύου έχουν εκχωρηθεί μια ζώνη για να υπαγορεύσει τη συμπεριφορά που πρέπει να επιτρέψει το τείχος προστασίας.
Για υπολογιστές που μπορεί να κινούνται συχνά μεταξύ των δικτύων (όπως οι φορητοί υπολογιστές), αυτό το είδος ευελιξίας παρέχει μια καλή μέθοδο αλλαγής των κανόνων σας ανάλογα με το περιβάλλον σας. Μπορεί να έχετε αυστηρούς κανόνες που απαγορεύουν τη μεγαλύτερη κίνηση όταν λειτουργούν σε δημόσιο δίκτυο WiFi, επιτρέποντας παράλληλα πιο χαλαροί περιορισμοί όταν συνδέονται με το οικιακό σας δίκτυο. Για έναν διακομιστή, αυτές οι ζώνες δεν είναι τόσο άμεσα σημαντικές επειδή το περιβάλλον δικτύου σπάνια, αν ποτέ, αλλάζει.
Ανεξάρτητα από το πόσο δυναμικό μπορεί να είναι το περιβάλλον δικτύου σας, είναι ακόμα χρήσιμο να είστε εξοικειωμένοι με τη γενική ιδέα πίσω από κάθε μια από τις προκαθορισμένες ζώνες για το Firewalld . Σε σειρά από λιγότερο αξιόπιστος προς την πιο αξιόπιστος, Οι προκαθορισμένες ζώνες εντός του Firewalld είναι:
- πτώση: Το χαμηλότερο επίπεδο εμπιστοσύνης. Όλες οι εισερχόμενες συνδέσεις πέφτουν χωρίς απάντηση και είναι δυνατές μόνο οι εξερχόμενες συνδέσεις.
- ΟΙΚΟΔΟΜΙΚΟ ΤΕΤΡΑΓΩΝΟ: Παρόμοια με τα παραπάνω, αλλά αντί να απομακρύνουν τις συνδέσεις, οι εισερχόμενες αιτήσεις απορρίπτονται με ένα μήνυμα ICMP-Host-Prohibited ή ICMP6-ADM-Prohibed Message.
- δημόσιο: Αντιπροσωπεύει δημόσια, μη αξιόπιστα δίκτυα. Εσύ’t Εμπιστεύεστε άλλους υπολογιστές, αλλά μπορεί να επιτρέψει επιλεγμένες εισερχόμενες συνδέσεις κατά περίπτωση.
- εξωτερικός: Εξωτερικά δίκτυα σε περίπτωση που χρησιμοποιείτε το τείχος προστασίας ως πύλη σας. Είναι ρυθμισμένο για μεταμφίεση NAT έτσι ώστε το εσωτερικό σας δίκτυο να παραμένει ιδιωτικό αλλά προσβάσιμο.
- εσωτερικός: Η άλλη πλευρά της εξωτερικής ζώνης, που χρησιμοποιείται για το εσωτερικό τμήμα μιας πύλης. Οι υπολογιστές είναι αρκετά αξιόπιστοι και διατίθενται ορισμένες πρόσθετες υπηρεσίες.
- DMZ: Χρησιμοποιείται για υπολογιστές που βρίσκονται σε DMZ (απομονωμένοι υπολογιστές που δεν θα έχουν πρόσβαση στο υπόλοιπο του δικτύου σας). Επιτρέπονται μόνο ορισμένες εισερχόμενες συνδέσεις.
- δουλειά: Χρησιμοποιείται για μηχανές εργασίας. Εμπιστευθείτε τους περισσότερους υπολογιστές στο δίκτυο. Μπορούν να επιτρέπονται μερικές ακόμη υπηρεσίες.
- Σπίτι: Περιβάλλον στο σπίτι. Γενικά υποδηλώνει ότι εμπιστεύεστε τους περισσότερους από τους άλλους υπολογιστές και ότι μερικές ακόμη υπηρεσίες θα γίνουν αποδεκτές.
- έμπιστος: Εμπιστευθείτε όλα τα μηχανήματα στο δίκτυο. Το πιο ανοιχτό από τις διαθέσιμες επιλογές και θα πρέπει να χρησιμοποιείται με φειδώ.
Για να χρησιμοποιήσουμε το τείχος προστασίας, μπορούμε να δημιουργήσουμε κανόνες και να αλλάξουμε τις ιδιότητες των ζωνών μας και στη συνέχεια να αναθέσουμε τις διεπαφές δικτύου μας σε οποιεσδήποτε ζώνες είναι οι πλέον κατάλληλες.
Μονιμότητα του κανόνα
Στο Firewalld, οι κανόνες μπορούν να οριστούν είτε μόνιμοι είτε ως άμεσοι. Εάν προστεθεί ή τροποποιηθεί ένας κανόνας, από προεπιλογή, τροποποιείται η συμπεριφορά του τρέχοντος τείχους προστασίας. Κατά την επόμενη εκκίνηση, οι τροποποιήσεις θα πεταχτούν και θα εφαρμοστούν οι παλιοί κανόνες.
Οι περισσότερες λειτουργίες Firewall-CMD μπορούν να πάρουν τη σημαία-η μόνιμη σημαία για να υποδείξει ότι το μη ελεγχόμενο τείχος προστασίας πρέπει να στοχεύει. Αυτό θα επηρεάσει το σύνολο των κανόνων που επαναφορτώνεται κατά την εκκίνηση. Αυτός ο διαχωρισμός σημαίνει ότι μπορείτε να δοκιμάσετε τους κανόνες στην ενεργό σας τείχος προστασίας και στη συνέχεια να επαναφορτώσετε εάν υπάρχουν προβλήματα. Μπορείτε επίσης να χρησιμοποιήσετε τη σημαία -Παρουσιάστε για να δημιουργήσετε ένα ολόκληρο σύνολο κανόνων με την πάροδο του χρόνου που θα εφαρμοστούν ταυτόχρονα όταν εκδίδεται η εντολή επαναφόρτισης.
Εγκαταστήστε και ενεργοποιήστε το τείχος προστασίας σας να ξεκινήσει κατά την εκκίνηση
Το Firewalld εγκαθίσταται από προεπιλογή σε ορισμένες κατανομές Linux, συμπεριλαμβανομένων πολλών εικόνων του Centos 7. Ωστόσο, ίσως χρειαστεί να εγκαταστήσετε τον εαυτό σας:
Αφού εγκαταστήσετε το firewalld, μπορείτε να ενεργοποιήσετε την υπηρεσία και να επανεκκινήσετε τον διακομιστή σας. Λάβετε υπόψη ότι η ενεργοποίηση του firewalld θα προκαλέσει την εκκίνηση της υπηρεσίας κατά την εκκίνηση. Είναι βέλτιστη πρακτική να δημιουργήσετε τους κανόνες του τείχους προστασίας και να εκμεταλλευτείτε την ευκαιρία για να τις δοκιμάσετε πριν διαμορφώσετε αυτήν τη συμπεριφορά, προκειμένου να αποφευχθούν πιθανά ζητήματα.
Όταν ο διακομιστής επανεκκινήσει, το τείχος προστασίας σας θα πρέπει να αναφερθεί, οι διεπαφές δικτύου σας θα πρέπει να τοποθετηθούν στις ζώνες που ρυθμίσατε (ή να επιστρέψετε στη διαμορφωμένη προεπιλεγμένη ζώνη) και οι κανόνες που σχετίζονται με τη ζώνη (ες) θα εφαρμοστούν στις σχετικές διεπαφές.
Μπορούμε να επαληθεύσουμε ότι η υπηρεσία εκτελείται και προσπελάσιμη πληκτρολογώντας:
Παραγωγήτρέξιμο
Αυτό υποδεικνύει ότι το τείχος προστασίας μας λειτουργεί με την προεπιλεγμένη διαμόρφωση.
Να εξοικειωθείτε με τους τρέχοντες κανόνες τείχους προστασίας
Πριν αρχίσουμε να κάνουμε τροποποιήσεις, θα πρέπει να εξοικειωθούμε με το προεπιλεγμένο περιβάλλον και τους κανόνες που παρέχονται από τον δαίμονα.
Εξερευνώντας τις προεπιλογές
Μπορούμε να δούμε ποια ζώνη επιλέγεται επί του παρόντος ως προεπιλογή πληκτρολογώντας:
Παραγωγήδημόσιο
Δεδομένου ότι έχουμε’Δεδομένου ότι η Firewalld οποιεσδήποτε εντολές αποκλίνουν από την προεπιλεγμένη ζώνη και καμία από τις διεπαφές μας δεν έχει ρυθμιστεί ώστε να δεσμεύεται σε άλλη ζώνη, αυτή η ζώνη θα είναι επίσης η μόνη “ενεργός” Ζώνη (η ζώνη που ελέγχει την κυκλοφορία για τις διεπαφές μας). Μπορούμε να το επαληθεύσουμε πληκτρολογώντας:
Παραγωγήδημόσιες διεπαφές: eth0 eth1
Εδώ, μπορούμε να δούμε ότι ο παραδείγματος διακομιστής μας έχει δύο διεπαφές δικτύου που ελέγχονται από το τείχος προστασίας (ETH0 και ETH1). Και οι δύο διαχειρίζονται επί του παρόντος σύμφωνα με τους κανόνες που ορίζονται για τη δημόσια ζώνη.
Πώς γνωρίζουμε ποιοι κανόνες συνδέονται με τη δημόσια ζώνη? Μπορούμε να εκτυπώσουμε την προεπιλεγμένη ζώνη’διαμόρφωση S πληκτρολογώντας:
ΠαραγωγήΔημόσια (προεπιλογή, ενεργός) Στόχος: Προεπιλεγμένη ICMP-BLOCK-Inversion: Δεν υπάρχουν διεπαφές: Πηγές ETH0 ETH0: Υπηρεσίες: SSH DHCPV6-Client Ports: Πρωτόκολλα: Masquerade: No Frompon-Ports: Πηγή-Περιεχόμενα: ICMP-Blocks: Πλούσιοι κανόνες:
Μπορούμε να πούμε από την έξοδο ότι αυτή η ζώνη είναι τόσο η προεπιλεγμένη όσο και η ενεργή και ότι οι διεπαφές ETH0 και ETH1 σχετίζονται με αυτή τη ζώνη (γνωρίζαμε ήδη όλα αυτά από τις προηγούμενες έρευνές μας). Ωστόσο, μπορούμε επίσης να δούμε ότι αυτή η ζώνη επιτρέπει τις κανονικές λειτουργίες που σχετίζονται με έναν πελάτη DHCP (για την ανάθεση διεύθυνσης IP) και το SSH (για απομακρυσμένη διαχείριση).
Εξερευνώντας εναλλακτικές ζώνες
Τώρα έχουμε μια καλή ιδέα για τη διαμόρφωση για την προεπιλεγμένη και ενεργή ζώνη. Μπορούμε να μάθουμε πληροφορίες για άλλες ζώνες.
Για να πάρετε μια λίστα με τις διαθέσιμες ζώνες, πληκτρολογήστε:
Παραγωγήμπλοκ DMZ drop εξωτερικό σπίτι εσωτερική δημόσια αξιόπιστη εργασία
Μπορούμε να δούμε τη συγκεκριμένη διαμόρφωση που σχετίζεται με μια ζώνη, συμπεριλαμβάνοντας την παράμετρο -zone = στην εντολή μας-list-all:
ΠαραγωγήΣτόχος Home: Προεπιλεγμένη ICMP-Block-Inversion: Χωρίς διεπαφές: Πηγές: Υπηρεσίες: DHCPV6-Client MDNS Samba-Client SSH Θύρες: Πρωτόκολλα: Masquerade: No Forward-Port-Ports: Πηγή: ICMP-Blocks: Πλούσιοι κανόνες:
Μπορείτε να εξάγετε όλους τους ορισμούς της ζώνης χρησιμοποιώντας την επιλογή-list-all-zones. Πιθανότατα θα θελήσετε να διοχετεύσετε την έξοδο σε ένα τηλεειδοποιητή για ευκολότερη προβολή:
Επιλέγοντας ζώνες για τις διεπαφές σας
Εκτός αν έχετε ρυθμίσει τις διεπαφές δικτύου σας διαφορετικά, κάθε διεπαφή θα τοποθετηθεί στην προεπιλεγμένη ζώνη όταν εκκινηθεί το τείχος προστασίας.
Αλλαγή της ζώνης μιας διεπαφής
Μπορείτε να μεταβείτε μια διεπαφή μεταξύ των ζωνών κατά τη διάρκεια μιας συνεδρίας χρησιμοποιώντας την παράμετρο-ζώνη =. Όπως συμβαίνει με όλες τις εντολές που τροποποιούν το τείχος προστασίας, θα χρειαστεί να χρησιμοποιήσετε το Sudo .
Για παράδειγμα, μπορούμε να μετατρέψουμε τη διεπαφή μας ETH0 στο “Σπίτι” ζώνη πληκτρολογώντας αυτό:
Παραγωγήεπιτυχία
Σημείωση: Κάθε φορά που μεταβαίνετε μια διεπαφή σε μια νέα ζώνη, να γνωρίζετε ότι πιθανότατα τροποποιείτε τις υπηρεσίες που θα λειτουργήσουν. Για παράδειγμα, εδώ μετακομίζουμε στο “Σπίτι” Ζώνη, η οποία διαθέτει SSH διαθέσιμη. Αυτό σημαίνει ότι η σύνδεσή μας πρέπει’σταγόνα. Ορισμένες άλλες ζώνες δεν έχουν ενεργοποιηθεί από το SSH από προεπιλογή και εάν η σύνδεσή σας έχει πέσει κατά τη χρήση μία από αυτές τις ζώνες, θα μπορούσατε να βρείτε τον εαυτό σας ανίκανος να συνδεθείτε ξανά.
Μπορούμε να επαληθεύσουμε ότι αυτό ήταν επιτυχές ζητώντας ξανά τις ενεργές ζώνες:
ΠαραγωγήΔιεπαφές σπιτιού: δημόσιες διεπαφές ETH0: ETH1
Ρύθμιση της προεπιλεγμένης ζώνης
Εάν όλες οι διεπαφές σας μπορούν να αντιμετωπιστούν καλύτερα από μία ζώνη, αυτό’S πιθανώς ευκολότερο να επιλέξετε την καλύτερη προεπιλεγμένη ζώνη και στη συνέχεια να το χρησιμοποιήσετε για τη διαμόρφωσή σας.
Μπορείτε να αλλάξετε την προεπιλεγμένη ζώνη με την παράμετρο-set-default-zone =. Αυτό θα αλλάξει αμέσως οποιαδήποτε διεπαφή που είχε πέσει πίσω στην προεπιλογή στη νέα ζώνη:
Παραγωγήεπιτυχία
Ρύθμιση κανόνων για τις εφαρμογές σας
Ο βασικός τρόπος καθορισμού των εξαιρέσεων τείχους προστασίας για τις υπηρεσίες που επιθυμείτε να διαθέσετε είναι αρκετά απλός. Εμείς’Θα περάσω από τη βασική ιδέα εδώ.
Προσθήκη υπηρεσίας στις ζώνες σας
Η απλούστερη μέθοδος είναι να προσθέσετε τις υπηρεσίες ή τις θύρες που χρειάζεστε στις ζώνες που χρησιμοποιείτε. Και πάλι, μπορείτε να πάρετε μια λίστα με τις διαθέσιμες υπηρεσίες με την επιλογή-Get-Services:
ΠαραγωγήRH-Satellite-6 amanda-client amanda-k5-client bacula bacula-client bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfengine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns docker-registry dropbox-lansync elasticsearch freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master high-availability http https imap imaps ipp ipp-client ipsec iscsi-target kadmin kerberos kibana klogin kpasswd kshell ldap ldaps libvirt libvirt-tls managesieve mdns mosh mountd ms-wbt mssql mysql nfs nrpe ntp openvpn ovirt-imageio ovirt-storageconsole ovirt-vmconsole pmcd pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp pulseaudio puppetmaster quassel radius rpc-bind rsh rsyncd samba samba-client sane sip sips smtp smtp-submission smtps snmp snmptrap spideroak-lansync squid ssh synergy syslog syslog-tls telnet tftp tftp-Πελάτης TINC TOR-SHOCKS TRANSMISSING-Client VDSM VNC-Server WBEM-HTTPS XMPP-BOSH XMPP-Client XMPP-Local XMPP-Server
Σημείωση: Μπορείτε να λάβετε περισσότερες λεπτομέρειες σχετικά με κάθε μία από αυτές τις υπηρεσίες εξετάζοντας τα συσχετισμένα τους .Αρχείο XML στον κατάλογο/USR/LIB/Firewalld/Services. Για παράδειγμα, η υπηρεσία SSH ορίζεται έτσι:
/usr/lib/firewalld/services/ssh.XML
υπηρεσία> μικρός>Σσεμικρός> περιγραφή>Το Secure Shell (SSH) είναι ένα πρωτόκολλο για την σύνδεση και την εκτέλεση εντολών σε απομακρυσμένες μηχανές. Παρέχει ασφαλείς κρυπτογραφημένες επικοινωνίες. Εάν σχεδιάζετε να έχετε πρόσβαση στο μηχάνημά σας από απόσταση μέσω SSH σε διεπαφή τείχους προστασίας, ενεργοποιήστε αυτήν την επιλογή. Χρειάζεστε το πακέτο OpenSsh-Server που έχει εγκατασταθεί για να είναι χρήσιμη αυτή η επιλογή.περιγραφή> Λιμάνι πρωτόκολλο=«TCP« Λιμάνι=«22«/> υπηρεσία>
Μπορείτε να ενεργοποιήσετε μια υπηρεσία για μια ζώνη χρησιμοποιώντας την παράμετρο-Add-Service =. Η λειτουργία θα στοχεύει την προεπιλεγμένη ζώνη ή οποιαδήποτε ζώνη καθορίζεται από την παράμετρο -ζώνη =. Από προεπιλογή, αυτό θα προσαρμόσει μόνο την τρέχουσα περίοδο τείχους προστασίας. Μπορείτε να προσαρμόσετε τη διαμόρφωση μόνιμης τείχους προστασίας, συμπεριλαμβάνοντας τη σημαία -.
Για παράδειγμα, εάν εκτελούμε έναν διακομιστή ιστού που εξυπηρετεί τη συμβατική κυκλοφορία HTTP, μπορούμε να επιτρέψουμε αυτήν την κυκλοφορία για διεπαφές στο δικό μας “δημόσιο” Ζώνη για αυτή τη σύνοδο πληκτρολογώντας:
Μπορείτε να αφήσετε το -ζώνη = εάν θέλετε να τροποποιήσετε την προεπιλεγμένη ζώνη. Μπορούμε να επαληθεύσουμε ότι η λειτουργία ήταν επιτυχής χρησιμοποιώντας τις λειτουργίες-λίστα ή-λίστας:
Παραγωγήdhcpv6-client HTTP σσε
Μόλις δοκιμάσετε ότι όλα λειτουργούν όπως θα έπρεπε, πιθανότατα θα θελήσετε να τροποποιήσετε τους μόνιμους κανόνες τείχους προστασίας, έτσι ώστε η υπηρεσία σας να είναι ακόμα διαθέσιμη μετά από επανεκκίνηση. Μπορούμε να φτιάξουμε το δικό μας “δημόσιο” η ζώνη αλλάζει μόνιμη πληκτρολογώντας:
Παραγωγήεπιτυχία
Μπορείτε να επαληθεύσετε ότι αυτό ήταν επιτυχές προσθέτοντας τη-μόνιμη σημαία στη λειτουργία-Λίστα υπηρεσιών. Πρέπει να χρησιμοποιήσετε το Sudo για οποιεσδήποτε -μόνιμες λειτουργίες:
Παραγωγήdhcpv6-client HTTP σσε
Τα δικα σου “δημόσιο” Η ζώνη θα επιτρέψει τώρα την κυκλοφορία ιστού HTTP στη θύρα 80. Εάν ο διακομιστής ιστού σας έχει ρυθμιστεί να χρησιμοποιεί SSL/TLS, εσείς’Θα ήθελα επίσης να προσθέσετε την υπηρεσία HTTPS. Μπορούμε να το προσθέσουμε στην τρέχουσα συνεδρία και το μόνιμο σύνολο κανόνων πληκτρολογώντας:
Τι γίνεται αν δεν υπάρχει διαθέσιμη κατάλληλη υπηρεσία?
Οι υπηρεσίες τείχους προστασίας που περιλαμβάνονται στην εγκατάσταση Firewalld αντιπροσωπεύουν πολλές από τις πιο κοινές απαιτήσεις για εφαρμογές που ενδέχεται να επιθυμείτε να επιτρέψετε την πρόσβαση. Ωστόσο, πιθανότατα θα υπάρχουν σενάρια όπου αυτές οι υπηρεσίες δεν ταιριάζουν στις απαιτήσεις σας.
Σε αυτήν την περίπτωση, έχετε δύο επιλογές.
Άνοιγμα θύρας για τις ζώνες σας
Ένας τρόπος για να προσθέσετε υποστήριξη για τη συγκεκριμένη εφαρμογή σας είναι να ανοίξετε τις θύρες που χρησιμοποιεί στην κατάλληλη ζώνη. Αυτό γίνεται με τον προσδιορισμό της θύρας ή της θύρας και του σχετικού πρωτοκόλλου για τις θύρες που πρέπει να ανοίξετε.
Για παράδειγμα, εάν η εφαρμογή μας εκτελείται στη θύρα 5000 και χρησιμοποιεί TCP, θα μπορούσαμε να προσθέσουμε αυτό στο “δημόσιο” Ζώνη για αυτή τη συνεδρία χρησιμοποιώντας την παράμετρο-Add-Port =. Τα πρωτόκολλα μπορούν να είναι είτε TCP είτε UDP:
Παραγωγήεπιτυχία
Μπορούμε να επαληθεύσουμε ότι αυτό ήταν επιτυχές χρησιμοποιώντας τη λειτουργία-λίστας-λίστας:
Παραγωγή5000/TCP
Είναι επίσης δυνατό να καθορίσετε ένα διαδοχικό εύρος θυρών διαχωρίζοντας την αρχή και την λήξη της θύρας στην περιοχή με μια παύλα. Για παράδειγμα, εάν η εφαρμογή μας χρησιμοποιεί θύρες UDP 4990 έως 4999, θα μπορούσαμε να τα ανοίξουμε “δημόσιο” πληκτρολογώντας:
Μετά τη δοκιμή, πιθανότατα θα θέλαμε να τα προσθέσουμε στο μόνιμο τείχος προστασίας. Μπορείτε να το κάνετε αυτό πληκτρολογώντας:
ΠαραγωγήΕπιτυχία επιτυχίας 5000/TCP 4990-4999/UDP
Καθορισμός μιας υπηρεσίας
Οι θύρες ανοίγματος για τις ζώνες σας είναι εύκολο, αλλά μπορεί να είναι δύσκολο να παρακολουθείτε το τι είναι ο καθένας για. Εάν διαμαρτύρεστε ποτέ μια υπηρεσία στο διακομιστή σας, μπορεί να έχετε έναν σκληρό χρόνο να θυμηθείτε ποιες θύρες που έχουν ανοίξει απαιτούνται ακόμα. Για να αποφευχθεί αυτή η κατάσταση, είναι δυνατόν να ορίσετε μια υπηρεσία.
Οι υπηρεσίες είναι συλλογές θυρών με σχετικό όνομα και περιγραφή. Η χρήση υπηρεσιών είναι ευκολότερη στη διαχείριση από τις θύρες, αλλά απαιτεί λίγο εκ των προτέρων εργασίες. Ένας καλός τρόπος για να ξεκινήσετε είναι να αντιγράψετε ένα υπάρχον σενάριο (που βρίσκεται στο/usr/lib/firewalld/services) στον κατάλογο/etc/firewalld/services όπου το τείχος προστασίας αναζητά μη τυποποιημένους ορισμούς.
Για παράδειγμα, θα μπορούσαμε να αντιγράψουμε τον ορισμό της υπηρεσίας SSH για χρήση για μας “παράδειγμα” Ορισμός υπηρεσίας σαν αυτό. Το όνομα αρχείου μείον το .Το Suffix XML θα υπαγορεύει το όνομα της υπηρεσίας στη λίστα υπηρεσιών τείχους προστασίας:
Τώρα, μπορείτε να προσαρμόσετε τον ορισμό που βρέθηκε στο αρχείο που αντιγράψατε:
Για να ξεκινήσετε, το αρχείο θα περιέχει τον ορισμό SSH που αντιγράψατε:
/etc/firewalld/υπηρεσίες/παράδειγμα.XML
υπηρεσία> μικρός>Σσεμικρός> περιγραφή>Το Secure Shell (SSH) είναι ένα πρωτόκολλο για την σύνδεση και την εκτέλεση εντολών σε απομακρυσμένες μηχανές. Παρέχει ασφαλείς κρυπτογραφημένες επικοινωνίες. Εάν σχεδιάζετε να έχετε πρόσβαση στο μηχάνημά σας από απόσταση μέσω SSH σε διεπαφή τείχους προστασίας, ενεργοποιήστε αυτήν την επιλογή. Χρειάζεστε το πακέτο OpenSsh-Server που έχει εγκατασταθεί για να είναι χρήσιμη αυτή η επιλογή.περιγραφή> Λιμάνι πρωτόκολλο=«TCP« Λιμάνι=«22«/> υπηρεσία>
Η πλειοψηφία αυτού του ορισμού είναι πραγματικά μεταδεδομένα. Θα θελήσετε να αλλάξετε το σύντομο όνομα για την υπηρεσία μέσα στις ετικέτες. Αυτό είναι ένα όνομα αναγνώσιμο από τον άνθρωπο για την υπηρεσία σας. Θα πρέπει επίσης να προσθέσετε μια περιγραφή, ώστε να έχετε περισσότερες πληροφορίες αν χρειαστεί ποτέ να ελέγξετε την υπηρεσία. Η μόνη διαμόρφωση που πρέπει να κάνετε αυτό επηρεάζει πραγματικά τη λειτουργικότητα της υπηρεσίας θα είναι πιθανώς ο ορισμός θύρας όπου προσδιορίζετε τον αριθμό θύρας και το πρωτόκολλο που θέλετε να ανοίξετε. Αυτό μπορεί να καθοριστεί πολλές φορές.
Για τα δικά μας “παράδειγμα” Υπηρεσία, Φανταστείτε ότι πρέπει να ανοίξουμε τη θύρα 7777 για το TCP και το 8888 για το UDP. Εισάγοντας τη λειτουργία εισαγωγής πατώντας το I, μπορούμε να τροποποιήσουμε τον υπάρχοντα ορισμό με κάτι τέτοιο:
/etc/firewalld/υπηρεσίες/παράδειγμα.XML
υπηρεσία> μικρός>Παράδειγμα υπηρεσίαςμικρός> περιγραφή>Αυτό είναι απλώς ένα παράδειγμα υπηρεσίας. Πιθανότατα δεν πρέπει να χρησιμοποιείται σε ένα πραγματικό σύστημα.περιγραφή> Λιμάνι πρωτόκολλο=«TCP« Λιμάνι=«7777«/> Λιμάνι πρωτόκολλο=«UDP« Λιμάνι=«8888«/> υπηρεσία>
Πατήστε ESC και, στη συνέχεια, εισάγετε: x για αποθήκευση και κλείσιμο του αρχείου.
Φορτώστε ξανά το τείχος προστασίας σας για να αποκτήσετε πρόσβαση στη νέα σας υπηρεσία:
Μπορείτε να δείτε ότι είναι τώρα μεταξύ της λίστας των διαθέσιμων υπηρεσιών:
ΠαραγωγήRH-Satellite-6 Amanda-Client Amanda-K5-Client Bacula-Client Bitcoin Bitcoin-RPC Bitcoin-Testnet Bitcoin-Testnet-Rpc Ceph-Mon Cfengine Condor-Collector CTDB DHCP DHCPV6 DHCPV6-Client DNES-TESTNET-RPC DROPHONSYNCELINCELING CFENT-CLOLLECTER CTDB DHCP DHCPV6 DHCPV6-Client DNES-TESTNET-RPC CEPH-MON CFENGIN παράδειγμα freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master high-availability http https imap imaps ipp ipp-client ipsec iscsi-target kadmin kerberos kibana klogin kpasswd kshell ldap ldaps libvirt libvirt-tls managesieve mdns mosh mountd ms-wbt mssql mysql nfs nrpe ntp openvpn ovirt-imageio ovirt-storageconsole ovirt-vmconsole pmcd pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp pulseaudio puppetmaster quassel radius rpc-bind rsh rsyncd samba samba-client sane sip sips smtp smtp-submission smtps snmp snmptrap spideroak-lansync squid ssh synergy syslog syslog-tls telnet tftp tftp-client tinc tor-socks transmission-client vdsm vnc-server wbem-https xmpp-bosh xmpp-client xmpp-local xmpp-server
Τώρα μπορείτε να χρησιμοποιήσετε αυτήν την υπηρεσία στις ζώνες σας όπως κανονικά θα.
Δημιουργώντας τις δικές σας ζώνες
Ενώ οι προκαθορισμένες ζώνες θα είναι πιθανώς περισσότερο από αρκετές για τους περισσότερους χρήστες, μπορεί να είναι χρήσιμο να ορίσετε τις δικές σας ζώνες που είναι πιο περιγραφικές της λειτουργίας τους.
Για παράδειγμα, ίσως θελήσετε να δημιουργήσετε μια ζώνη για τον διακομιστή ιστού σας, που ονομάζεται “δημόσια”. Ωστόσο, ίσως θελήσετε να ρυθμίσετε μια άλλη ζώνη για την υπηρεσία DNS που παρέχετε στο ιδιωτικό σας δίκτυο. Μπορεί να θέλετε μια ζώνη που ονομάζεται “ιδιωτικά” γι’αυτό.
Κατά την προσθήκη μιας ζώνης, πρέπει να την προσθέσετε στη μόνιμη διαμόρφωση τείχους προστασίας. Στη συνέχεια, μπορείτε να επαναφορτώσετε για να φέρετε τη διαμόρφωση στην τρέχουσα συνεδρία σας. Για παράδειγμα, θα μπορούσαμε να δημιουργήσουμε τις δύο ζώνες που συζητήσαμε παραπάνω πληκτρολογώντας:
Μπορείτε να επαληθεύσετε ότι αυτές υπάρχουν στη μόνιμη διαμόρφωσή σας πληκτρολογώντας:
Παραγωγήμπλοκ DMZ drop εξωτερικό σπίτι εσωτερικά ιδιωτικά δημόσιο δημόσια αξιόπιστη δουλειά
Όπως αναφέρθηκε προηγουμένως, αυτά κέρδισαν’να είναι διαθέσιμο στην τρέχουσα περίπτωση του τείχους προστασίας ακόμα:
Παραγωγήμπλοκ DMZ drop εξωτερικό σπίτι εσωτερική δημόσια αξιόπιστη εργασία
Επαναλάβετε το τείχος προστασίας για να φέρετε αυτές τις νέες ζώνες στην ενεργό διαμόρφωση:
Παραγωγήμπλοκ DMZ drop εξωτερικό σπίτι εσωτερικά ιδιωτικά δημόσιο δημόσια αξιόπιστη δουλειά
Τώρα, μπορείτε να ξεκινήσετε την ανάθεση των κατάλληλων υπηρεσιών και θυρών στις ζώνες σας. Το’συνήθως μια καλή ιδέα να προσαρμόσετε την ενεργό εμφάνιση και στη συνέχεια να μεταφέρετε αυτές τις αλλαγές στη μόνιμη διαμόρφωση μετά τη δοκιμή. Για παράδειγμα, για το “δημόσια” Ζώνη, ίσως θελήσετε να προσθέσετε τις υπηρεσίες SSH, HTTP και HTTPS:
ΠαραγωγήPublicWeb Target: Προεπιλεγμένη ICMP-Block-Inversion: Χωρίς διεπαφές: Πηγές: Υπηρεσίες: SSH HTTP HTTPS Θύρες: Πρωτόκολλα: Masquerade: Δεν υπάρχουν μελλοντικά θύματα: Πηγή-θύρες: ICMP-Blocks: Πλούσιοι κανόνες:
Ομοίως, μπορούμε να προσθέσουμε την υπηρεσία DNS στο δικό μας “ιδιωτικά” ζώνη:
ΠαραγωγήΔιασυνδέσεις PrivateNS: Πηγές: Υπηρεσίες: θύρες DNS: Masquerade: No Forward-Ports: ICMP-Blocks: Πλούσιοι κανόνες:
Θα μπορούσαμε στη συνέχεια να αλλάξουμε τις διεπαφές μας σε αυτές τις νέες ζώνες για να τις δοκιμάσουμε:
Σε αυτό το σημείο, έχετε την ευκαιρία να δοκιμάσετε τη διαμόρφωσή σας. Εάν αυτές οι τιμές λειτουργούν για εσάς, θα θελήσετε να προσθέσετε τους ίδιους κανόνες στη μόνιμη διαμόρφωση. Μπορείτε να το κάνετε αυτό με την εκ νέου εφαρμογή των κανόνων με την-μόνιμη σημαία:
Αφού εφαρμόσετε μόνιμα αυτούς τους κανόνες σας, μπορείτε να επανεκκινήσετε το δίκτυό σας και να φορτώσετε ξανά την υπηρεσία τείχους προστασίας:
Επικυρώστε ότι οι σωστές ζώνες είχαν εκχωρηθεί:
ΠαραγωγήΔιασυνδέσεις PrivateNS: ETH1 PublicWeb Interfaces: ETH0
Και επικυρώστε ότι οι κατάλληλες υπηρεσίες είναι διαθέσιμες και για τις δύο ζώνες:
Παραγωγήhttp https ssh
ΠαραγωγήDNS
Έχετε ρυθμίσει με επιτυχία τις δικές σας ζώνες! Εάν θέλετε να κάνετε μία από αυτές τις ζώνες την προεπιλογή για άλλες διεπαφές, θυμηθείτε να διαμορφώσετε αυτή τη συμπεριφορά με την παράμετρο-καθοδήγηση-ζώνη = παράμετρος:
sudo firewall-cmd-set-default-zone = publicWeb
συμπέρασμα
Θα πρέπει τώρα να έχετε μια αρκετά καλή κατανόηση του τρόπου διαχείρισης της υπηρεσίας τείχους προστασίας στο σύστημα Centos για καθημερινή χρήση.
Η υπηρεσία Firewalld σας επιτρέπει να διαμορφώσετε διατηρήσιμους κανόνες και σύνολα κανόνων που λαμβάνουν υπόψη το περιβάλλον του δικτύου σας. Σας επιτρέπει να μεταβαίνετε άψογα μεταξύ διαφορετικών πολιτικών τείχους προστασίας μέσω της χρήσης των ζωνών και δίνει στους διαχειριστές τη δυνατότητα να αφαιρεθούν η διαχείριση των λιμένων σε πιο φιλικούς ορισμούς υπηρεσιών. Η απόκτηση εργασιακής γνώσης αυτού του συστήματος θα σας επιτρέψει να επωφεληθείτε από την ευελιξία και την εξουσία που παρέχει αυτό το εργαλείο.
Ασφαλίστε εύκολα την υποδομή σας και καθορίστε ποιες υπηρεσίες είναι ορατές στους διακομιστές σας χρησιμοποιώντας τείχη προστασίας DigitalOcean Cloud. Τα τείχη προστασίας των σύννεφων είναι δωρεάν και ιδανικά για ανάπτυξη και ανάπτυξη παραγωγής.
Πώς να ρυθμίσετε ένα τείχος προστασίας χρησιμοποιώντας το Firewalld στο Centos 8
Το Firewalld είναι το λογισμικό διαχείρισης τείχους προστασίας που διατίθεται για πολλές διανομές Linux, το οποίο λειτουργεί ως frontend για το Linux’S in-kernel nftables ή συστήματα φιλτραρίσματος πακέτων iptables.
Σε αυτόν τον οδηγό, θα σας δείξουμε πώς να ρυθμίσετε ένα τείχος προστασίας από το διακομιστή Centos 8 και να καλύψετε τα βασικά στοιχεία της διαχείρισης του τείχους προστασίας με το διοικητικό εργαλείο Firewall-CMD.
Προϋποθέσεις
Για να ολοκληρώσετε αυτό το σεμινάριο, θα χρειαστείτε έναν διακομιστή που τρέχει Centos 8. Θα υποθέσουμε ότι έχετε συνδεθεί σε αυτόν τον διακομιστή ως μη-ρίζα, χρήστης Sudo -Enabled. Για να το ρυθμίσετε, ανατρέξτε στην αρχική ρύθμιση του διακομιστή για τον οδηγό CentOS 8.
Βασικές έννοιες στο Firewalld
Πριν αρχίσουμε να μιλάμε για το πώς να χρησιμοποιήσουμε πραγματικά το βοηθητικό πρόγραμμα τείχους προστασίας-CMD για να διαχειριστούμε τη διαμόρφωση του τείχους προστασίας, θα πρέπει να εξοικειωθούμε με μερικές έννοιες που εισάγει το εργαλείο.
Ζώνες
Ο δαίμονας του τείχους προστασίας διαχειρίζεται ομάδες κανόνων που χρησιμοποιούν οντότητες που ονομάζονται ζώνες. Οι ζώνες είναι σύνολα κανόνων που υπαγορεύουν ποια κυκλοφορία πρέπει να επιτρέπεται ανάλογα με το επίπεδο εμπιστοσύνης που έχετε στο δίκτυο. Οι διεπαφές δικτύου εκχωρούνται σε μια ζώνη για να υπαγορεύσουν τη συμπεριφορά που πρέπει να επιτρέψει το τείχος προστασίας.
Για υπολογιστές που μπορεί να κινούνται συχνά μεταξύ των δικτύων (όπως οι φορητοί υπολογιστές), αυτό το είδος ευελιξίας παρέχει μια καλή μέθοδο αλλαγής των κανόνων σας ανάλογα με το περιβάλλον σας. Μπορεί να έχετε αυστηρούς κανόνες που απαγορεύουν τη μεγαλύτερη κίνηση όταν λειτουργούν σε δημόσιο δίκτυο WiFi, επιτρέποντας παράλληλα πιο χαλαροί περιορισμοί όταν συνδέονται με το οικιακό σας δίκτυο. Για έναν διακομιστή, αυτές οι ζώνες συχνά δεν είναι τόσο σημαντικές επειδή το περιβάλλον δικτύου σπάνια, αν ποτέ, αλλάζει.
Ανεξάρτητα από το πόσο δυναμικό μπορεί να είναι το περιβάλλον δικτύου σας, είναι ακόμα χρήσιμο να είστε εξοικειωμένοι με τη γενική ιδέα πίσω από κάθε μια από τις προκαθορισμένες ζώνες για το Firewalld . Οι προκαθορισμένες ζώνες εντός του Firewalld είναι, με τάξη λιγότερο αξιόπιστος προς την πιο αξιόπιστος:
- πτώση: Το χαμηλότερο επίπεδο εμπιστοσύνης. Όλες οι εισερχόμενες συνδέσεις πέφτουν χωρίς απάντηση και είναι δυνατές μόνο οι εξερχόμενες συνδέσεις.
- ΟΙΚΟΔΟΜΙΚΟ ΤΕΤΡΑΓΩΝΟ: Παρόμοια με τα παραπάνω, αλλά αντί να απομακρύνουν τις συνδέσεις, οι εισερχόμενες αιτήσεις απορρίπτονται με ένα μήνυμα ICMP-Host-Prohibited ή ICMP6-ADM-Prohibed Message.
- δημόσιο: Αντιπροσωπεύει δημόσια, μη αξιόπιστα δίκτυα. Εσύ’t Εμπιστεύεστε άλλους υπολογιστές, αλλά μπορεί να επιτρέψει επιλεγμένες εισερχόμενες συνδέσεις κατά περίπτωση.
- εξωτερικός: Εξωτερικά δίκτυα σε περίπτωση που χρησιμοποιείτε το τείχος προστασίας ως πύλη σας. Είναι ρυθμισμένο για μεταμφίεση NAT έτσι ώστε το εσωτερικό σας δίκτυο να παραμένει ιδιωτικό αλλά προσβάσιμο.
- εσωτερικός: Η άλλη πλευρά της εξωτερικής ζώνης, που χρησιμοποιείται για το εσωτερικό τμήμα μιας πύλης. Οι υπολογιστές είναι αρκετά αξιόπιστοι και διατίθενται ορισμένες πρόσθετες υπηρεσίες.
- DMZ: Χρησιμοποιείται για υπολογιστές που βρίσκονται σε DMZ (απομονωμένοι υπολογιστές που δεν θα έχουν πρόσβαση στο υπόλοιπο του δικτύου σας). Επιτρέπονται μόνο ορισμένες εισερχόμενες συνδέσεις.
- δουλειά: Χρησιμοποιείται για μηχανές εργασίας. Εμπιστευθείτε τους περισσότερους υπολογιστές στο δίκτυο. Μπορούν να επιτρέπονται μερικές ακόμη υπηρεσίες.
- Σπίτι: Περιβάλλον στο σπίτι. Γενικά υποδηλώνει ότι εμπιστεύεστε τους περισσότερους από τους άλλους υπολογιστές και ότι μερικές ακόμη υπηρεσίες θα γίνουν αποδεκτές.
- έμπιστος: Εμπιστευθείτε όλα τα μηχανήματα στο δίκτυο. Το πιο ανοιχτό από τις διαθέσιμες επιλογές και θα πρέπει να χρησιμοποιείται με φειδώ.
Για να χρησιμοποιήσουμε το τείχος προστασίας, μπορούμε να δημιουργήσουμε κανόνες και να αλλάξουμε τις ιδιότητες των ζωνών μας και στη συνέχεια να αναθέσουμε τις διεπαφές δικτύου μας σε οποιεσδήποτε ζώνες είναι οι πλέον κατάλληλες.
Μονιμότητα του κανόνα
Στο Firewalld, μπορούν να εφαρμοστούν κανόνες στο τρέχον χρόνος εκτέλεσης στοιχείο κανόνων ή να γίνει μόνιμος. Όταν προστίθεται ή τροποποιείται ένας κανόνας, Από προεπιλογή, τροποποιείται μόνο το τρέχον τείχος προστασίας που τρέχει. Μετά την επόμενη επανεκκίνηση – ή την επαναφόρτωση της υπηρεσίας Firewalld – μόνο οι μόνιμοι κανόνες θα παραμείνουν.
Οι περισσότερες λειτουργίες Firewall-CMD μπορούν να λάβουν μια σημαία για να υποδείξουν ότι οι αλλαγές θα πρέπει να εφαρμόζονται στη διαμόρφωση Permenent. Επιπλέον, το τρέχον τείχος προστασίας μπορεί να αποθηκευτεί στη μόνιμη διαμόρφωση με την εντολή Firewall-CMD-Runtime-to-Permanent.
Αυτός ο διαχωρισμός του χρόνου εκτέλεσης έναντι μόνιμης διαμόρφωσης σημαίνει ότι μπορείτε να δοκιμάσετε με ασφάλεια τους κανόνες στο ενεργό τείχος προστασίας σας και στη συνέχεια να επαναφορτώσετε για να ξεκινήσετε εάν υπάρχουν προβλήματα.
Εγκατάσταση και ενεργοποίηση του firewalld
Το Firewalld εγκαθίσταται από προεπιλογή σε ορισμένες κατανομές Linux, συμπεριλαμβανομένων πολλών εικόνων του Centos 8. Ωστόσο, ίσως χρειαστεί να εγκαταστήσετε τον εαυτό σας:
Αφού εγκαταστήσετε το firewalld, μπορείτε να ενεργοποιήσετε την υπηρεσία και να επανεκκινήσετε τον διακομιστή σας. Λάβετε υπόψη ότι η ενεργοποίηση του firewalld θα προκαλέσει την εκκίνηση της υπηρεσίας κατά την εκκίνηση. Είναι βέλτιστη πρακτική να δημιουργήσετε τους κανόνες του τείχους προστασίας και να εκμεταλλευτείτε την ευκαιρία για να τις δοκιμάσετε πριν διαμορφώσετε αυτήν τη συμπεριφορά, προκειμένου να αποφευχθούν πιθανά ζητήματα.
Όταν ο διακομιστής επανεκκινήσει, το τείχος προστασίας σας θα πρέπει να αναφερθεί, οι διεπαφές δικτύου σας θα πρέπει να τοποθετηθούν στις ζώνες που ρυθμίσατε (ή να επιστρέψετε στη διαμορφωμένη προεπιλεγμένη ζώνη) και οι κανόνες που σχετίζονται με τη ζώνη (ες) θα εφαρμοστούν στις σχετικές διεπαφές.
Μπορούμε να επαληθεύσουμε ότι η υπηρεσία εκτελείται και προσπελάσιμη πληκτρολογώντας:
Παραγωγήτρέξιμο
Αυτό υποδεικνύει ότι το τείχος προστασίας μας λειτουργεί με την προεπιλεγμένη διαμόρφωση.
Να εξοικειωθείτε με τους τρέχοντες κανόνες τείχους προστασίας
Πριν αρχίσουμε να κάνουμε τροποποιήσεις, θα πρέπει να εξοικειωθούμε με το προεπιλεγμένο περιβάλλον και τους κανόνες που παρέχονται από το Firewalld.
Εξερευνώντας τις προεπιλογές
Μπορούμε να δούμε ποια ζώνη επιλέγεται επί του παρόντος ως προεπιλογή πληκτρολογώντας:
Παραγωγήδημόσιο
Δεδομένου ότι έχουμε’Δεδομένου ότι η Firewalld οποιεσδήποτε εντολές αποκλίνουν από την προεπιλεγμένη ζώνη και καμία από τις διεπαφές μας δεν έχει ρυθμιστεί ώστε να δεσμεύεται σε άλλη ζώνη, αυτή η ζώνη θα είναι επίσης η μόνη ενεργός Ζώνη (η ζώνη που ελέγχει την κυκλοφορία για τις διεπαφές μας). Μπορούμε να το επαληθεύσουμε πληκτρολογώντας:
Παραγωγήδημόσιες διεπαφές: eth0 eth1
Εδώ, μπορούμε να δούμε ότι ο παραδείγματος διακομιστής μας έχει δύο διεπαφές δικτύου που ελέγχονται από το τείχος προστασίας (ETH0 και ETH1). Και οι δύο διαχειρίζονται επί του παρόντος σύμφωνα με τους κανόνες που ορίζονται για το δημόσιο ζώνη.
Πώς γνωρίζουμε ποιοι κανόνες σχετίζονται με το δημόσιο ζώνη όμως? Μπορούμε να εκτυπώσουμε την προεπιλεγμένη ζώνη’διαμόρφωση S πληκτρολογώντας:
ΠαραγωγήΔημόσιος (ενεργός) Στόχος: Προεπιλεγμένη ICMP-Block-Inversion: Χωρίς διεπαφές: ETH0 ETH1 Πηγές: Υπηρεσίες: θέση αεροπόρου dhcpv6-client σσε Θύρες: Πρωτόκολλα: Masquerade: No Forward-Ports: Πηγή-Θάλασσες: ICMP-Blocks: Πλούσιοι κανόνες:
Μπορούμε να πούμε από την έξοδο ότι αυτή η ζώνη είναι τόσο η προεπιλεγμένη όσο και η ενεργή, και ότι οι διεπαφές ETH0 και ETH1 σχετίζονται με αυτή τη ζώνη (γνωρίζαμε ήδη όλα αυτά από τις προηγούμενες έρευνές μας). Ωστόσο, μπορούμε επίσης να δούμε ότι αυτή η ζώνη επιτρέπει την κυκλοφορία για έναν πελάτη DHCP (για την εκχώρηση διεύθυνσης IP), το SSH (για απομακρυσμένη διαχείριση) και το cockpit (κονσόλα που βασίζεται στο διαδίκτυο).
Εξερευνώντας εναλλακτικές ζώνες
Τώρα έχουμε μια καλή ιδέα για τη διαμόρφωση για την προεπιλεγμένη και ενεργή ζώνη. Μπορούμε να μάθουμε πληροφορίες για άλλες ζώνες.
Για να πάρετε μια λίστα με τις διαθέσιμες ζώνες, πληκτρολογήστε:
Παραγωγήμπλοκ DMZ drop εξωτερικό σπίτι εσωτερική δημόσια αξιόπιστη εργασία
Μπορούμε να δούμε τη συγκεκριμένη διαμόρφωση που σχετίζεται με μια ζώνη, συμπεριλαμβάνοντας την παράμετρο -zone = στην εντολή μας-list-all:
ΠαραγωγήΣτόχος Αρχική Στόχος: Προεπιλεγμένη ICMP-Block-Inversion: Δεν υπάρχουν διεπαφές: Πηγές: Υπηρεσίες: Cockpit DHCPV6-Client MDNS Samba-Client SSH Ports: Πρωτόκολλα: Masquerade: No Front-Ports: Πηγή-Πηγή: ICMP-Blocks: Rich Conaffer:
Μπορείτε να εξάγετε όλους τους ορισμούς της ζώνης χρησιμοποιώντας την επιλογή-list-all-zones. Πιθανότατα θα θελήσετε να διοχετεύσετε την έξοδο σε ένα τηλεειδοποιητή για ευκολότερη προβολή:
Στη συνέχεια θα μάθουμε για τις ζώνες Assiging σε διεπαφές δικτύου.
Επιλέγοντας ζώνες για τις διεπαφές σας
Εκτός αν έχετε ρυθμίσει τις διεπαφές δικτύου σας διαφορετικά, κάθε διεπαφή θα τοποθετηθεί στην προεπιλεγμένη ζώνη όταν ξεκινήσει το τείχος προστασίας.
Αλλαγή της ζώνης μιας διεπαφής
Μπορείτε να μετακινήσετε μια διεπαφή μεταξύ των ζωνών κατά τη διάρκεια μιας συνεδρίας χρησιμοποιώντας την παράμετρο-ζώνη =. Όπως συμβαίνει με όλες τις εντολές που τροποποιούν το τείχος προστασίας, θα χρειαστεί να χρησιμοποιήσετε το Sudo .
Για παράδειγμα, μπορούμε να μετακινήσουμε τη διεπαφή μας ETH0 στο Σπίτι ζώνη πληκτρολογώντας αυτό:
Παραγωγήεπιτυχία
Σημείωση: Κάθε φορά που μετακινείτε μια διεπαφή σε μια νέα ζώνη, να γνωρίζετε ότι πιθανότατα τροποποιείτε ποιες υπηρεσίες θα λειτουργήσουν. Για παράδειγμα, εδώ μετακομίζουμε στο Σπίτι Ζώνη, η οποία διαθέτει SSH διαθέσιμη. Αυτό σημαίνει ότι η σύνδεσή μας πρέπει’σταγόνα. Ορισμένες άλλες ζώνες δεν έχουν ενεργοποιηθεί από το SSH από προεπιλογή και η μετάβαση σε μία από αυτές τις ζώνες θα μπορούσε να προκαλέσει πτώση της σύνδεσής σας, εμποδίζοντας να συνδεθείτε ξανά στο διακομιστή σας.
Μπορούμε να επαληθεύσουμε ότι αυτό ήταν επιτυχές ζητώντας ξανά τις ενεργές ζώνες:
ΠαραγωγήΔιεπαφές σπιτιού: δημόσιες διεπαφές ETH0: ETH1
Ρύθμιση της προεπιλεγμένης ζώνης
Εάν όλες οι διεπαφές σας μπορούν να αντιμετωπιστούν καλά από μία ζώνη, αυτό’Πιθανώς ευκολότερο να ορίσετε απλώς την καλύτερη ζώνη ως προεπιλογή και στη συνέχεια να το χρησιμοποιήσετε για τη διαμόρφωσή σας.
Μπορείτε να αλλάξετε την προεπιλεγμένη ζώνη με την παράμετρο-set-default-zone =. Αυτό θα αλλάξει αμέσως οποιαδήποτε διεπαφή χρησιμοποιώντας την προεπιλεγμένη ζώνη:
Παραγωγήεπιτυχία
Ρύθμιση κανόνων για τις εφαρμογές σας
Αφήνω’S Εκτελείται μέσω του βασικού τρόπου καθορισμού εξαιρέσεων τείχους προστασίας για τις υπηρεσίες που επιθυμείτε να διαθέσετε.
Προσθήκη υπηρεσίας στις ζώνες σας
Η πιο straighforward μέθοδος είναι να προσθέσετε τις υπηρεσίες ή τις θύρες που χρειάζεστε στις ζώνες που χρησιμοποιείτε. Μπορείτε να πάρετε μια λίστα με τους διαθέσιμους ορισμούς υπηρεσιών με την επιλογή-Get-Services:
ΠαραγωγήRH-Satellite-6 Amanda-Client Amanda-K5-Client AMQP AMQPS APCUPSD Audit Bacula Bacula-Client BGP Bitcoin Bitcoin-RPC Bitcoin-Testnet Bitcoin-Testnet-RPC Bittorrent-LSD CEPH-MON CFENGIN NS DNS-over-TLS Docker-Registry Docker-Swarm Dropbox-Lansync Elasticsearch κ.λπ. κ.λπ. CSI-TARGET ISNS JENKINS KADMIN KDECONNECT KERBEROS KIBANA KLOGIN KPASSWD KPROP KSHELL LDAP LDAPS LIBVIRT LIBVIRT-TLS LANTINGWORK LLMNR MANAGESIEVE MATRIX MDNS MEMCACHELNA MONCODB MOSHD MOSD MQTT MQTTTTT-TLS MS-WBTS NFS3 NMEA-0183 NRPE NTP NUT OpenVPN OVIRT-IMAGEIO OVIRT-Storagonsole Ovirt-vmconsole plex pmcd pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy prometheus proxy-dhcp ptp pulseaudio puppetmaster quassel radius rdp redis redis-sentinel rpc-bind rsh rsyncd rtsp salt-master samba samba-client samba-dc sane sip sips slp smtp smtp-submission smtps snmp snmptrap spideroak-lansync spotify-sync squid ssdp ssh steam-streaming svdrp svn syncthing syncthing-gui synergy syslog syslog-tls telnet tentacle tftp tftp-client tile38 tinc tor-socks transmission-client upnp-client vdsm vnc-server wbem-http wbem-https wsman wsmans xdmcp xmpp-bosh xmpp-client xmpp-local xmpp-server zabbix-agent zabbix-server
Σημείωση: Μπορείτε να λάβετε περισσότερες λεπτομέρειες σχετικά με κάθε μία από αυτές τις υπηρεσίες εξετάζοντας τα συσχετισμένα τους .Αρχείο XML στον κατάλογο/USR/LIB/Firewalld/Services. Για παράδειγμα, η υπηρεσία SSH ορίζεται έτσι:
/usr/lib/firewalld/services/ssh.XML
υπηρεσία> μικρός>Σσεμικρός> περιγραφή>Το Secure Shell (SSH) είναι ένα πρωτόκολλο για την σύνδεση και την εκτέλεση εντολών σε απομακρυσμένες μηχανές. Παρέχει ασφαλείς κρυπτογραφημένες επικοινωνίες. Εάν σχεδιάζετε να έχετε πρόσβαση στο μηχάνημά σας από απόσταση μέσω SSH σε διεπαφή τείχους προστασίας, ενεργοποιήστε αυτήν την επιλογή. Χρειάζεστε το πακέτο OpenSsh-Server που έχει εγκατασταθεί για να είναι χρήσιμη αυτή η επιλογή.περιγραφή> Λιμάνι πρωτόκολλο=«TCP« Λιμάνι=«22«/> υπηρεσία>
Μπορείτε να ενεργοποιήσετε μια υπηρεσία για μια ζώνη χρησιμοποιώντας την παράμετρο-Add-Service =. Η λειτουργία θα στοχεύει την προεπιλεγμένη ζώνη ή οποιαδήποτε ζώνη καθορίζεται από την παράμετρο -ζώνη =. Από προεπιλογή, αυτό θα προσαρμόσει μόνο την τρέχουσα περίοδο τείχους προστασίας. Μπορείτε να προσαρμόσετε τη διαμόρφωση μόνιμης τείχους προστασίας, συμπεριλαμβάνοντας τη σημαία -.
Για παράδειγμα, εάν εκτελούμε έναν διακομιστή ιστού που εξυπηρετεί τη συμβατική επισκεψιμότητα HTTP, μπορούμε προσωρινά να επιτρέψουμε αυτήν την κυκλοφορία για διεπαφές στο δικό μας δημόσιο ζώνη πληκτρολογώντας:
Μπορείτε να αφήσετε το -ζώνη = σημαία εάν θέλετε να τροποποιήσετε την προεπιλεγμένη ζώνη. Μπορούμε να επαληθεύσουμε ότι η λειτουργία ήταν επιτυχής χρησιμοποιώντας τις λειτουργίες-λίστα ή-λίστας:
ΠαραγωγήDHCPV6-Client HTTP σσε
Μόλις δοκιμάσετε ότι όλα λειτουργούν όπως θα έπρεπε, πιθανότατα θα θελήσετε να τροποποιήσετε τους μόνιμους κανόνες τείχους προστασίας, έτσι ώστε η υπηρεσία σας να είναι ακόμα διαθέσιμη μετά από επανεκκίνηση. Μπορούμε να κάνουμε την προηγούμενη αλλαγή μας μόνιμη, επαναλαμβάνοντας και προσθέτοντας τη σημαία –
Παραγωγήεπιτυχία
Εναλλακτικά, θα μπορούσατε να χρησιμοποιήσετε τη σημαία-Runtime-to-Permanent για να αποθηκεύσετε την τρέχουσα διαμόρφωση τείχους προστασίας στο Perminant Config:
Να είστε προσεκτικοί με αυτό, ως όλα Οι αλλαγές που έγιναν στο τρέχον τείχος προστασίας θα διαπραχθούν.
Όποια μέθοδος επιλέξατε, μπορείτε να επαληθεύσετε ότι ήταν επιτυχής με την προσθήκη της σημασίας-από τη λειτουργία-Λίστα Υπηρεσιών-. Πρέπει να χρησιμοποιήσετε το Sudo για οποιεσδήποτε -μόνιμες λειτουργίες:
ΠαραγωγήDHCPV6-Client HTTP σσε
Τα δικα σου δημόσιο Η ζώνη θα επιτρέψει τώρα την κυκλοφορία ιστού HTTP στη θύρα 80. Εάν ο διακομιστής ιστού σας έχει ρυθμιστεί να χρησιμοποιεί SSL/TLS, εσείς’Θα ήθελα επίσης να προσθέσετε την υπηρεσία HTTPS. Μπορούμε να το προσθέσουμε στην τρέχουσα συνεδρία και το μόνιμο σύνολο κανόνων πληκτρολογώντας:
Τι γίνεται αν δεν υπάρχει διαθέσιμη κατάλληλη υπηρεσία?
Οι υπηρεσίες που περιλαμβάνονται στην εγκατάσταση Firewalld αντιπροσωπεύουν πολλές από τις πιο κοινές εφαρμογές που μπορεί να επιθυμείτε να επιτρέψετε την πρόσβαση. Ωστόσο, πιθανότατα θα υπάρχουν σενάρια όπου αυτές οι υπηρεσίες δεν ταιριάζουν στις απαιτήσεις σας.
Σε αυτήν την περίπτωση, έχετε δύο επιλογές.
Άνοιγμα θύρας για τις ζώνες σας
Ο ευκολότερος τρόπος για να προσθέσετε υποστήριξη για τη συγκεκριμένη εφαρμογή σας είναι να ανοίξετε τις θύρες που χρησιμοποιεί στην κατάλληλη ζώνη. Αυτό γίνεται με τον προσδιορισμό της θύρας ή του εύρους θύρας και του σχετικού πρωτοκόλλου (TCP ή UDP) για τις θύρες.
Για παράδειγμα, εάν η αίτησή μας εκτελείται στη θύρα 5000 και χρησιμοποιεί TCP, θα μπορούσαμε να προσθέσουμε προσωρινά αυτό στο δημόσιο Ζώνη χρησιμοποιώντας την παράμετρο-Add-Port =. Τα πρωτόκολλα μπορούν να οριστούν είτε ως TCP είτε ως UDP:
Παραγωγήεπιτυχία
Μπορούμε να επαληθεύσουμε ότι αυτό ήταν επιτυχές χρησιμοποιώντας τη λειτουργία-λίστας-λίστας:
Παραγωγή5000/TCP
Είναι επίσης δυνατό να καθορίσετε ένα διαδοχικό εύρος θυρών διαχωρίζοντας την αρχή και την λήξη της θύρας στην περιοχή με μια παύλα. Για παράδειγμα, εάν η εφαρμογή μας χρησιμοποιεί θύρες UDP 4990 έως 4999, θα μπορούσαμε να τα ανοίξουμε δημόσιο πληκτρολογώντας:
Μετά τη δοκιμή, πιθανότατα θα θέλαμε να τα προσθέσουμε στο μόνιμο τείχος προστασίας. Χρησιμοποιήστε το Sudo Firewall-CMD–Runtime-to-Permanent για να το κάνετε αυτό ή να επαναλάβετε τις εντολές με τη σημαία-
ΠαραγωγήΕπιτυχία επιτυχίας 5000/TCP 4990-4999/UDP
Καθορισμός μιας υπηρεσίας
Οι θύρες ανοίγματος για τις ζώνες σας είναι μια απλή λύση, αλλά μπορεί να είναι δύσκολο να παρακολουθείτε το τι είναι ο καθένας για. Εάν διαμαρτύρεστε ποτέ μια υπηρεσία στο διακομιστή σας, μπορεί να έχετε έναν σκληρό χρόνο να θυμηθείτε ποιες θύρες που έχουν ανοίξει απαιτούνται ακόμα. Για να αποφευχθεί αυτή η κατάσταση, είναι δυνατό να ορίσετε μια νέα υπηρεσία.
Οι υπηρεσίες είναι συλλογές θυρών με σχετικό όνομα και περιγραφή. Η χρήση υπηρεσιών είναι ευκολότερη στη διαχείριση από τις θύρες, αλλά απαιτεί λίγο προκαταρκτική εργασία. Ο ευκολότερος τρόπος για να ξεκινήσετε είναι να αντιγράψετε ένα υπάρχον σενάριο (που βρίσκεται στο/usr/lib/firewalld/υπηρεσίες) στον κατάλογο/etc/firewalld/services όπου το τείχος προστασίας αναζητά μη τυποποιημένους ορισμούς.
Για παράδειγμα, θα μπορούσαμε να αντιγράψουμε τον ορισμό της υπηρεσίας SSH για χρήση για μας παράδειγμα Ορισμός υπηρεσίας σαν αυτό. Το όνομα αρχείου μείον το .Το Suffix XML θα υπαγορεύει το όνομα της υπηρεσίας στη λίστα υπηρεσιών τείχους προστασίας:
Τώρα, μπορείτε να προσαρμόσετε τον ορισμό που βρέθηκε στο αρχείο που αντιγράψατε. Ανοίξτε πρώτα στον αγαπημένο σας επεξεργαστή κειμένου. Εμείς’ll Χρησιμοποιήστε το VI εδώ:
Για να ξεκινήσετε, το αρχείο θα περιέχει τον ορισμό SSH που αντιγράψατε:
/etc/firewalld/υπηρεσίες/παράδειγμα.XML
υπηρεσία> μικρός>Σσεμικρός> περιγραφή>Το Secure Shell (SSH) είναι ένα πρωτόκολλο για την σύνδεση και την εκτέλεση εντολών σε απομακρυσμένες μηχανές. Παρέχει ασφαλείς κρυπτογραφημένες επικοινωνίες. Εάν σχεδιάζετε να έχετε πρόσβαση στο μηχάνημά σας από απόσταση μέσω SSH σε διεπαφή τείχους προστασίας, ενεργοποιήστε αυτήν την επιλογή. Χρειάζεστε το πακέτο OpenSsh-Server που έχει εγκατασταθεί για να είναι χρήσιμη αυτή η επιλογή.περιγραφή> Λιμάνι πρωτόκολλο=«TCP« Λιμάνι=«22«/> υπηρεσία>
Η πλειοψηφία αυτού του ορισμού είναι πραγματικά μεταδεδομένα. Θα θελήσετε να αλλάξετε το σύντομο όνομα για την υπηρεσία μέσα στις ετικέτες. Αυτό είναι ένα όνομα αναγνώσιμο από τον άνθρωπο για την υπηρεσία σας. Θα πρέπει επίσης να προσθέσετε μια περιγραφή, ώστε να έχετε περισσότερες πληροφορίες αν χρειαστεί ποτέ να ελέγξετε την υπηρεσία. Η μόνη διαμόρφωση που πρέπει να κάνετε αυτό επηρεάζει πραγματικά τη λειτουργικότητα της υπηρεσίας θα είναι πιθανώς ο ορισμός θύρας όπου προσδιορίζετε τον αριθμό θύρας και το πρωτόκολλο που θέλετε να ανοίξετε. Μπορούν να καθοριστούν πολλαπλές ετικέτες.
Για τα δικά μας παράδειγμα Υπηρεσία, Φανταστείτε ότι πρέπει να ανοίξουμε τη θύρα 7777 για το TCP και το 8888 για το UDP. Μπορούμε να τροποποιήσουμε τον υπάρχοντα ορισμό με κάτι τέτοιο:
/etc/firewalld/υπηρεσίες/παράδειγμα.XML
υπηρεσία> μικρός>Παράδειγμα υπηρεσίαςμικρός> περιγραφή>Αυτό είναι απλώς ένα παράδειγμα υπηρεσίας. Πιθανότατα δεν πρέπει να χρησιμοποιείται σε ένα πραγματικό σύστημα.περιγραφή> Λιμάνι πρωτόκολλο=«TCP« Λιμάνι=«7777«/> Λιμάνι πρωτόκολλο=«UDP« Λιμάνι=«8888«/> υπηρεσία>
Αποθηκεύστε και κλείστε το αρχείο.
Φορτώστε ξανά το τείχος προστασίας σας για να αποκτήσετε πρόσβαση στη νέα σας υπηρεσία:
Μπορείτε να δείτε ότι είναι τώρα μεταξύ της λίστας των διαθέσιμων υπηρεσιών:
ΠαραγωγήRH-Satellite-6 Amanda-Client Amanda-K5-Client AMQP AMQPS APCUPSD Audit Bacula Bacula-Client BGP Bitcoin Bitcoin-RPC Bitcoin-Testnet Bitcoin-Testnet-RPC Bittorrent-LSD CEPH-MON CFENGIN NS DNS-over-TLS Docker-Registry Docker-Swarm Dropbox-Lansync Elasticsearch Etcd-Client κ.λπ παράδειγμα finger freeipa-4 freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master git grafana gre high-availability http https imap imaps ipp ipp-client ipsec irc ircs iscsi-target isns jenkins kadmin kdeconnect kerberos kibana klogin kpasswd kprop kshell ldap ldaps libvirt libvirt-tls lightning-network llmnr managesieve matrix mdns memcache minidlna mongodb mosh mountd mqtt mqtt-tls ms-wbt mssql murmur mysql nfs nfs3 nmea-0183 nrpe ntp nut openvpn ovirt-imageio ovirt-storageconsole ovirt-vmconsole plex pmcd pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy prometheus proxy-dhcp ptp pulseaudio puppetmaster quassel radius rdp redis redis-sentinel rpc-bind rsh rsyncd rtsp salt-master samba samba-client samba-dc sane sip sips slp smtp smtp-submission smtps snmp snmptrap spideroak-lansync spotify-sync squid ssdp ssh steam-streaming svdrp svn syncthing syncthing-gui synergy syslog syslog-tls telnet tentacle tftp tftp-client tile38 tinc tor-socks transmission-client upnp-client vdsm vnc-server wbem-http wbem-https wsman wsmans xdmcp xmpp-bosh xmpp-client xmpp-local xmpp-server zabbix-agent zabbix-server
Τώρα μπορείτε να χρησιμοποιήσετε αυτήν την υπηρεσία στις ζώνες σας όπως κανονικά θα.
Δημιουργώντας τις δικές σας ζώνες
Ενώ οι προκαθορισμένες ζώνες θα είναι πιθανώς περισσότερο από αρκετές για τους περισσότερους χρήστες, μπορεί να είναι χρήσιμο να ορίσετε τις δικές σας ζώνες που είναι πιο περιγραφικές της λειτουργίας τους.
Για παράδειγμα, ίσως θελήσετε να δημιουργήσετε μια ζώνη για τον διακομιστή ιστού σας, που ονομάζεται δημόσια. Ωστόσο, ίσως θελήσετε να ρυθμίσετε μια άλλη ζώνη για την υπηρεσία DNS που παρέχετε στο ιδιωτικό σας δίκτυο. Μπορεί να θέλετε μια ζώνη που ονομάζεται “ιδιωτικά” γι’αυτό.
Κατά την προσθήκη μιας ζώνης, εσείς πρέπει Προσθέστε το στη διαμόρφωση μόνιμης τείχους προστασίας. Στη συνέχεια, μπορείτε να επαναφορτώσετε για να φέρετε τη διαμόρφωση στην τρέχουσα συνεδρία σας. Για παράδειγμα, θα μπορούσαμε να δημιουργήσουμε τις δύο ζώνες που συζητήσαμε παραπάνω πληκτρολογώντας:
Μπορείτε να επαληθεύσετε ότι αυτές υπάρχουν στη μόνιμη διαμόρφωσή σας πληκτρολογώντας:
Παραγωγήμπλοκ DMZ drop εξωτερικό σπίτι εσωτερικά ιδιωτικά δημόσιο δημόσια αξιόπιστη δουλειά
Όπως αναφέρθηκε προηγουμένως, αυτά κέρδισαν’να είναι διαθέσιμο στο τείχος προστασίας του χρόνου εκτέλεσης ακόμα:
Παραγωγήμπλοκ DMZ drop εξωτερικό σπίτι εσωτερική δημόσια αξιόπιστη εργασία
Επαναλάβετε το τείχος προστασίας για να φέρετε αυτές τις νέες ζώνες στην ενεργό διαμόρφωση χρόνου εκτέλεσης:
Παραγωγήμπλοκ DMZ drop εξωτερικό σπίτι εσωτερικά ιδιωτικά δημόσιο δημόσια αξιόπιστη δουλειά
Τώρα, μπορείτε να ξεκινήσετε την ανάθεση των κατάλληλων υπηρεσιών και θυρών στις ζώνες σας. Το’συνήθως μια καλή ιδέα να ρυθμίσετε το τείχος λειτουργίας χρόνου εκτέλεσης και στη συνέχεια να αποθηκεύσετε αυτές τις αλλαγές στη μόνιμη διαμόρφωση μετά τη δοκιμή. Για παράδειγμα, για το δημόσια Ζώνη, ίσως θελήσετε να προσθέσετε τις υπηρεσίες SSH, HTTP και HTTPS:
ΠαραγωγήPublicWeb Target: Προεπιλεγμένη ICMP-Block-Inversion: Χωρίς διεπαφές: Πηγές: Υπηρεσίες: HTTP HTTPS SSH Θύρες: Πρωτόκολλα: Masquerade: No Forward-Port-Ports: Πηγή-Θάλασσες: ICMP-Blocks: Πλούσιοι κανόνες:
Ομοίως, μπορούμε να προσθέσουμε την υπηρεσία DNS στο δικό μας ιδιωτικά ζώνη:
ΠαραγωγήΣτόχος PrivateNS: Προεπιλεγμένη ICMP-Block-Inversion: Χωρίς διεπαφές: Πηγές: Υπηρεσίες: θύρες DNS: Πρωτόκολλα: Masquerade: No Forward-Ports: Πηγή-Θύρες: ICMP-Blocks: Πλούσιοι κανόνες:
Θα μπορούσαμε στη συνέχεια να αλλάξουμε τις διεπαφές μας σε αυτές τις νέες ζώνες για να τις δοκιμάσουμε:
Σε αυτό το σημείο, έχετε την ευκαιρία να δοκιμάσετε τη διαμόρφωσή σας. Εάν αυτές οι τιμές λειτουργούν για εσάς, θα θελήσετε να προσθέσετε αυτούς τους κανόνες στη μόνιμη διαμόρφωση. Εσείς θα μπορούσε Κάνετε αυτό με την εκτέλεση όλων των εντολών ξανά με την -Παρουσιάστηκε η σημαία, αλλά σε αυτή την περίπτωση εμείς’LL Χρησιμοποιήστε τη σημαία-Runtime-to-Permanent για να αποθηκεύσετε μόνιμα ολόκληρη τη διαμόρφωση του χρόνου εκτέλεσης:
Αφού εφαρμόζοντας μόνιμα αυτούς τους κανόνες, επαναφορτώστε το τείχος προστασίας για να δοκιμάσετε ότι οι αλλαγές παραμένουν:
Επικυρώστε ότι οι σωστές ζώνες είχαν εκχωρηθεί:
ΠαραγωγήΔιασυνδέσεις PrivateNS: ETH1 PublicWeb Interfaces: ETH0
Και επικυρώστε ότι οι κατάλληλες υπηρεσίες είναι διαθέσιμες και για τις δύο ζώνες:
Παραγωγήhttp https ssh
ΠαραγωγήDNS
Έχετε ρυθμίσει με επιτυχία τις δικές σας ζώνες! Εάν θέλετε να κάνετε μία από αυτές τις ζώνες την προεπιλογή για άλλες διεπαφές, θυμηθείτε να διαμορφώσετε αυτή τη συμπεριφορά με την παράμετρο-καθοδήγηση-ζώνη = παράμετρος:
συμπέρασμα
Θα πρέπει τώρα να έχετε μια αρκετά πλήρη κατανόηση του τρόπου διαχείρισης της υπηρεσίας τείχους προστασίας στο σύστημα Centos για καθημερινή χρήση.
Η υπηρεσία Firewalld σας επιτρέπει να διαμορφώσετε διατηρήσιμους κανόνες και σύνολα κανόνων που λαμβάνουν υπόψη το περιβάλλον του δικτύου σας. Σας επιτρέπει να μεταβαίνετε άψογα μεταξύ διαφορετικών πολιτικών τείχους προστασίας μέσω της χρήσης των ζωνών και δίνει στους διαχειριστές τη δυνατότητα να αφαιρεθούν η διαχείριση των λιμένων σε πιο φιλικούς ορισμούς υπηρεσιών. Η απόκτηση εργασιακής γνώσης αυτού του συστήματος θα σας επιτρέψει να επωφεληθείτε από την ευελιξία και την εξουσία που παρέχει αυτό το εργαλείο.
Για περισσότερες πληροφορίες σχετικά με το Firewalld, ανατρέξτε στην επίσημη τεκμηρίωση του Firewalld.
Ευχαριστούμε που μάθατε με την κοινότητα DigitalOcean. Ελέγξτε τις προσφορές μας για υπολογιστές, αποθήκευση, δικτύωση και διαχειριζόμενες βάσεις δεδομένων.