Με το ZeroTier θα δικτυώσουμε απομακρυσμένες συσκευές χωρίς να χρειαζόμαστε στατικές IP, ρυθμίσεις σε router, firewalls κλπ. και θα τα εμφανίζουμε σαν συσκευές στο τοπικό μας δίκτυο.

Τι είναι το ZeroTier

Το ZeroTier είναι η εταιρεία που παρέχει ένα ανοιχτού κώδικα λογισμικό, zerotier-one, για την δημιουργία και διαχείριση virtual software defined networks (SDNs).

Με το ZeroTier ο διαχειριστής μπορεί να δημιουργήσει ένα εικονικό τοπικό δίκτυο συσκευών τα οποία όμως δεν είναι απαραίτητο ότι είναι στο ίδιο δίκτυο, κτήριο, πόλη, χώρα ή ήπειρο.

Με αυτό τον τρόπο διευκολύνει την δουλειά του όταν θέλει π.χ. να συνδεθεί απομακρυσμένα σε κάποια από αυτές τις συσκευές π.χ. με SSH, RDP, VNC, Remmina κλπ. Σε διαφορετική περίπτωση, θα πρέπει πρώτα να διασφαλίσει τις απαραίτητες ρυθμίσεις σε routers, firewalls, IPs κλπ για να μπορέσει να δημιουργήσει μια ασφαλής σύνδεση π.χ. VPN.

Advertisements

Επίσης, με το zerotier, η σύνδεση μεταξύ των συσκευών είναι peer-2-peer και κρυπτογραφημένη από-άκρο-σε-άκρο. Χρησιμοποιείται ασύμμετρη κρυπτογράφηση δημόσιου κλειδιού βασισμένη στην Curve25519, μια παραλλαγή ελλειπτικής καμπύλης 256-bit. Όλη η κυκλοφορία κρυπτογραφείται από άκρη σε άκρη στο επίπεδο OSI 1 χρησιμοποιώντας το Salsa20 256-bit και γίνεται έλεγχος ταυτότητας χρησιμοποιώντας τον αλγόριθμο ελέγχου ταυτότητας μηνυμάτων Poly1305 (MAC). Το MAC υπολογίζεται μετά από την κρυπτογράφηση (encrypt-then-MAC) και η σύνθεση κρυπτογράφησης/MAC που χρησιμοποιείται είναι ταυτόσημες με την εφαρμογή αναφοράς NaCl.

Κάθε συνδεδεμένη συσκευή, εκτός από την τοπική IP που λαμβάνει από το router του, λαμβάνει και μια IP από το ZeroTier εικονικό δίκτυο το οποίο «βλέπουν» οι συνδεδεμένες συσκευές.

Σύνδεση δύο οι περισσοτέρων συσκευών με το ZeroTier

Όσο και αν πολύπλοκα ακούστηκαν αυτά, τόσο απλούστερη είναι η προσθήκη συσκευών στο εικονικό τοπικό δίκτυό μας.

  1. Πάμε στο https://zerotier.com και δημιουργούμε έναν λογαριασμό
  2. Αφού συνδεθείτε πατήστε «Create network». Αυτό θα σας δώσει το Network ID στο οποίο παρακάτω θα προσθέσετε τις συσκευές σας.
  3. Στις ρυθμίσεις του, κρατήστε τις προεπιλογές που σας έχει δώσει
  4. Για να προσθέσετε τις συσκευές, πηγαίνετε σε κάθε συσκευή και κάνετε εγκατάσταση το zerotier client https://www.zerotier.com/download.shtml
  5. Έπειτα σε κάθε συσκευή (τουλάχιστον 2 συσκευές), μέσω του λογισμικού zerotier client, κάνετε «Join network» προσθέτοντας το Network ID του λογαριασμού σας για να εμφανιστούν οι συσκευές στο εικονικό δίκτυό σας.
  6. Τέλος πηγαίνετε στον ZeroTier λογαριασμό σας και τικάρετε το κουτάκι αριστερά των εμφανιζόμενων συσκευών, για να επιτρέπετε να βλέπουν τις άλλες συσκευές του δικτύου σας.

Αυτό ήταν! Πλέον οι συσκευές θα είναι λες και βρίσκονται κάτω από το ίδιο router ενώ μπορεί να βρίσκονται σε άλλα δίκτυα.

Advertisements

Σύνδεση Debian laptop και RaspberryPi 4

Ακολουθεί ένα παράδειγμα που ακολούθησα τα παραπάνω βήματα για να έχω πρόσβαση SSH στο Raspberry Pi4 του σπιτιού από όπου και αν βρίσκομαι χωρίς να χρειάζεται να έχω κάποια static IP, DDNS name, Port Forwarding κλπ.

  • Αφού έχω ακολουθήσει μια φορά τα βήματα 1-3, πήγα στο Debian laptop και έτρεξα τον εγκαταστάτη που δίνουν:
curl -s 'https://raw.githubusercontent.com/zerotier/ZeroTierOne/master/doc/contact%40zerotier.com.gpg' | gpg --import && \
if z=$(curl -s 'https://install.zerotier.com/' | gpg); then echo "$z" | sudo bash; fi
  • Αφού ολοκληρώθηκε πλέον έχω εγκατεστημένη την υπηρεσία διασύνδεσης με το zerotier. Για να προσθέσω το Debian στο δίκτυο έτρεξα:
sudo zerotier-cli join <NetworkID>

Τα ίδια έτρεξα και στο Raspberry Pi 4 που τρέχει Ubuntu 20.04 arm64bit.

Τέλος πήγα στο ZeroTier λογαριασμό και τίκαρα το κουτάκι αριστερά των εμφανιζόμενων συσκευών, για να επιτρέψω να βλέπουν τις άλλες συσκευές μου.

zerotier enable auth

Πλέον μπορώ να κάνω SSH στο RaspberryPi, να δημιουργήσω VNC σύνδεση, χωρίς να κάνω ρυθμίσεις στο απομακρυσμένο router.

Επίλογος

Μπορείτε να φανταστείτε τον ZeroTier λογαριασμό σας κάτι σαν παγκόσμιο router στο οποίο βάζετε συσκευές για να «μιλάνε» μεταξύ τους χωρίς να σας νοιάζει το που βρίσκονται. Το zerotier μπορείτε να το προσθέσετε και στο MikroTik router σας.

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