Ρύθμιση του τείχους προστασίας IPTables στο CentOS 6

Εισαγωγή

Το τείχος προστασίας είναι ένας τύπος εργαλείου ασφάλειας δικτύου που ελέγχει την εισερχόμενη και εξερχόμενη κυκλοφορία δικτύου σύμφωνα με το προκαθορισμένο σύνολο κανόνων του. Μπορούμε να χρησιμοποιήσουμε ένα τείχος προστασίας μαζί με άλλα μέτρα ασφαλείας για να προστατεύσουμε τους διακομιστές μας από τα pries και τις επιθέσεις των χάκερ.

Ο σχεδιασμός ενός τείχους προστασίας μπορεί να είναι είτε αποκλειστικό υλικό είτε πρόγραμμα λογισμικού που εκτελείται στο μηχάνημά μας. Στο CentOS 6, το προεπιλεγμένο πρόγραμμα τείχους προστασίας είναι το iptables.

Σε αυτό το άρθρο, θα σας δείξω πώς να ρυθμίσετε ένα βασικό τείχος προστασίας iptables με βάση την εφαρμογή Vultr "WordPress on CentOS 6 x64", η οποία θα αποκλείει όλη την κυκλοφορία εκτός από υπηρεσίες web, SSH, NTP, DNS και ping. Ωστόσο, αυτή είναι μόνο μια προκαταρκτική διαμόρφωση που ικανοποιεί κοινές ανάγκες ασφαλείας. Θα χρειαστείτε μια πιο εξελιγμένη διαμόρφωση iptables εάν έχετε περαιτέρω απαιτήσεις.

Σημείωση :

Εάν προσθέσετε μια διεύθυνση IPv6 στον διακομιστή σας, θα πρέπει επίσης να ρυθμίσετε την υπηρεσία ip6tables. Η ρύθμιση παραμέτρων ip6tables δεν εμπίπτει στο πεδίο εφαρμογής αυτού του άρθρου.

Σε αντίθεση με το CentOS 6, το iptables δεν είναι πλέον το προεπιλεγμένο πρόγραμμα τείχους προστασίας στο CentOS 7 και έχει αντικατασταθεί με ένα πρόγραμμα που ονομάζεται τείχος προστασίας. Εάν σκοπεύετε να χρησιμοποιήσετε το CentOS 7, θα χρειαστεί να ρυθμίσετε το τείχος προστασίας σας χρησιμοποιώντας το τείχος προστασίας.

Προαπαιτούμενα

Αναπτύξτε πρόσφατα μια παρουσία διακομιστή με την εφαρμογή Vultr "WordPress on CentOS 6 x64" και, στη συνέχεια, συνδεθείτε ως root.

Βήμα 1: Προσδιορίστε τις υπηρεσίες και τις θύρες που χρησιμοποιούνται στον διακομιστή σας

Υποθέτω ότι αυτός ο διακομιστής θα φιλοξενεί μόνο ένα ιστολόγιο WordPress και δεν θα χρησιμοποιείται ως δρομολογητής ή δεν θα παρέχει άλλες υπηρεσίες (για παράδειγμα, αλληλογραφία, FTP, IRC κ.λπ.).

Εδώ χρειαζόμαστε τις ακόλουθες υπηρεσίες:

  • HTTP (TCP στη θύρα 80)
  • HTTPS (TCP στη θύρα 443)
  • SSH (το TCP στη θύρα 22 από προεπιλογή, μπορεί να αλλάξει για λόγους ασφαλείας)
  • NTP (UDP στη θύρα 123)
  • DNS (TCP και UDP στη θύρα 53)
  • ping (ICMP)

Όλες οι άλλες περιττές θύρες θα μπλοκαριστούν.

Βήμα 2: Διαμόρφωση κανόνων iptables

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

