Πώς να ρυθμίσετε ένα τείχος προστασίας στον διακομιστή Ubuntu
Δημοσιεύθηκε: 15 Φεβρουαρίου 2025 στις 9:33:27 μ.μ. UTC
Αυτό το άρθρο εξηγεί και παρέχει μερικά παραδείγματα για το πώς να ρυθμίσετε ένα τείχος προστασίας στο GNU/Linux χρησιμοποιώντας ufw, το οποίο είναι συντομογραφία για το Uncomplicated Firewall - και το όνομα ταιριάζει, είναι πραγματικά ένας πολύ εύκολος τρόπος για να βεβαιωθείτε ότι δεν έχετε ανοιχτές περισσότερες θύρες από όσες χρειάζεστε.
How to Set Up a Firewall on Ubuntu Server
Οι πληροφορίες σε αυτήν την ανάρτηση βασίζονται στον Ubuntu Server 14.04 x64. Μπορεί να ισχύει ή να μην ισχύει για άλλες εκδόσεις. (Ενημέρωση: Μπορώ να επιβεβαιώσω ότι οι πληροφορίες σε αυτήν την ανάρτηση βασικά εξακολουθούν να είναι έγκυρες και λειτουργικές από τον Ubuntu Server 24.04, ωστόσο στα ενδιάμεσα 10 χρόνια, το ufw έχει γίνει κάπως πιο «έξυπνο» έχοντας προφίλ για κοινές εφαρμογές διακομιστή (για παράδειγμα, μπορείτε να ενεργοποιήσετε το "Nginx full" αντί για τις θύρες 80 και απενεργοποιώντας όλους τους κανόνες 80 και 443 η εφαρμογή δεν είναι πλέον απαραίτητη)
Όταν ξεκίνησα για πρώτη φορά με διακομιστές GNU/Linux (Ubuntu), η δημιουργία ενός τείχους προστασίας περιλάμβανε τη μη αυτόματη δημιουργία και τη διατήρηση ενός δυνητικά πολύπλοκου αρχείου διαμόρφωσης για iptables. Ωστόσο, πρόσφατα ανακάλυψα το ufw , το οποίο είναι συντομογραφία του Uncomplicated Firewall – και είναι πραγματικά :-)
Η εγκατάσταση του Ubuntu Server 14.04 μου είχε ήδη εγκαταστήσει το ufw, αλλά αν δεν το έχετε, απλώς εγκαταστήστε το από τα αποθετήρια:
Το UFW είναι στην πραγματικότητα απλώς ένα εργαλείο που απλοποιεί τη διαμόρφωση του iptables – στα παρασκήνια, είναι ακόμα το iptables και το τείχος προστασίας του πυρήνα Linux που κάνει το φιλτράρισμα, οπότε το ufw δεν είναι ούτε λιγότερο ούτε πιο ασφαλές από αυτά. Ωστόσο, επειδή το ufw διευκολύνει πολύ τη σωστή ρύθμιση παραμέτρων ενός τείχους προστασίας, μπορεί να μειώσει τον κίνδυνο ανθρώπινου λάθους και επομένως είναι πιθανώς πιο ασφαλής για άπειρους διαχειριστές.
Εάν ο διακομιστής σας έχει ρυθμιστεί με IPv6 καθώς και με IPv4, βεβαιωθείτε ότι αυτό είναι ενεργοποιημένο και για το UFW. Επεξεργαστείτε το αρχείο /etc/default/ufw και αναζητήστε μια γραμμή που λέει IPV6=yes . Στην εγκατάστασή μου ήταν ήδη εκεί, αλλά αν δεν είναι ή αν λέει όχι, θα πρέπει να το επεξεργαστείτε
Στη συνέχεια, απλώς χρησιμοποιήστε τη γραμμή εντολών για να ενεργοποιήσετε τις θύρες που θέλετε να ανοίξουν. Εάν είστε συνδεδεμένοι στον διακομιστή σας μέσω ssh, φροντίστε να το επιτρέψετε επίσης, διαφορετικά μπορεί να διαταραχθεί η σύνδεσή σας και ενδεχομένως να σας κλειδώσει από τον διακομιστή σας όταν τον ενεργοποιήσετε – ανάλογα με το αν έχετε φυσική πρόσβαση στον διακομιστή ή όχι, αυτό μπορεί να είναι κάπως άβολο ;-)
Για παράδειγμα, εάν χρησιμοποιείτε ssh στην τυπική θύρα 22 και διαμορφώνετε έναν διακομιστή ιστού που υποστηρίζει μη κρυπτογραφημένες συνδέσεις (HTTP στη θύρα 80) και κρυπτογραφημένες (HTTPS στη θύρα 443), θα εκδώσετε τις ακόλουθες εντολές για τη διαμόρφωση του ufw:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
Εάν χρειάζεστε περισσότερους κανόνες, απλώς προσθέστε τους όπως παραπάνω.
Εάν έχετε μια στατική διεύθυνση IP και χρειάζεται μόνο να μπορείτε να συνδεθείτε μέσω ssh από τη μία τοποθεσία, μπορείτε επίσης να περιορίσετε τις συνδέσεις ssh σε μία διεύθυνση προέλευσης όπως αυτή:
Φυσικά, εισαγάγετε τη δική σας διεύθυνση IP.
Όταν τελειώσετε, ενεργοποιήστε το ufw εισάγοντας:
Και τελείωσες! Το τείχος προστασίας εκτελείται και θα ξεκινήσει αυτόματα όταν κάνετε επανεκκίνηση του διακομιστή σας :-)
Εάν κάνετε αλλαγές στη διαμόρφωση ufw, ίσως χρειαστεί να την απενεργοποιήσετε και να την ενεργοποιήσετε ξανά για να τις θέσετε σε ισχύ, ως εξής:
sudo ufw enable
Για να δείτε την τρέχουσα διαμόρφωση, απλώς πληκτρολογήστε:
Εάν το ufw δεν είναι ενεργοποιημένο, θα εμφανίσει απλώς ένα "ανενεργό" μήνυμα, διαφορετικά θα εμφανίσει τους κανόνες που ορίζονται αυτήν τη στιγμή.