Προώθηση θυρών, γνωστή και ως αντιστοίχιση θυρών (port mapping), είναι μια μέθοδος που επιτρέπει σε απομακρυσμένες συσκευές να συνδέονται σε μια συγκεκριμένη υπηρεσία εντός του ιδιωτικού τοπικού σας δικτύου (LAN). Όπως υποδηλώνει το όνομα, η διαδικασία περιλαμβάνει την προώθηση αιτημάτων για μια συγκεκριμένη θύρα σε μια άλλη θύρα ή δίκτυο. Τροποποιεί τον προορισμό του πακέτου κατά τη μεταφορά του και θεωρείται ένας τύπος λειτουργίας μετάφρασης διευθύνσεων δικτύου (NAT) λειτουργίας.
Η ενεργοποίηση της προώθησης θυρών επιτρέπει σε εκείνες τις συσκευές ή τους κεντρικούς υπολογιστές που δεν είναι συνδεδεμένοι με το εσωτερικό δίκτυο να έχουν πρόσβαση μεταξύ τους, κάτι που διαφορετικά περιορίζεται όταν είναι απενεργοποιημένη. Μπορείτε να επωφεληθείτε από τα πλεονεκτήματα της προώθησης θυρών για να αποκλείσετε ιστότοπους-στόχους, να αναβαθμίσετε την ασφάλεια και να παρακάμψετε το τείχος προστασίας NAT κατά την προτίμησή σας.
Σε αυτόν τον οδηγό, θα σας καθοδηγήσουμε στα βήματα προώθησης θυρών με το iptables στο Linux.
Προαπαιτούμενα
Για να παρακολουθήσετε αυτόν τον οδηγό, θα χρειαστείτε:
- Εγκατεστημένο Ubuntu στο σύστημά σας.
- Δύο κεντρικούς υπολογιστές Ubuntu 20.04 στο ίδιο κέντρο δεδομένων με ενεργοποιημένη την ιδιωτική δικτύωση.
- Λογαριασμό χρήστη μη-root ρυθμισμένο με προνόμια sudo σε κάθε μηχάνημα.
Στοιχεία Κεντρικού Υπολογιστή
Αρχικά, πρέπει να γνωρίζουμε τις λεπτομέρειες των διεπαφών και των διευθύνσεων των διακομιστών εργασίας. Ας ελέγξουμε τις διεπαφές δικτύου του συστήματός μας:
|
1 |
ip -4 addr show scope global |
Θα δείτε το αποτέλεσμα:
|
1 2 3 4 5 6 7 8 9 |
Δείγμα Αποτελέσματος 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 inet 198.51.100.45/18 brd 45.55.191.255 scope global eth0 valid_lft forever preferred_lft forever 3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 inet 192.168.1.5/16 brd 10.132.255.255 scope global eth1 valid_lft forever preferred_lft forever |
Εδώ, το επισημασμένο αποτέλεσμα δείχνει δύο διεπαφές, την πρώτη eth0 αντιστοιχισμένη στη διεύθυνση 192.51.100.45, και τη δεύτερη eth1 αντιστοιχισμένη στη διεύθυνση 192.168.1.5. Από αυτές τις δύο διεπαφές, η μία είναι δημόσια και η άλλη ιδιωτική. Θα εκτελέσουμε μια εντολή για να τις διακρίνουμε και να βρούμε τη δημόσια διεπαφή, αυτή που είναι συνδεδεμένη στην προεπιλεγμένη πύλη σας. Για να τις διακρίνετε, πληκτρολογήστε:
|
1 |
ip route show | grep default= |
Θα δείτε το αποτέλεσμα:
|
1 2 3 |
Αποτέλεσμα: ip route show | grep default |
Εικονικά Δεδομένα για τον Οδηγό
Θα χρησιμοποιήσουμε εικονικές διευθύνσεις και αντιστοιχίσεις διεπαφών σε όλο αυτόν τον οδηγό. Είστε ελεύθεροι να χρησιμοποιήσετε αυτά τα δεδομένα ή να τα αντικαταστήσετε, κατά την προτίμησή σας.
Στοιχεία δικτύου διακομιστή ιστού:
-
Δημόσια Διεύθυνση IP: 203.0.113.2
-
Ιδιωτική Διεύθυνση IP: 192.0.2.2
-
Δημόσια Διεπαφή: eth0
-
Ιδιωτική Διεπαφή: eth1
Στοιχεία δικτύου τείχους προστασίας:
-
Δημόσια Διεύθυνση IP: 203.0.113.15
-
Ιδιωτική Διεύθυνση IP: 192.0.2.15
-
Δημόσια Διεπαφή: eth0
-
Ιδιωτική Διεπαφή: eth1
Ρύθμιση Διακομιστή Ιστού
Ας ξεκινήσουμε με τον κεντρικό υπολογιστή του διακομιστή ιστού μας. Αρχικά, συνδεθείτε με τον sudo χρήστη σας.
Εγκατάσταση Nginx
Αρχικά, θα εγκαταστήσουμε το Nginx στον κεντρικό υπολογιστή του διακομιστή ιστού μας και θα τον περιορίσουμε ώστε να ακούει μόνο στην ιδιωτική του διεπαφή. Αυτό θα επιτρέψει στον διακομιστή ιστού μας να είναι διαθέσιμος μόνο εάν έχουμε ρυθμίσει την προώθηση θυρών με σωστό τρόπο.
Στη συνέχεια, ενημερώστε την τοπική προσωρινή μνήμη πακέτων και χρησιμοποιήστε το apt για να κάνετε λήψη και εγκατάσταση του Nginx:
|
1 |
sudo apt-get update |
|
1 |
sudo apt-get install nginx |
Προσθήκη Περιορισμών
Μόλις εγκαταστήσουμε το Nginx στον κεντρικό υπολογιστή του διακομιστή ιστού μας, θα τον κλειδώσουμε για να διασφαλίσουμε ότι δέχεται εισόδους μόνο από ιδιωτικές διεπαφές και πουθενά αλλού. Επίσης, αυτό θα διασφαλίσει ότι οι διακομιστές ιστού μας θα είναι ενεργοί μόνο εάν η ρύθμιση προώθησης θυρών είναι σωστή.
Για να προσθέσετε περιορισμούς, ανοίξτε το προεπιλεγμένο αρχείο ρυθμίσεων του server block /etc/nginx/sites-enabled/default σε οποιονδήποτε επεξεργαστή κειμένου της επιλογής σας (εδώ χρησιμοποιούμε τον επεξεργαστή κειμένου nano), και πληκτρολογήστε:
|
1 |
sudo nano /etc/nginx/sites-enabled/default |
Στο αποτέλεσμα, θα δείτε την οδηγία listen να εμφανίζεται δύο φορές:

