Outline: Εύχρηστο και ανοιχτού κώδικα εργαλείο εγκατάστασης VPN

outline-eukolo-dwrean-vpn

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

Ένα εικονικό ιδιωτικό δίκτυο (VPN) σάς επιτρέπει να προστατεύετε το ιδιωτικό σας απόρρητο δρομολογώντας την διαδικτυακή σας κίνηση μέσω κρυπτογραφημένης «σήραγγας» σε έναν απομακρυσμένο διακομιστή.

outline-eukolo-dwrean-vpnΥπάρχουν αρκετές εταιρείες που παρέχουν VPN συνδέσεις (συνδρομητικά) για να μην χρειάζεται να στήνετε μόνοι σας έναν VPN server. Αυτό είναι ιδιαίτερα σημαντικό για εταιρείες αλλά και επαγγελματίες (π.χ. δημοσιογράφοι) οι οποίο θέλουν να νιώθουν ασφαλείς από αδιάκριτα βλέμματα. Φυσικά χρησιμοποιώντας μια συνδρομητική VPN σύνδεση σημαίνει ότι εμπιστεύεστε απόλυτα τον πάροχο της VPN σύνδεσης για την προστασία των προσωπικών σας πληροφοριών και της διαδικτυακής σας κίνησης.

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

Τον Νοέμβριο του 2017 το Outline υποβλήθηκε σε έλεγχο από τρίτους, συγκεκριμένα από την μη κερδοσκοπική εταιρεία Radically Open Security και τα αποτελέσματα έχουν δημοσιοποιηθεί. Τα αποτελέσματα της έρευνάς τους, όπως αναφέρεται στο σχετικό PDF είναι :

Η τεχνολογία που επιλέχθηκε για το Outline είναι ένα καλό θεμέλιο για την κατασκευή αξιόπιστων διεπαφών χρήστη ανεξάρτητα από το λειτουργικό σύστημα. Οι λίγες διεπαφές με το λογισμικό τρίτων κατασκευαστών (shadowsocks-libev και tun2socks) και η είσοδος χρηστών ελέγχθηκαν ενδελεχώς για ελαττώματα. Συνολικά, η ιδέα του Outline φαίνεται να είναι κατάλληλη για να επιτρέπει στους χρήστες να δημιουργούν, να χρησιμοποιούν και να μοιράζονται το δικό τους VPN.

Τι χρειάζεστε πριν τρέξετε την εφαρμογή Outline

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

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

Για την φιλοξενία της υποδομής VPN που δημιουργεί το Outline θα χρειαστείτε ένα από τα παρακάτω :

  • Λογαριασμό σε μια από τις εταιρείες DigitalOcean, Amazon EC2, Google Computer Engine, Linode, Liquid Web, ή Vultr.
  • Εναλλακτικά δικό σας server σε πάροχο της προτίμησης σας

Για να δημιουργήσετε την VPN υποδομή και σύνδεση θα χρειαστείτε:

  • Outline Manager (διαθέσιμο για Linux και Windows)
  • Outline Client (διαθέσιμο για Android και Windows)

Λήψη και χρήση του Outline Manager

Για τις δοκιμές μου θα χρησιμοποιήσω δικό μου Ubuntu server 16.04  οπότε θα δείτε τι χρειάζεται να κάνετε αν δεν διαθέτεται λογαριασμό σε κάποια από τις εταιρείες που προαναφέρθηκαν.

Πρώτα λοιπόν θα κατεβάσουμε το Outline Manger στον υπολογιστή μας για να μας στήσει την υποδομή και θα κάνουμε εγκατάσταση την υπηρεσία docker στον server μας.

  1. Κατεβάστε το Outline Manager στον υπολογιστή σας και κάντε απλά διπλό κλικ για να ανοίξει η εφαρμογή. (Στο Linux ίσως χρειαστεί να κάνετε δεξί κλικ στο Outline Manager -> δικαιώματα -> να επιτρέπετε η εκτέλεση ως εφαρμογή)
  2. Ανοίξτε ένα τερματικό και συνδεθείτε στον απομακρυσμένο Linux server σας με SSH και κάντε εγκατάσταση το docker και ενεργοποιείστε την υπηρεσία.

Πάμε, πίσω στο Outline Manager όπου αφού ανοίξετε την εφαρμογή σας λέει να επιλέξετε διακομιστή για να στηθεί η υποδομή. Επειδή όπως είπα θα χρησιμοποιήσουμε server που δεν είναι σε κάποιον από τους προτεινόμενους παρόχους επιλέγουμε ‘Already Have server

Θα μας εμφανίσει δύο βήματα για να ολοκληρωθεί η εγκατάσταση της υποδομής στον server:

Βήμα πρώτο: Στο τερματικό όπου είμαστε συνδεδεμένοι μας λέει να τρέξουμε την παρακάτω εντολή:

 wget -qO- https://raw.githubusercontent.com/Jigsaw-Code/outline-server/master/src/server_manager/install_scripts/install_server.sh | sudo bash
outline-eukolo-dwrean-vpn-entoli
Αντιγράφουμε την εντολή και την τρέχουμε στον server μας

Το οποίο θα κάνει αυτόματα λήψη ενός Docker Image, θα το εγκαταστήσει, θα το ενεργοποιήσει, θα ρυθμίσει το watchtower (για να έχουμε πάντα την τελευταία έκδοση της υποδομής) και γενικά θα στήσει όλη την απαραίτητη υποδομή μέσα σε ένα docker container χωρίς έτσι να τροποποιήσει η να επηρεάσει τον υπόλοιπο server μας !

Βήμα δεύτερο: Μόλις ολοκληρωθεί η εγκατάσταση του VPN server (στο container) θα μας εμφανίσει μεταξύ αγκυλών, στο τερματικό ένα ‘apiURL’ και ένα ‘certSha256’. Αντιγράφουμε «μαζί με τις αγκύλες» το αποτέλεσμα και το κάνουμε επικόλληση στο δεύτερο βήμα του Outline Manager. Με αυτό τον τρόπο γίνεται η πιστοποίηση και σύνδεση για την διαχείριση του VPN μας.

outline-eukolo-dwrean-vpn-api
Κάνουμε αντιγραφή και επικόλληση, ότι υπάρχει ανάμεσα στις αγκύλες, μαζί με τις αγκύλες

Μόλις αποθηκεύσετε, θα εμφανιστεί η καρτέλα συνδέσεων. Σε αυτήν μπορείτε να πατήσετε ‘Get Connected’ για να συνδεθείτε με τον υπολογιστή στον οποίο τρέχετε το Outline Manger ή να κάνετε κλικ στο ‘Add Key’ για να δημιουργήστε ένα μοναδικό λινκ το οποίο θα δώσετε σε φίλους ή συγγενείς (με Android ή Windows) για να χρησιμοποιούν το VPN server σας (φυσικά να δημιουργείτε ένα κλειδί για κάθε συσκευή).

outline-eukolo-dwrean-vpn-link-send
Το Link μπορούμε να το στείλουμε στον εαυτό μας ή σε φίλους και συγγενείς

Μπορείτε φυσικά να στείλετε το λινκ στον εαυτό σας για να το ανοίξετε στο Android κινητό σας και μόλις το ανοίξετε θα ξεκινήσει η διαδικασία εγκατάστασης του Outline Client.

Λήψη και χρήση του Outline Client

Πως λοιπόν συνδέεστε στο VPN που μόλις φτιάξατε; Αυτό εξαρτάται από την συσκευή με την οποία θα συνδεθείτε:

  • Για Windows και Android θα χρειαστεί να κατεβάσετε τον Outline client (από την ίδια σελίδα)
  • Για Linux δεν χρειάζεται κάποια εφαρμογή μιας και μπορείτε να συνδεθείτε μέσω τερματικού (όπως θα δούμε παρακάτω).

Στην δοκιμή που έκανα στον υπολογιστή μου με Ubuntu, στο Outline Manager και στην καρτέλα διαχείρισης πατώντας το ‘GET CONNECTED’ μου εμφάνισε τα δυο απαραίτητα βήματα για να μπορέσω να συνδεθώ:

Βήμα πρώτο: Ανοίγουμε ένα τερματικό και κάνουμε εγκατάσταση το shadowsocks

sudo apt install shadowsocks-libev

Βήμα δεύτερο: Κάνουμε αντιγραφή από το Outline Manager και επικόλληση στο τερματικό την εντολή που θα μας συνδέσει στο VPN μας. θα είναι της παρακάτω μορφής:

ss-local -s 1.2.3.4 -p 1234 -b localhost -l 1081 -k password -m cipher -u
outline-eukolo-dwrean-vpn-termatiko
Αφού εγκαταστήσουμε το shadowsocks απλά τρέχουμε την εντολή που μας δίνει

Μόλις τρέξουμε την εντολή που μας δίνει, θα δούμε ότι συνδεθήκαμε στον VPN Server. Φυσικά, μπορείτε να βάλετε αυτή την εντολή σε ένα script να ξεκινάει αυτόματα μόλις μπείτε στο desktop σας ή να το βάλετε σε κάποιο alias για να είναι εύκολο στην εκτέλεση.

