Πώς να χτυπήσετε στο δίκτυό σας, Μέρος 2 Προστατέψτε το VPN σας (DD-WRT)
Σας έχουμε δείξει πώς να ενεργοποιήσετε το WOL εξ αποστάσεως από το "Port Knocking" στο δρομολογητή σας. Σε αυτό το άρθρο, θα δείξουμε πώς να το χρησιμοποιήσετε για την προστασία μιας υπηρεσίας VPN.
Εικόνα από τον Aviad Raviv & bfick.
Πρόλογος
Εάν έχετε χρησιμοποιήσει τη ενσωματωμένη λειτουργικότητα του DD-WRT για VPN ή έχετε έναν άλλο διακομιστή VPN στο δίκτυό σας, ίσως να εκτιμήσετε την ικανότητα να τον προστατεύσετε από τις επιθέσεις βίαιης δύναμης, αποκρύπτοντάς την πίσω από μια ακολουθία χτυπήματος. Με αυτόν τον τρόπο, θα φιλτράρετε τα παιδικά σενάρια που προσπαθούν να αποκτήσουν πρόσβαση στο δίκτυό σας. Με αυτό είπε, όπως αναφέρεται στο προηγούμενο άρθρο, η θύρα χτυπήματος δεν αποτελεί αντικατάσταση ενός καλού κωδικού πρόσβασης ή / και πολιτικής ασφαλείας. Θυμηθείτε ότι με αρκετή υπομονή ένας εισβολέας μπορεί να ανακαλύψει την ακολουθία και να εκτελέσει μια επίθεση επανάληψης.
Έχετε επίσης κατά νου ότι το μειονέκτημα της υλοποίησης αυτού είναι ότι όταν οποιοσδήποτε πελάτης VPN επιθυμεί να συνδεθεί, θα πρέπει να ενεργοποιήσει την αλληλουχία χτυπήματος Εκ των προτέρων και ότι εάν δεν μπορούν να ολοκληρώσουν την ακολουθία για οποιονδήποτε λόγο, δεν θα είναι σε θέση να VPN καθόλου.
ΣΦΑΙΡΙΚΗ ΕΙΚΟΝΑ
Προκειμένου να προστατευθεί η υπηρεσία VPN, θα απενεργοποιήσουμε πρώτα όλες τις πιθανές επικοινωνίες με το μπλοκάρισμα της θύρας εμφάνισης του 1723. Για να επιτύχουμε αυτόν τον στόχο, θα χρησιμοποιήσουμε το iptables. Αυτό οφείλεται στο γεγονός ότι, έτσι φιλτράρεται η επικοινωνία στις πιο σύγχρονες κατανομές Linux / GNU εν γένει και ειδικότερα στο DD-WRT. Εάν θέλετε περισσότερες πληροφορίες σχετικά με το iptables checkout η καταχώρησή του wiki, και ρίξτε μια ματιά στο προηγούμενο άρθρο μας για το θέμα. Μόλις προστατευτεί η υπηρεσία, θα δημιουργήσουμε μια ακολουθία χτυπήματος που θα ανοίξει προσωρινά τη θύρα εμφάνισης VPN και θα την κλείσει αυτόματα μετά από ένα καθορισμένο χρονικό διάστημα διατηρώντας ταυτόχρονα την ήδη καθιερωμένη περίοδο σύνδεσης VPN.
Σημείωση: Σε αυτόν τον οδηγό, χρησιμοποιούμε την υπηρεσία PPTP VPN ως παράδειγμα. Με αυτό είπε, η ίδια μέθοδος μπορεί να χρησιμοποιηθεί για άλλους τύπους VPN, θα πρέπει απλά να αλλάξετε την αποκλεισμένη θύρα ή / και τον τύπο επικοινωνίας.
Προαπαιτούμενα, υποθέσεις και συστάσεις
- Υποτίθεται / απαιτείται να έχετε δρομολογητή DD-WRT με δυνατότητα Opkg.
- Υποτίθεται / απαιτείται ότι έχετε ήδη εκτελέσει τα βήματα στον οδηγό "Πώς να χτυπήσετε στο δίκτυό σας (DD-WRT)".
- Ορισμένες γνώσεις δικτύωσης λαμβάνονται υπόψη.
Ας πάρουμε ρωγμές.
Προκαθορισμένο "Αποκλεισμός νέου VPNs" κανόνα στο DD-WRT
Ενώ το παρακάτω απόσπασμα του "κώδικα" θα λειτουργούσε κατά πάσα πιθανότητα σε κάθε χρήση του iptables, Linux / GNU, επειδή υπάρχουν τόσες πολλές παραλλαγές, θα δείξουμε μόνο πώς να το χρησιμοποιήσουμε στο DD-WRT. Τίποτα δεν σας σταματά, εάν το επιθυμείτε, από την εφαρμογή του απευθείας στο πλαίσιο VPN. Ωστόσο, πώς να το κάνετε αυτό είναι πέρα από το πεδίο εφαρμογής αυτού του οδηγού.
Επειδή θέλουμε να αυξήσουμε το τείχος προστασίας του δρομολογητή, είναι λογικό να προσθέσουμε το σενάριο "Firewall". Κάτι τέτοιο, θα μπορούσε να προκαλέσει την εκτέλεση της εντολής iptables κάθε φορά που το τείχος προστασίας ανανεώνεται και έτσι διατηρώντας την επέκτασή μας στη θέση μας για να κρατάει.
Από το Web-GUI του DD-WRT:
- Μεταβείτε στην επιλογή "Διαχείριση" -> "Εντολές".
- Πληκτρολογήστε τον παρακάτω "κώδικα" στο πλαίσιο κειμένου:
inline = "$ (iptables -L INPUT -n | grep -n" κατάσταση ΣΧΕΤΙΚΟ, ESTABLISHED "| awk -F: 'print $ 1')"; inline = $ (($ inline-2 + 1)). iptables -I ΕΙΣΟΔΟΣ "$ inline" -p tcp - μεταφορά 1723 -j DROP
- Κάντε κλικ στο "Αποθήκευση τείχους προστασίας".
- Εγινε.
Τι είναι αυτή η εντολή "Voodoo"?
Η παραπάνω εντολή "μαγεία βουντού" κάνει τα εξής:
- Βρίσκει πού είναι η iptable γραμμή που επιτρέπει τη διέλευση της ήδη υπάρχουσας επικοινωνίας. Αυτό συμβαίνει επειδή: A. Στις δρομολογητές DD-WRT, εάν η υπηρεσία VPN είναι ενεργοποιημένη, θα βρίσκεται ακριβώς κάτω από αυτή τη γραμμή και Β. Είναι ουσιαστικής σημασίας για το στόχο μας να συνεχίσουμε να επιτρέπουμε τις ήδη καθιερωμένες συνεδρίες VPN να ζουν μετά χτυπώντας το συμβάν.
- Απαγορεύει δύο (2) από την έξοδο της εντολής καταχώρισης να λογαριάσει για την αντιστάθμιση που προκαλείται από τις κεφαλίδες πληροφοριακών στηλών. Μόλις γίνει αυτό, προσθέτει ένα (1) στον παραπάνω αριθμό, έτσι ώστε ο κανόνας που εισάγουμε θα έρθει αμέσως μετά τον κανόνα που επιτρέπει την ήδη καθιερωμένη επικοινωνία. Έχω αφήσει αυτό το πολύ απλό "μαθηματικό πρόβλημα" εδώ για να κάνω τη λογική του "γιατί κάποιος πρέπει να μειώσει έναν από τον τόπο του κανόνα αντί να προσθέσει ένα σε αυτό" σαφές.
Διαμόρφωση KnockD
Πρέπει να δημιουργήσουμε μια νέα ακολουθία ενεργοποίησης που θα επιτρέψει τη δημιουργία νέων συνδέσεων VPN. Για να γίνει αυτό, επεξεργαστείτε το αρχείο knockd.conf εκδίδοντας σε ένα τερματικό:
vi /opt/etc/knockd.conf
Προσάρτηση στην υπάρχουσα διαμόρφωση:
[enable-VPN]
ακολουθία = 02,02,02,01,01,01,2010,2010,2010
seq_timeout = 60
start_command = iptables -I ΕΙΣΟΔΟΣ 1 -s% IP% -p tcp --δέντα 1723 -j ACCEPT
cmd_timeout = 20
stop_command = iptables -D ΕΙΣΟΔΟΣ -s% IP% -p tcp --δέντα 1723 -j ACCEPT
Αυτή η διαμόρφωση θα:
- Ρυθμίστε το παράθυρο ευκαιρίας για να ολοκληρώσετε την ακολουθία, στα 60 δευτερόλεπτα. (Συνιστάται να το κρατήσετε όσο το δυνατόν συντομότερο)
- Ακούστε μια ακολουθία τριών χτυπημάτων στις θύρες 2, 1 και 2010 (αυτή η παραγγελία είναι σκόπιμη για να ρίξει τους λιμενικούς σαρωτές εκτός δρόμου).
- Μόλις εντοπιστεί η ακολουθία, εκτελέστε την εντολή "start_command". Αυτή η εντολή "iptables" θα τοποθετήσει μια "αποδοχή κίνησης που προορίζεται για τη θύρα 1723 από όπου προέρχονται τα χτυπήματα" στην κορυφή των κανόνων του τείχους προστασίας. (Η οδηγία% IP% αντιμετωπίζεται ειδικά από το KnockD και αντικαθίσταται με την IP της προέλευσης κρουστών).
- Περιμένετε 20 δευτερόλεπτα πριν εκδώσετε το "stop_command".
- Εκτελέστε το "stop_command". Όπου αυτή η εντολή "iptables" κάνει το αντίθετο των παραπάνω και διαγράφει τον κανόνα που επιτρέπει την επικοινωνία.
Συντάκτης's συμβουλές
Παρόλο που θα έπρεπε να είναι όλα, υπάρχουν μερικά σημεία που πιστεύω ότι πρέπει να αναφέρουμε.
- Αντιμετώπιση προβλημάτων. Θυμηθείτε ότι εάν αντιμετωπίζετε προβλήματα, το τμήμα "αντιμετώπισης προβλημάτων" στο τέλος του πρώτου άρθρου πρέπει να είναι η πρώτη σας στάση.
- Αν θέλετε, μπορείτε να έχετε τις οδηγίες "start / stop" να εκτελούν πολλαπλές εντολές, χωρίζοντάς τις με ένα semi-colen (;) ή ακόμα και ένα σενάριο. Κάνοντας αυτό θα σας επιτρέψει να κάνετε κάποια κομψά πράγματα. Για παράδειγμα, έχω knockd μου στείλετε ένα * Email μου λέγοντας ότι μια ακολουθία έχει ενεργοποιηθεί και από πού.
- Μην ξεχνάτε ότι "Υπάρχει μια εφαρμογή για αυτό" και παρόλο που δεν αναφέρεται σε αυτό το άρθρο, σας ενθαρρύνονται να αρπάξει το πρόγραμμα ρόλων Android του StavFX.
- Ενώ είστε στο θέμα του Android, μην ξεχνάτε ότι υπάρχει ένα PPTP VPN client συνήθως ενσωματωμένο στο λειτουργικό σύστημα από τον κατασκευαστή.
- Η μέθοδος, το να μπλοκάρει κάτι αρχικά και στη συνέχεια να συνεχίσει να επιτρέπει την ήδη καθιερωμένη επικοινωνία, μπορεί να χρησιμοποιηθεί σε σχεδόν οποιαδήποτε επικοινωνία βασισμένη στο TCP. Στην πραγματικότητα, στις ταινίες Knockd on DD-WRT 1 ~ 6, έκανα δρόμο πίσω όταν χρησιμοποίησα το πρωτόκολλο απομακρυσμένης επιφάνειας εργασίας (RDP) το οποίο χρησιμοποιεί τη θύρα 3389 ως παράδειγμα.
Ποιος διαταράσσει το βραχίονα μου?