Σε αυτόν τον οδηγό, χρησιμοποιούμε την πρώτη οδηγία για να δείξουμε την προώθηση IPv4. Η δεύτερη, η οποία είναι ρυθμισμένη για IPv6, μπορεί να αφαιρεθεί. Προσθέστε την ιδιωτική διεύθυνση IP του διακομιστή ιστού σας με μια άνω-κάτω τελεία ακριβώς πριν από το 80 για να ενημερώσετε το Nginx να δέχεται εισόδους μόνο από την ιδιωτική διεπαφή. Στη συνέχεια, επεξεργαστείτε την οδηγία:

Μόλις τελειώσετε, αποθηκεύστε και κλείστε το αρχείο. Πριν προχωρήσετε, βεβαιωθείτε ότι δεν υπάρχουν συντακτικά σφάλματα. Ας δοκιμάσουμε το αρχείο:
|
1 |
sudo nginx -t |

Αν δεν εμφανιστεί κανένα σφάλμα, μπορείτε να επανεκκινήσετε το Nginx και να ενεργοποιήσετε τη νέα ρύθμιση:
|
1 |
sudo service nginx restart |
Επαλήθευση του περιορισμού δικτύου
Ας επαληθεύσουμε το επίπεδο πρόσβασης που έχουμε στον διακομιστή ιστού μας. Προσπαθήστε να αποκτήσετε πρόσβαση στον διακομιστή ιστού χρησιμοποιώντας την ιδιωτική διεπαφή χρησιμοποιώντας την curl εντολή:
|
1 |
curl --connect-timeout 5 192.0.2.2 |
Θα δείτε το αποτέλεσμα:

Αν προσπαθήσουμε να χρησιμοποιήσουμε τη δημόσια διεπαφή, δεν θα μπορέσουμε να συνδεθούμε:
|
1 |
curl --connect-timeout 5 203.0.113.2 |
|
1 |
curl: (7) Failed to connect to 203.0.113.2 port 80: Connection refused |
Αυτό είναι ακριβώς αυτό που περιμέναμε.
Διαμόρφωση του τείχους προστασίας για προώθηση της θύρας 80
Ας προχωρήσουμε την εργασία μας με την υλοποίηση της προώθησης θυρών στο μηχάνημα του τείχους προστασίας μας.
Ενεργοποίηση προώθησης στον πυρήνα
Από προεπιλογή, τα περισσότερα συστήματα έχουν την προώθηση θυρών απενεργοποιημένη (OFF). Θα κάνουμε αλλαγές για να την ενεργοποιήσουμε (ON) κάνοντας μερικές επεξεργασίες. Επίσης, υπάρχει η επιλογή να ενεργοποιήσετε την προώθηση θυρών μόνιμα χρησιμοποιώντας τα προνόμια sudo όπως φαίνεται στα επόμενα βήματα.
Για να ενεργοποιήσετε την προώθηση κίνησης σε επίπεδο πυρήνα, πληκτρολογήστε:
|
1 |
echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward |
Για να ενεργοποιήσετε την προώθηση θυρών μόνιμα, επεξεργαστείτε το αρχείο /etc/sysctl.conf . Ανοίξτε το αρχείο με προνόμια sudo και πληκτρολογήστε:
|
1 |
sudo nano /etc/sysctl.conf |
Μέσα, βρείτε και αποσχολιάστε τη γραμμή που μοιάζει με αυτήν:
|
1 |
net.ipv4.ip_forward=1 |
Μόλις τελειώσετε, αποθηκεύστε και κλείστε το αρχείο. Στη συνέχεια, χρησιμοποιήστε τις εντολές sysctl για να εφαρμόσετε τις αλλαγές στις ρυθμίσεις ώστε να τεθούν σε ισχύ:
|
1 |
sudo sysctl -p |
|
1 |
sudo sysctl --system |
Βασική ρύθμιση τείχους προστασίας
Αρχικά, διαβάστε τον οδηγό για το πώς να ρυθμίσετε ένα βασικό τείχος προστασίας στο μηχάνημά σας. Μετά την ολοκλήρωση, θα έχετε:
- Εγκαταστήσει το iptables-persistent
- Αποθηκεύσει το προεπιλεγμένο σύνολο κανόνων στο /etc/iptables/rules.v4
- Ολοκληρωμένη γνώση σχετικά με την προσθήκη και τροποποίηση κανόνων χρησιμοποιώντας την iptables εντολή
Επίσης, μπορείτε να δείτε πώς να εμφανίσετε τη λίστα και να διαγράψετε κανόνες του τείχους προστασίας iptables.
Προσθήκη των κανόνων προώθησης
Θα ρυθμίσουμε το τείχος προστασίας μας για να διασφαλίσουμε ότι η κίνηση που εισέρχεται στη δημόσια διεπαφή μας ( eth0 ) στη θύρα 80 προωθείται στην ιδιωτική διεπαφή μας ( eth1). Από προεπιλογή, το βασικό μας τείχος προστασίας έχει μια αλυσίδα FORWARD ρυθμισμένη σε DROP κίνησης. Η προσθήκη κανόνων τείχους προστασίας θα επιτρέψει την προώθηση συνδέσεων στον διακομιστή ιστού μας. Για πρόσθετη ασφάλεια, θα κλειδώσουμε τους κανόνες του τείχους προστασίας ώστε να επιτρέπουν μόνο συγκεκριμένα αιτήματα προώθησης.
Στην αλυσίδα FORWARD , θα αποδεχόμαστε νέες συνδέσεις με προορισμό τη θύρα 80 που προέρχονται από τη δημόσια διεπαφή μας και κατευθύνονται προς την ιδιωτική μας διεπαφή. Θα αναγνωρίζουμε τις νέες συνδέσεις με τη βοήθεια της επέκτασης conntrack και θα τις αναπαριστούμε με ένα TCP SYN πακέτο:
|
1 |
sudo iptables -A FORWARD -i eth0 -o eth1 -p tcp --syn --dport 80 -m conntrack --ctstate NEW -j ACCEPT |
Πρέπει να επιτρέψετε οποιαδήποτε επακόλουθη κίνηση και προς τις δύο κατευθύνσεις που προκύπτει από την εισερχόμενη σύνδεση. Πληκτρολογήστε τις παρακάτω εντολές για να επιτρέψετε την κίνηση ESTABLISHED και RELATED μεταξύ της δημόσιας και της ιδιωτικής μας διεπαφής:
|
1 |
iptables -A FORWARD -i eth0 -o eth1 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT |
|
1 |
iptables -A FORWARD -i eth1 -o eth0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT |
Let’s verify if our policy on the FORWARD chain is set to DROP:
|
1 |
sudo iptables -P FORWARD DROP |
Μέχρι τώρα, έχουμε προσθέσει μερικούς κανόνες που επιτρέπουν στη ροή δεδομένων μεταξύ των δημόσιων και ιδιωτικών διεπαφών μας να διέρχεται από το τείχος προστασίας μας. Ωστόσο, το iptables δεν έχει ενημερωθεί ακόμα για να κατευθύνει τη ροή δεδομένων, επειδή η διαμόρφωση των κανόνων του τείχους προστασίας δεν έχει ολοκληρωθεί ακόμα. Στα επόμενα βήματα, θα προσθέσουμε τους κανόνες NAT και θα προσαρμόσουμε το μόνιμο σύνολο κανόνων για να κατευθύνουμε τη ροή δεδομένων.
Προσθήκη των κανόνων NAT για την κατεύθυνση των πακέτων
Θα εκτελέσουμε δύο ξεχωριστές λειτουργίες προκειμένου το iptables να τροποποιήσει σωστά τα πακέτα και να απλοποιήσει την επικοινωνία με τους πελάτες και τον διακομιστή ιστού.
DNAT είναι η πρώτη λειτουργία που ξεκινά την αλυσίδα PREROUTING του πίνακα nat . Η λειτουργία τροποποιεί τη διεύθυνση προορισμού του πακέτου και του επιτρέπει να δρομολογηθεί σωστά καθώς περνά μεταξύ δικτύων. Ωστόσο, οι πελάτες στο δημόσιο δίκτυο θα συνδέονται στον διακομιστή του τείχους προστασίας μας και δεν θα έχουν καμία πληροφορία σχετικά με την τοπολογία του ιδιωτικού μας δικτύου. Για τη μεταφορά πληροφοριών με το ιδιωτικό δίκτυο, αλλάξτε τη διεύθυνση προορισμού κάθε πακέτου για να του επιτρέψετε να φτάσει σωστά στον διακομιστή ιστού προορισμού μας.
Είναι σημαντικό να σημειωθεί ότι εστιάζουμε στη διαμόρφωση της προώθησης θυρών. Η εκτέλεση NAT σε κάθε πακέτο που φτάνει στο τείχος προστασίας δεν αποτελεί μέρος του οδηγού μας. Θα αντιστοιχίσουμε πακέτα στη θύρα 80 στην ιδιωτική διεύθυνση IP του διακομιστή ιστού μας:
|
1 |
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 192.0.2.2 |
Το πακέτο θα δρομολογηθεί σωστά στον διακομιστή ιστού μας, περιέχοντας την αρχική διεύθυνση του πελάτη ως διεύθυνση προέλευσης. Παρά τις προσπάθειες του διακομιστή να στείλει την απάντηση απευθείας σε αυτήν τη διεύθυνση, δεν θα υπάρχει δυνατότητα δημιουργίας μιας έγκυρης σύνδεσης TCP.
Για να διαμορφώσουμε τη σωστή δρομολόγηση, θα τροποποιήσουμε τη διεύθυνση προέλευσης του πακέτου. Ας επεξεργαστούμε τη διεύθυνση προέλευσης στην ιδιωτική διεύθυνση IP του διακομιστή του τείχους προστασίας μας. Μετά την τροποποίηση, η απάντηση θα σταλεί πίσω στο τείχος προστασίας, το οποίο θα την προωθήσει πίσω στον πελάτη.
Για να ενεργοποιήσετε αυτήν τη λειτουργία, προσθέστε έναν κανόνα στην αλυσίδα POSTROUTING του πίνακα nat που αξιολογείται ακριβώς πριν σταλούν τα πακέτα στο δίκτυο. Στη συνέχεια, αντιστοιχίστε τα πακέτα που προορίζονται για τον διακομιστή ιστού μας βάσει διεύθυνσης IP και θύρας:
|
1 |
sudo iptables -t nat -A POSTROUTING -o eth1 -p tcp --dport 80 -d 192.0.2.2 -j SNAT --to-source 192.0.2.15 |
Μόλις εφαρμοστεί αυτός ο κανόνας, ο διακομιστής ιστού μας θα πρέπει να είναι προσβάσιμος κατευθύνοντας το πρόγραμμα περιήγησής μας στη δημόσια διεύθυνση του μηχανήματος του τείχους προστασίας μας:
|
1 |
curl 203.0.113.15 |
Θα δείτε το αποτέλεσμα:

Η ρύθμιση της προώθησης θυρών έχει ολοκληρωθεί.
Προσαρμογή του μόνιμου συνόλου κανόνων
Μετά την ολοκλήρωση της ρύθμισης της προώθησης θυρών, θα την αποθηκεύσουμε στο μόνιμο σύνολο κανόνων μας. Εάν θέλετε να διατηρήσετε τα σχόλια στο τρέχον σύνολο κανόνων, χρησιμοποιήστε την υπηρεσία iptables-persistent για να αποθηκεύσετε τους κανόνες σας:
|
1 |
sudo service iptables-persistent save |
Μπορείτε επίσης να το ανοίξετε και να το επεξεργαστείτε χειροκίνητα για να διατηρήσετε τα σχόλια στο αρχείο σας:
|
1 |
sudo nano /etc/iptables/rules.v4 |
Στη συνέχεια, διαμορφώστε τον πίνακα filter και τον πίνακα nat για να προσθέσετε τους κανόνες της αλυσίδας FORWARD και τους κανόνες ROUTING αντίστοιχα. Η προσαρμογή του πίνακα nat θα μας επιτρέψει να προσθέσουμε κανόνες PREROUTING και POSTROUTING όπως φαίνεται στο παρακάτω παράδειγμα:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 |
/etc/iptables/rules.v4 *filter # Επιτρέπονται όλα τα εξερχόμενα, αλλά απορρίπτονται τα εισερχόμενα και τα πακέτα προώθησης από προεπιλογή :INPUT DROP [0:0] :FORWARD DROP [0:0] :OUTPUT ACCEPT [0:0] # Προσαρμοσμένες αλυσίδες ανά πρωτόκολλο :UDP - [0:0] :TCP - [0:0] :ICMP - [0:0] # Αποδεκτή κίνηση UDP # Αποδεκτή κίνηση TCP -A TCP -p tcp --dport 22 -j ACCEPT # Αποδεκτή κίνηση ICMP # Τυποποιημένη πολιτική αποδοχής -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT -A INPUT -i lo -j ACCEPT # Απόρριψη μη έγκυρων πακέτων -A INPUT -m conntrack --ctstate INVALID -j DROP # Μεταβίβαση κίνησης σε αλυσίδες ειδικές για κάθε πρωτόκολλο ## Να επιτρέπονται μόνο νέες συνδέσεις (οι καθιερωμένες και οι σχετικές θα πρέπει ήδη να έχουν αντιμετωπιστεί) ## Για το TCP, επιπλέον να επιτρέπονται μόνο νέα πακέτα SYN, καθώς αυτή είναι η μόνη έγκυρη ## μέθοδος για τη δημιουργία μιας νέας σύνδεσης TCP -A INPUT -p udp -m conntrack --ctstate NEW -j UDP -A INPUT -p tcp --syn -m conntrack --ctstate NEW -j TCP -A INPUT -p icmp -m conntrack --ctstate NEW -j ICMP # Απόρριψη οτιδήποτε έχει φτάσει μέχρι αυτό το σημείο ## Προσπάθεια για μήνυμα απόρριψης ειδικό για το πρωτόκολλο -A INPUT -p udp -j REJECT --reject-with icmp-port-unreachable -A INPUT -p tcp -j REJECT --reject-with tcp-reset -A INPUT -j REJECT --reject-with icmp-proto-unreachable # Κανόνες για την προώθηση της θύρας 80 στον διακομιστή ιστού μας # Λεπτομέρειες δικτύου διακομιστή ιστού: # * Δημόσια διεύθυνση IP: 203.0.113.2 # * Ιδιωτική διεύθυνση IP: 192.0.2.2 # * Δημόσια διεπαφή: eth0 # * Ιδιωτική διεπαφή: eth1 # # Λεπτομέρειες δικτύου τείχους προστασίας: # # * Δημόσια διεύθυνση IP: 203.0.113.15 # * Ιδιωτική διεύθυνση IP: 192.0.2.15 # * Δημόσια διεπαφή: eth0 # * Ιδιωτική διεπαφή: eth1 -A FORWARD -i eth0 -o eth1 -p tcp --syn --dport 80 -m conntrack --ctstate NEW -j ACCEPT -A FORWARD -i eth0 -o eth1 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT -A FORWARD -i eth1 -o eth0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT # Τέλος κανόνων φιλτραρίσματος Forward # Υποβολή των αλλαγών COMMIT *raw :PREROUTING ACCEPT [0:0] :OUTPUT ACCEPT [0:0] COMMIT *nat :PREROUTING ACCEPT [0:0] :INPUT ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] # Κανόνες για τη μετάφραση αιτημάτων για τη θύρα 80 της δημόσιας διεπαφής # ώστε να μπορούμε να προωθήσουμε σωστά στον διακομιστή ιστού χρησιμοποιώντας την # ιδιωτική διεπαφή. # Λεπτομέρειες δικτύου διακομιστή ιστού: # * Δημόσια διεύθυνση IP: 203.0.113.2 # * Ιδιωτική διεύθυνση IP: 192.0.2.2 # * Δημόσια διεπαφή: eth0 # * Ιδιωτική διεπαφή: eth1 # # Λεπτομέρειες δικτύου τείχους προστασίας: # # * Δημόσια διεύθυνση IP: 203.0.113.15 # * Ιδιωτική διεύθυνση IP: 192.0.2.15 # * Δημόσια διεπαφή: eth0 # * Ιδιωτική διεπαφή: eth1 -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 192.0.2.2 -A POSTROUTING -d 192.0.2.2 -o eth1 -p tcp --dport 80 -j SNAT --to-source 192.0.2.15 # Τέλος μεταφράσεων NAT για την κίνηση του διακομιστή ιστού COMMIT *security :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] COMMIT *mangle :PREROUTING ACCEPT [0:0] :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] COMMIT |
Αφού προσθέσετε τις παραπάνω τιμές, αποθηκεύστε και κλείστε το αρχείο. Στη συνέχεια, πληκτρολογήστε την παρακάτω εντολή για να ελέγξετε τη σύνταξη των κανόνων σας:
|
1 |
sudo iptables-restore -t < /etc/iptables/rules.v4 |
Αν δεν δείτε σφάλματα, φορτώστε το σύνολο κανόνων:
|
1 |
sudo service iptables-persistent reload |
Ας επαληθεύσουμε ότι ο διακομιστής ιστού μας είναι ακόμα προσβάσιμος μέσω της δημόσιας διεύθυνσης IP του τείχους προστασίας σας:
|
1 |
curl 203.0.113.15 |
Συμπέρασμα
Μέχρι το τέλος αυτού του οδηγού, θα πρέπει να αισθάνεστε άνετα με την προώθηση θυρών σε έναν διακομιστή Linux με το iptables. Μπορείτε να αξιοποιήσετε τις δυνατότητες προώθησης θυρών για να αποκρύψετε την τοπολογία του ιδιωτικού σας δικτύου, ενώ παράλληλα απλοποιείτε τη ροή της κίνησης των υπηρεσιών ώστε να ρέει ελεύθερα μέσω του τείχους προστασίας της πύλης σας.
Καθώς η διαδικασία βασίζεται ρητά στην ασφάλεια του δικτύου σας και στις θύρες που χρησιμοποιούνται, είναι ασφαλής. Ενδέχεται να υπάρχει πιθανότητα κινδύνου εάν δεν έχετε τείχος προστασίας ασφαλείας ή ασφάλεια VPN στο δίκτυό σας. Επομένως, συνιστάται να διαμορφώσετε το τείχος προστασίας όπως περιγράφεται σε αυτόν τον οδηγό. Ελπίζουμε ότι αυτός ο οδηγός θα σας βοηθήσει να παραμείνετε ασφαλείς στο διαδίκτυο όταν χρησιμοποιείτε το ιδιωτικό σας δίκτυο.
Για να εξερευνήσετε περαιτέρω περισσότερες λύσεις τείχους προστασίας που μπορείτε να εφαρμόσετε στο σύστημά σας, δείτε αυτούς τους πόρους από το ιστολόγιό μας:
- Διαμόρφωση τείχους προστασίας με το UFW στο Ubuntu 18.04
- Ρύθμιση τείχους προστασίας με το FirewallD στο CentOS 7
- Τα βασικά του UFW: Εκμάθηση των βασικών εντολών τείχους προστασίας
Καλή υπολογιστική!
Σχόλια
Δεν υπάρχουν σχόλια ακόμα. Γράψτε το πρώτο.