Προσοχή όμως διότι αυτή η σύνδεση στην πραγματικότητα δημιουργεί ένα tunneling στο localhost μας (ως διακομιστή μεσολάβησης) και άρα οι εφαρμογές που θέλουμε να συνδεθούν στο διαδίκτυο μέσω του VPN μας θα πρέπει να ρυθμιστούν ώστε να διέρχονται μέσω αυτής της ασφαλής και κρυπτογραφημένης σύνδεσης. Ας δούμε λοιπόν με ένα παράδειγμα, ρυθμίζοντας ίσως την πιο σημαντική μας εφαρμογή, το browser μας (π.χ. Firefox)

Οδηγίες για το Mozilla Firefox:

  • Ανοίξτε τις ρυθμίσεις και στις επιλογές δικτύου κάντε κλικ στις ρυθμίσεις
  • Επιλέξτε «Χειροκίνητη ρύθμιση διακομιστή μεσολάβησης»
  • Στο SOCKS Host: Localhost
  • Στο SOCKS Port: Αριθμός Port που σας έδωσε στην εντολή του Outline Manager
  • Από κάτω Επιλέξτε «SOCKS v5»
  • Τέλος Επιλέξτε «Proxy DNS όταν χρησιμοποιείτε SOCKS v5»
  • Κάντε κλικ στο «OK» και είστε έτοιμοι !
outline-eukolo-dwrean-vpn-fireox-proxy
Ρυθμίζουμε το Firefox ώστε κάθε δραστηριότητά μας να περνάει μέσα απο το proxy μας

Οδηγίες για το Google Chrome / Chromium

Το Google Chrome / Chromium δεν έχει μια γραφική διεπαφή στις ρυθμίσεις του για τη δημιουργία ενός διακομιστή μεσολάβησης. Αντίθετα, πρέπει να τρέξετε το Chrome χρησιμοποιώντας μια ειδική παράμετρο που του δίνει εντολή να δρομολογήσει όλη την διαδικτυακή κίνηση μέσω του τοπικού Shadowsocks (στο localhost):

google-chrome --proxy-server="socks5://localhost:PORT"

όπου PORT φυσικά αυτό που σας έδωσε το Outline manager. Εναλλακτικά, υπάρχουν επεκτάσεις Chrome που ενδέχεται (δεν τα έχω δοκιμάσει) να σας προσφέρουν μια διεπαφή για να ρυθμίσετε το Chrome να χρησιμοποιεί τον διακομιστή σας.

Σε τι διαφέρει το Outline από ένα παραδοσιακό VPN

Κάτω από το καπό, το Outline βασίζεται στο πρωτόκολλο Shadowsocks. Και αν είστε εξοικειωμένοι με τα πρωτόκολλα VPN, το Shadowsocks δεν είναι κάτι σαν το OpenVPN, το IPSec ή το WireGuard. Στην πραγματικότητα, το Shadowsocks δεν είναι καν ένα πρωτόκολλο VPN.

Το Shadowsocks είναι ένα project ανοιχτού κώδικα για τη δημιουργία κρυπτογραφημένου socks5 proxy (διαμεσολαβητή) με στόχο την ανακατεύθυνση της κίνησης στο διαδίκτυο μέσω αυτού του proxy. Τα παραδοσιακά πρωτόκολλα VPN μπορούν να αποκλειστούν από κάποιους παρόχους internet/υπηρεσίες επειδή χρησιμοποιούν συγκεκριμένες θύρες και «μοιάζουν με κυκλοφορία VPN». Αντίθετα, η κίνηση μέσω του socks5 proxy μοιάζει με κανονική διαδικτυακή κίνηση οπότε και δεν μπορούν να το διακόψουν.

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

Επίλογος

Όπως είδατε, η δουλειά μας ολοκληρώνεται με απλή αντιγραφή και επικόλληση εντολών που μας δίνει το Outline Manager (στην περίπτωση που έχετε Linux) η με την χρήση του του Outline Client.

Στο παρασκήνιο, όταν τρέξουμε το Outline manager, στήνει αυτόματα VPN σε docker, με DNS προωθημένο μέσω tunneling και self-signed ssl certificate. Η σύνδεση σε αυτό, όπως είδαμε γίνεται μέσω shadowsocks proxy.

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

Advertisements

Μια σκέψη σχετικά μέ το “Outline: Εύχρηστο και ανοιχτού κώδικα εργαλείο εγκατάστασης VPN

Σου άρεσε το άρθρο; Πες την άποψή σου... έστω και Ανώνυμα:

Εισάγετε τα παρακάτω στοιχεία ή επιλέξτε ένα εικονίδιο για να συνδεθείτε:

Λογότυπο WordPress.com

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό WordPress.com. Αποσύνδεση /  Αλλαγή )

Φωτογραφία Google+

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Google+. Αποσύνδεση /  Αλλαγή )

Φωτογραφία Twitter

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Twitter. Αποσύνδεση /  Αλλαγή )

Φωτογραφία Facebook

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Facebook. Αποσύνδεση /  Αλλαγή )

Σύνδεση με %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.