Όλη η κίνηση μπορεί να κατηγοριοποιηθεί ως INPUT, OUTPUT και FORWARD.

  • Η κίνηση INPUT μπορεί να είναι είτε κανονική είτε κακόβουλη, θα πρέπει να επιτρέπεται επιλεκτικά.
  • Η κυκλοφορία OUTPUT θεωρείται συνήθως ασφαλής και θα πρέπει να επιτρέπεται.
  • Η κίνηση FORWARD είναι άχρηστη και θα πρέπει να αποκλειστεί.

Τώρα, ας διαμορφώσουμε τους κανόνες iptables σύμφωνα με τις ανάγκες μας. Όλες οι ακόλουθες εντολές θα πρέπει να εισαχθούν από το τερματικό SSH ως root.

Ελέγξτε τους υπάρχοντες κανόνες:

iptables -L -n

Ξεπλύνετε όλους τους υπάρχοντες κανόνες:

iptables -F; iptables -X; iptables -Z

Δεδομένου ότι οι αλλαγές στη διαμόρφωση του iptables θα τεθούν σε ισχύ αμέσως, εάν ρυθμίσετε εσφαλμένα τους κανόνες του iptables, ενδέχεται να αποκλειστείτε από τον διακομιστή σας. Μπορείτε να αποτρέψετε τυχαία αποκλεισμούς με την ακόλουθη εντολή. Θυμηθείτε να αντικαταστήσετε [Your-IP-Address]με τη δική σας δημόσια διεύθυνση IP ή εύρος διευθύνσεων IP (για παράδειγμα, 201.55.119.43 ή 201.55.119.0/24).

iptables -A INPUT -s [Your-IP-Address] -p tcp --dport 22 -j ACCEPT

Να επιτρέπεται όλη η επισκεψιμότητα (loopback) και απόθεση όλης της επισκεψιμότητας στο 127.0.0.0/8 εκτός από το lo:

iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -d 127.0.0.0/8 -j REJECT

Αποκλείστε ορισμένες κοινές επιθέσεις:

iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP

Αποδεχτείτε όλες τις καθιερωμένες εισερχόμενες συνδέσεις:

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Να επιτρέπεται η εισερχόμενη κυκλοφορία HTTP και HTTPS:

iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

Επιτρέπονται οι συνδέσεις SSH:

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

Επιτρέπονται οι συνδέσεις NTP:

iptables -A INPUT -p udp --dport 123 -j ACCEPT

Να επιτρέπονται τα ερωτήματα DNS:

iptables -A INPUT -p udp --dport 53 -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -j ACCEPT

Να επιτρέπεται το ping:

iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT

Επιτέλους, ορίστε τις προεπιλεγμένες πολιτικές:

iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

Βήμα 3: Αποθηκεύστε τις διαμορφώσεις

Κάθε μία από τις αλλαγές που κάναμε παραπάνω έχει τεθεί σε ισχύ, αλλά δεν είναι μόνιμες. Εάν δεν τα αποθηκεύσουμε στον σκληρό δίσκο, θα χαθούν μόλις γίνει επανεκκίνηση του συστήματος.

Αποθηκεύστε τη διαμόρφωση iptables με την ακόλουθη εντολή:

service iptables save

Οι αλλαγές μας θα αποθηκευτούν στο αρχείο /etc/sysconfig/iptables. Μπορείτε να ελέγξετε ή να τροποποιήσετε τους κανόνες επεξεργάζοντας αυτό το αρχείο.

Λύσεις για τυχαίο αποκλεισμό

Εάν έχετε αποκλειστεί από τον διακομιστή σας λόγω λάθους διαμόρφωσης, μπορείτε και πάλι να ανακτήσετε την πρόσβασή σας με ορισμένες λύσεις.

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

Leave a Comment

Εγκαταστήστε το Plesk στο CentOS 7

Εγκαταστήστε το Plesk στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Plesk είναι ένας ιδιόκτητος πίνακας ελέγχου web host που επιτρέπει στους χρήστες να διαχειρίζονται τους προσωπικούς ή/και τους πελάτες τους ιστότοπους, βάσεις δεδομένων

