Ένας ιστότοπος που λειτουργεί είναι απόδειξη ότι ένας πάροχος μπορεί να σερβίρει HTTP, όχι ότι εσείς ελέγχετε ένα μηχάνημα. Ανάμεσα σε ένα κοινόχρηστο πλάνο, μια διαχειριζόμενη εφαρμογή και έναν αυτοδιαχειριζόμενο διακομιστή υπάρχει μεγάλο χάσμα στο τι επιτρέπεται να κάνει ο λογαριασμός στο δίκτυο. Αποφασίστε ποια πλευρά αυτού του χάσματος χρειάζεται ο σχεδιασμός VPN σας πριν πληρώσετε για άλλον ένα χρόνο. Τέσσερις δυνατότητες χωρίζουν τα δύο, και καμία δεν εμφανίζεται σε τιμοκατάλογο.

Τι σας δίνει στην πραγματικότητα κάθε πλάνο

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

Τα περισσότερα προϊόντα φιλοξενίας πέφτουν σε τρεις μορφές, και μόνο η τελευταία είναι διακομιστής γενικού σκοπού:

CapabilityWebsite planSelf-managed server
Long-running custom processUsually not permittedYours to run under a service manager
Virtual network interfaceAlmost never availablePresent when the kernel module and privilege allow it
Arbitrary inbound portRestricted to the web stackProvider filtering still applies
Forwarding for clientsNot offeredPossible once routing and policy are configured

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

Τέσσερις δυνατότητες που καθορίζουν την απάντηση

Πάρτε τις με σειρά, γιατί μια αποτυχία στο πρώτο βήμα καθιστά τα υπόλοιπα άσχετα.

Πρώτον, το λογισμικό πρέπει να τρέχει ως μακρόβια διεργασία που επιβιώνει της συντήρησης. Δεύτερον, η υλοποίηση πρέπει να μπορεί να δημιουργήσει τη δική της εικονική διεπαφή· στο Linux αυτό συνήθως σημαίνει άνοιγμα του /dev/net/tun με τη σχετική διαχειριστική άδεια, όπως η τεκμηρίωση του πυρήνα για το TUN/TAP περιγράφει, αν και δεν χρησιμοποιεί κάθε σχεδιασμός VPN αυτή τη συσκευή. Τρίτον, οι πελάτες πρέπει να φτάνουν στον ακροατή στη δημόσια διεύθυνση, στο μεταφορικό μέσο και στη θύρα που σκοπεύετε, και ένας αντίστροφος διαμεσολαβητής ιστού που δέχεται HTTPS δεν λέει τίποτα για ένα άσχετο πρωτόκολλο στον ίδιο αριθμό. Τέταρτον, η επιτρεπόμενη κίνηση πρέπει να μπορεί να προχωρήσει, με διαδρομές, προώθηση και οποιαδήποτε μετάφραση υποστηρίζεται πραγματικά.

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

Πού σταματάει ένας λογαριασμός ιστού

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

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

Όταν ένας κεντρικός υπολογιστής πρέπει να τρέξει και τα δύο

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

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

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

Λύστε το σε δοκιμαστικό κεντρικό υπολογιστή με τέσσερις εντολές

Πριν μεταφέρετε, νοικιάστε τη μικρότερη παρουσία του προϊόντος-στόχου για μία ώρα και δοκιμάστε τις τέσσερις δυνατότητες άμεσα. Το να μαντεύετε από πίνακα χαρακτηριστικών σπαταλά λιγότερα χρήματα από έναν χρόνο με λάθος πλάνο, αλλά πολύ περισσότερο χρόνο.

Εκτελέστε αυτές στον δοκιμαστικό υπολογιστή και διαβάστε τις αποτυχίες ως απαντήσεις, όχι ως εμπόδια:

ls -l /dev/net/tun
sudo ip tuntap add dev tun9 mode tun && sudo ip link del tun9
sysctl net.ipv4.ip_forward
ss -lunp | head

Οι δύο πρώτες γραμμές λένε αν μπορεί να υπάρξει καθόλου συσκευή σήραγγας. Η τρίτη αναφέρει αν ο κεντρικός υπολογιστής μπορεί να προωθεί πακέτα, και η τέταρτη δείχνει τι ήδη ακούει ώστε μια σύγκρουση θύρας να πιαστεί νωρίς. Ένας πάροχος που αποτυγχάνει στη δεύτερη γραμμή μπορεί παρ’ όλα αυτά να υποστηρίζει υλοποίηση στον χώρο χρήστη, γι’ αυτό ονομάστε τον μηχανισμό που χρειάζεστε και όχι την κατηγορία προϊόντος όταν ρωτάτε την υποστήριξή τους.

Σχετικά άρθρα