Πώς να εγκαταστήσετε το Squid Proxy στο CentOS

Πώς να εγκαταστήσετε το Squid Proxy στο CentOS

Το Squid είναι ένα δημοφιλές, δωρεάν πρόγραμμα Linux που σας επιτρέπει να δημιουργήσετε έναν διακομιστή μεσολάβησης web προώθησης. Σε αυτόν τον οδηγό, θα δείτε πώς να εγκαταστήσετε το Squid στο CentOS για να σας μετατρέψει

Πώς να εγκαταστήσετε το Lighttpd (Στοίβα LLMP) στο CentOS 6

Πώς να εγκαταστήσετε το Lighttpd (Στοίβα LLMP) στο CentOS 6

Εισαγωγή Το Lighttpd είναι ένα πιρούνι του Apache που έχει ως στόχο να είναι πολύ λιγότερο εντάσεως πόρων. Είναι ελαφρύ, εξ ου και το όνομά του, και είναι αρκετά απλό στη χρήση. Εγκατάσταση

Τροποποίηση Icinga2 για χρήση Μοντέλου Master/Client σε CentOS 6 ή CentOS 7

Τροποποίηση Icinga2 για χρήση Μοντέλου Master/Client σε CentOS 6 ή CentOS 7

Το Icinga2 είναι ένα ισχυρό σύστημα παρακολούθησης και όταν χρησιμοποιείται σε μοντέλο master-client, μπορεί να αντικαταστήσει την ανάγκη για ελέγχους παρακολούθησης που βασίζονται σε NRPE. Ο κύριος-πελάτης

Πώς να εγκαταστήσετε το Apache Cassandra 3.11.x στο CentOS 7

Πώς να εγκαταστήσετε το Apache Cassandra 3.11.x στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Apache Cassandra είναι ένα δωρεάν και ανοιχτού κώδικα σύστημα διαχείρισης βάσεων δεδομένων NoSQL που έχει σχεδιαστεί για να παρέχει επεκτασιμότητα, υψηλή

Πώς να εγκαταστήσετε το Microweber στο CentOS 7

Πώς να εγκαταστήσετε το Microweber στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Microweber είναι ένα ανοικτού κώδικα μεταφοράς και απόθεσης CMS και ηλεκτρονικό κατάστημα. Ο πηγαίος κώδικας Microweber φιλοξενείται στο GitHub. Αυτός ο οδηγός θα σας δείξει

Πώς να εγκαταστήσετε το Vanilla Forum στο CentOS 7

Πώς να εγκαταστήσετε το Vanilla Forum στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Vanilla forum είναι μια εφαρμογή φόρουμ ανοιχτού κώδικα γραμμένη σε PHP. Είναι πλήρως προσαρμόσιμο, εύκολο στη χρήση και υποστηρίζει εξωτερικά

Πώς να εγκαταστήσετε το Mattermost 4.1 στο CentOS 7

Πώς να εγκαταστήσετε το Mattermost 4.1 στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Mattermost είναι μια εναλλακτική λύση ανοιχτού κώδικα, που φιλοξενείται από τον εαυτό της στην υπηρεσία ανταλλαγής μηνυμάτων Slack SAAS. Με άλλα λόγια, με το Mattermost, μπορείτε περίπου

Ας κρυπτογραφήσουμε στο Plesk

Ας κρυπτογραφήσουμε στο Plesk

Ο πίνακας ελέγχου Plesk διαθέτει μια πολύ ωραία ενσωμάτωση για το Lets Encrypt. Το Lets Encrypt είναι ένας από τους μόνους παρόχους SSL που εκδίδει πιστοποιητικά πλήρως

Επιτρέπει την κρυπτογράφηση στο cPanel

Επιτρέπει την κρυπτογράφηση στο cPanel

Το Lets Encrypt είναι μια αρχή έκδοσης πιστοποιητικών αφιερωμένη στην παροχή πιστοποιητικών SSL δωρεάν. Το cPanel έχει δημιουργήσει μια τακτοποιημένη ενοποίηση για εσάς και τον πελάτη σας

Πώς να εγκαταστήσετε το Concrete5 στο CentOS 7

Πώς να εγκαταστήσετε το Concrete5 στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Concrete5 είναι ένα CMS ανοιχτού κώδικα που προσφέρει πολλές χαρακτηριστικές και χρήσιμες λειτουργίες για να βοηθήσει τους συντάκτες να παράγουν περιεχόμενο εύκολα και

Πώς να εγκαταστήσετε το Review Board στο CentOS 7

Πώς να εγκαταστήσετε το Review Board στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Review Board είναι ένα δωρεάν και ανοιχτού κώδικα εργαλείο για την ανασκόπηση του πηγαίου κώδικα, της τεκμηρίωσης, των εικόνων και πολλών άλλων. Είναι λογισμικό που βασίζεται στο web

Ρύθμιση ελέγχου ταυτότητας HTTP με Nginx στο CentOS 7

Ρύθμιση ελέγχου ταυτότητας HTTP με Nginx στο CentOS 7

Σε αυτόν τον οδηγό, θα μάθετε πώς να ρυθμίζετε τον έλεγχο ταυτότητας HTTP για έναν διακομιστή web Nginx που εκτελείται σε CentOS 7. Απαιτήσεις Για να ξεκινήσετε, θα χρειαστείτε

Πώς να εγκαταστήσετε το YOURLS στο CentOS 7

Πώς να εγκαταστήσετε το YOURLS στο CentOS 7

Το YOURLS (Your Own URL Shortener) είναι μια εφαρμογή συντόμευσης διευθύνσεων URL και ανάλυσης δεδομένων ανοιχτού κώδικα. Σε αυτό το άρθρο, θα καλύψουμε τη διαδικασία εγκατάστασης

Πώς να εγκαταστήσετε και να ρυθμίσετε το ArangoDB στο CentOS 7

Πώς να εγκαταστήσετε και να ρυθμίσετε το ArangoDB στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Εισαγωγή Το ArangoDB είναι μια βάση δεδομένων NoSQL ανοιχτού κώδικα με ένα ευέλικτο μοντέλο δεδομένων για έγγραφα, γραφήματα και κλειδιά-τιμές. είναι

Χρήση του Etckeeper για έλεγχο έκδοσης του /etc

Χρήση του Etckeeper για έλεγχο έκδοσης του /etc

Εισαγωγή Ο κατάλογος /etc/ παίζει κρίσιμο ρόλο στον τρόπο λειτουργίας ενός συστήματος Linux. Ο λόγος για αυτό είναι επειδή σχεδόν κάθε διαμόρφωση συστήματος

Γιατί πρέπει να χρησιμοποιήσετε το SSHFS; Πώς να προσαρτήσετε ένα απομακρυσμένο σύστημα αρχείων με SSHFS στο CentOS 6

Γιατί πρέπει να χρησιμοποιήσετε το SSHFS; Πώς να προσαρτήσετε ένα απομακρυσμένο σύστημα αρχείων με SSHFS στο CentOS 6

Πολλοί διαχειριστές συστημάτων διαχειρίζονται μεγάλες ποσότητες διακομιστών. Όταν χρειάζεται πρόσβαση στα αρχεία σε διαφορετικούς διακομιστές, συνδέεστε σε καθένα ξεχωριστά περίπου

Ρύθμιση διακομιστή Half Life 2 στο CentOS 6

Ρύθμιση διακομιστή Half Life 2 στο CentOS 6

Αυτό το σεμινάριο θα καλύψει τη διαδικασία εγκατάστασης ενός διακομιστή παιχνιδιών Half Life 2 στο σύστημα CentOS 6. Βήμα 1: Εγκατάσταση των προαπαιτούμενων Για να ρυθμίσετε το ou

Πώς να εγκαταστήσετε το Laravel GitScrum στο CentOS 7

Πώς να εγκαταστήσετε το Laravel GitScrum στο CentOS 7

Το Laravel GitScrum ή GitScrum είναι ένα εργαλείο παραγωγικότητας ανοιχτού κώδικα που έχει σχεδιαστεί για να βοηθά τις ομάδες ανάπτυξης να εφαρμόσουν τη μεθοδολογία Scrum με παρόμοιο τρόπο

Πώς να εγκαταστήσετε το PowerDNS στο CentOS

Πώς να εγκαταστήσετε το PowerDNS στο CentOS

Εισαγωγή Σε αυτό το σεμινάριο Vultr, θα μάθετε πώς να εγκαταστήσετε το PowerDNS. Το PowerDNS είναι ένα πρόγραμμα για την εκτέλεση των δικών σας διακομιστών ονομάτων. Είναι πολύ χρήσιμο όταν

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Η Τεχνητή Νοημοσύνη δεν είναι στο μέλλον, είναι εδώ ακριβώς στο παρόν Σε αυτό το blog Διαβάστε πώς οι εφαρμογές Τεχνητής Νοημοσύνης έχουν επηρεάσει διάφορους τομείς.

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Είστε επίσης θύμα των επιθέσεων DDOS και έχετε μπερδευτεί σχετικά με τις μεθόδους πρόληψης; Διαβάστε αυτό το άρθρο για να λύσετε τις απορίες σας.

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

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

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Θέλετε να δείτε επαναστατικές εφευρέσεις της Google και πώς αυτές οι εφευρέσεις άλλαξαν τη ζωή κάθε ανθρώπου σήμερα; Στη συνέχεια, διαβάστε στο blog για να δείτε τις εφευρέσεις της Google.

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Η ιδέα των αυτοκινούμενων αυτοκινήτων να βγαίνουν στους δρόμους με τη βοήθεια της τεχνητής νοημοσύνης είναι ένα όνειρο που έχουμε εδώ και καιρό. Όμως, παρά τις πολλές υποσχέσεις, δεν φαίνονται πουθενά. Διαβάστε αυτό το blog για να μάθετε περισσότερα…

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Καθώς η Επιστήμη εξελίσσεται με γρήγορους ρυθμούς, αναλαμβάνοντας πολλές από τις προσπάθειές μας, αυξάνονται και οι κίνδυνοι να υποβάλλουμε τον εαυτό μας σε μια ανεξήγητη Ιδιότητα. Διαβάστε τι σημαίνει η μοναδικότητα για εμάς.

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Οι μέθοδοι αποθήκευσης των δεδομένων εξελίσσονται μπορεί να είναι από τη γέννηση των Δεδομένων. Αυτό το ιστολόγιο καλύπτει την εξέλιξη της αποθήκευσης δεδομένων με βάση ένα infographic.

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

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

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

Σε αυτόν τον ψηφιακό κόσμο, οι έξυπνες οικιακές συσκευές έχουν γίνει κρίσιμο μέρος της ζωής. Ακολουθούν μερικά εκπληκτικά οφέλη των έξυπνων οικιακών συσκευών σχετικά με το πώς κάνουν τη ζωή μας να αξίζει και να απλοποιείται.

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Πρόσφατα, η Apple κυκλοφόρησε το macOS Catalina 10.15.4 μια συμπληρωματική ενημέρωση για την επιδιόρθωση προβλημάτων, αλλά φαίνεται ότι η ενημέρωση προκαλεί περισσότερα προβλήματα που οδηγούν σε bricking των μηχανών mac. Διαβάστε αυτό το άρθρο για να μάθετε περισσότερα