To Tor (συντομογραφία του The onion router) είναι ένα σύστημα που δίνει στους χρήστες του τη δυνατότητα ανωνυμίας στο Διαδίκτυο.
Το λογισμικό Tor δρομολογεί τη διαδικτυακή κίνηση μέσω ενός παγκόσμιου εθελοντικού δικτύου διακομιστών με σκοπό να αποκρύψει την τοποθεσία ενός χρήστη ή τη χρήση της κίνησης από οποιονδήποτε διεξάγει διαδικτυακή παρακολούθηση ή ανάλυση της διαδικτυακής κίνησης.
Η χρήση Tor κάνει δύσκολη την ανίχνευση διαδικτυακής δραστηριότητας του χρήστη, συμπεριλαμβανομένου επισκέψεων σε κάποια ιστοσελίδα, διαδικτυακές αναρτήσεις, προγράμματα άμεσων μηνυμάτων και άλλων μέσων διαδικτυακής επικοινωνίας, κι έχει σκοπό να προστατεύσει την ατομική ελευθερία, την ιδιωτικότητα και τη δυνατότητα του χρήστη να διεξάγει εμπιστευτικές εργασίες χωρίς να καταγράφονται οι διαδικτυακές δραστηριότητές του.
Το “Onion routing” αναφέρεται στη στρωματοποιημένη φύση της υπηρεσίας κρυπτογράφησης: τα αρχικά δεδομένα κρυπτογραφούνται και επανακρυπτογραφούνται πολλές φορές, έπειτα στέλνονται μέσω διαδοχικών κόμβων του Tor, ο καθένας από τους οποίους αποκρυπτογραφεί ένα «στρώμα» κρυπτογράφησης προτού μεταφέρει τα δεδομένα στον επόμενο κόμβο και τελικά στον προορισμό τους. Αυτό μειώνει την πιθανότητα να αποκρυπτογραφηθούν ή να γίνουν κατανοητά κατά τη μεταφορά τους τα αρχικά δεδομένα. Το Tor είναι ελεύθερο λογισμικό πελάτη και η χρήση του είναι δωρεάν.
Μπορείτε να κατεβάσετε το Tor από εδώ.
Βήμα μηδέν: Ξεκινήστε το Tor
Πριν ξεκινήσετε, πρέπει να βεβαιωθείτε ότι:
- Το Tor είναι σε λειτουργία,
- το ρυθμίσατε σωστά.
Βήμα πρώτο: Εγκαταστήστε έναν διακομιστή ιστού τοπικά
Πρώτον, πρέπει να ρυθμίσετε έναν διακομιστή ιστού τοπικά, για παράδειγμα nginx ή lighttpd (το apache δεν είναι η καλύτερη επιλογή για ανωνυμία.
Η δημιουργία ενός διακομιστή ιστού μπορεί να είναι περίπλοκη. Δεν πρόκειται να καλύψουμε τον τρόπο δημιουργίας ενός διακομιστή ιστού εδώ. Εάν κολλήσετε ή θέλετε να κάνετε περισσότερα, βρείτε έναν φίλο που μπορεί να σας βοηθήσει. Σας συνιστούμε να εγκαταστήσετε έναν νέο ξεχωριστό διακομιστή ιστού για την υπηρεσία onion, καθώς ακόμα κι αν έχετε ήδη εγκαταστήσει ένα, μπορεί να τον χρησιμοποιείτε (ή να τον χρησιμοποιήσετε αργότερα) για έναν κανονικό ιστότοπο.
Πρέπει να διαμορφώσετε τον web server σας, ώστε να μην παρέχει πληροφορίες για εσάς, τον υπολογιστή σας ή την τοποθεσία σας. Φροντίστε να συνδέσετε τον web server μόνο με το localhost (εάν οι χρήστες μπορούσαν να φτάσουν απευθείας σε αυτόν, θα μπορούσαν να επιβεβαιώσουν ότι ο υπολογιστής σας είναι αυτός που προσφέρει την υπηρεσία onion).
Βεβαιωθείτε ότι τα μηνύματα σφάλματος δεν μπορούν να ανακτηθούν από κάποιον άλλο, το όνομα κεντρικού υπολογιστή σας ή άλλες συμβουλές. Εξετάστε το ενδεχόμενο να τρέξετε τον web server σε ένα περιβάλλον δοκιμών ή VM για να περιορίσετε τη ζημιά από ευπάθειες στον κώδικα.
Μόλις ρυθμιστεί ο web server σας, βεβαιωθείτε ότι λειτουργεί:
ανοίξτε το πρόγραμμα περιήγησής σας και μεταβείτε στη διεύθυνση http: // localhost: 8080 / , όπου το 8080 είναι η θύρα διακομιστή ιστού που επιλέξατε κατά τη ρύθμιση (μπορείτε να επιλέξετε οποιαδήποτε θύρα, το 8080 είναι απλώς ένα παράδειγμα ). Στη συνέχεια, δοκιμάστε να βάλετε ένα αρχείο στον κύριο κατάλογο html και βεβαιωθείτε ότι εμφανίζεται όταν έχετε πρόσβαση στον ιστότοπο.
Βήμα δεύτερο: Ρύθμιση της υπηρεσίας Tor
Στη συνέχεια, πρέπει να ρυθμίσετε την υπηρεσία tor ώστε να οδηγεί στον τοπικό web server σας.
Αρχικά, ανοίξτε το αρχείο torrc στον αγαπημένο σας επεξεργαστή κειμένου.
Το αχείο αποτελείται από ομάδες γραμμών, καθεμία από τις οποίες αντιπροσωπεύει μία υπηρεσία onion. Όλες οι γραμμές περιέχουν ένα # στην αρχή, κάτι που δείχνει ότι οι υπηρεσίες Tor είναι απενεργοποιημένες. Κάθε ομάδα γραμμών αποτελείται από μία γραμμή HiddenServiceDir και μία ή περισσότερες γραμμές HiddenServicePort :
- Το HiddenServiceDir είναι ένας κατάλογος όπου το Tor θα αποθηκεύει πληροφορίες σχετικά με αυτήν την υπηρεσία Tor. Συγκεκριμένα, το Tor θα δημιουργήσει ένα αρχείο εδώ με το όνομα hostname, το οποίο θα σας πει το URL του Tor. Δεν χρειάζεται να προσθέσετε άλλα αρχεία σε αυτόν τον φάκελο. Βεβαιωθείτε ότι δεν είναι ο ίδιος φάκελος με τον φάκελο hidserv που δημιουργήσατε κατά τη ρύθμιση του thttpd, καθώς το HiddenServiceDir περιέχει μυστικές πληροφορίες!
- Το HiddenServicePort σάς επιτρέπει να καθορίσετε μια εικονική θύρα (δηλαδή, ποια θύρα οι άνθρωποι που έχουν πρόσβαση στην υπηρεσία Tor θα πιστεύουν ότι χρησιμοποιούν) και μια διεύθυνση IP-θύρα για ανακατεύθυνση των συνδέσεων σε αυτήν την εικονική θύρα.
Προσθέστε τις ακόλουθες γραμμές στο torrc σας:
HiddenServiceDir /Library/Tor/var/lib/tor/ hidden_service /HiddenServicePort 80 127.0.0.1:8080
Μπορεί να θέλετε να αλλάξετε τη γραμμή HiddenServiceDir , για να οδηγεί σε έναν πραγματικό φάκελο με δικαιώματα ανάγνωσης/εγγραφής για τον χρήστη που θα εκτελεί το Tor.
Η παραπάνω γραμμή θα λειτουργεί εάν χρησιμοποιείτε το πακέτο OS X Tor.
Στο Unix, δοκιμάστε το “/home/username/hidden_service/” και συμπληρώστε το δικό σας όνομα χρήστη αντί του “username”.
Στα Windows μπορείτε να επιλέξετε:
HiddenServiceDir C:\Users\username\Documents\tor\hidden_service HiddenServicePort 80 127.0.0.1:8080
Σημειώστε ότι από την έκδοση 0.2.6, τόσο το SocksPort όσο και το HiddenServicePort υποστηρίζουν υποδοχές Unix. Αυτό σημαίνει ότι μπορείτε να τοποθετήσετε το HiddenServicePort σε μια υποδοχή Unix:
HiddenServiceDir /Library/Tor/var/lib/tor/hidden_service/ HiddenServicePort 80 unix:/path/to/socket
Τώρα αποθηκεύστε το torrc και επανεκκινήστε το Tor σας.
Εάν το Tor ξεκινήσει ξανά, είσαστε σε καλό δρόμο. Διαφορετικά, κάτι δεν πάει καλά. Ρίξτε μια πρώτη ματιά στα αρχεία καταγραφής σας (logs) για συμβουλές. Θα δείτε ίσως μερικές προειδοποιήσεις ή μηνύματα σφάλματος που θα σας δώσουν μια ιδέα για το τι πήγε στραβά. Συνήθως υπάρχουν τυπογραφικά λάθη στο torrc ή λάθη σε δικαιώματα καταλόγου.
Όταν ξεκινήσει το Tor, θα δημιουργήσει αυτόματα το HiddenServiceDir που καθορίσατε (εάν είναι απαραίτητο) και θα δημιουργήσει δύο αρχεία εκεί.
ιδιωτικό_κλειδί
Πρώτον, το Tor θα δημιουργήσει ένα νέο δημόσιο/ιδιωτικό κλειδί για την υπηρεσία Tor. Θα υπάρχει σε ένα αρχείο που ονομάζεται “private_key”. Μην μοιραστείτε αυτό το κλειδί με άλλους. Αν το κάνετε, θα μπορούν να πλαστοπροσωπήσουν την υπηρεσία Tor που τρέχετε.
Όνομα κεντρικού υπολογιστή
Το άλλο αρχείο που θα δημιουργήσει το Tor ονομάζεται “hostname”. Περιέχει μια σύντομη περίληψη του δημόσιου κλειδιού σας, και θα μοιάζει με κάτι τέτοιο: igurugrnewsxiuqc6.onion.
Αυτό είναι το δημόσιο όνομα για την υπηρεσία σας και μπορείτε να το δώσετε, να το δημοσιεύσετε σε ιστότοπους, να το τοποθετήσετε σε επαγγελματικές κάρτες κ.λπ.
Εάν το Tor τρέχει ως διαφορετικός χρήστης από εσάς, για παράδειγμα σε OS X, Debian ή Red Hat, τότε ίσως χρειαστεί να έχετε δικαιώματα root για να μπορείτε να δείτε αυτά τα αρχεία.
Όταν επανεκκινήσετε το Tor, θα καθυστερήσει λίγο γιατί θα επιλέγει σημεία εισαγωγής στο δίκτυο Tor και θα δημιουργεί έναν περιγραφέα της υπηρεσίας Tor. Πρόκειται για μια υπογεγραμμένη λίστα σημείων εισαγωγής μαζί με το πλήρες δημόσιο κλειδί της υπηρεσίας. Δημοσιεύει ανώνυμα αυτήν την περιγραφή σε διάφορους listing servers για να μπορέσουν να αποκτήσουν ανώνυμη πρόσβαση στο διακομιστή κι άλλα άτομα.
Βήμα τρίτο: Πιο προηγμένες συμβουλές
Εάν σκοπεύετε να διατηρήσετε την υπηρεσία σας διαθέσιμη για μεγάλο χρονικό διάστημα, ίσως θέλετε να δημιουργήσετε ένα αντίγραφο ασφαλείας του αρχείου private_key κάπου.
Αν θέλετε να πολλές εικονικές θύρες για μία υπηρεσία onion, απλώς προσθέστε περισσότερες γραμμές στο HiddenServicePort.
Εάν θέλετε να τρέχετε πολλές υπηρεσίες Tor από τον ίδιο Tor client, απλώς προσθέστε μια άλλη γραμμή HiddenServiceDir . Όλες οι ακόλουθες γραμμές HiddenServicePort αναφέρονται σε αυτήν τη γραμμή HiddenServiceDir , έως ότου προσθέσετε μια άλλη γραμμή HiddenServiceDir :
HiddenServiceDir /usr/local/etc/tor/hidden_service/ HiddenServicePort 80 127.0.0.1:8080 HiddenServiceDir /usr/local/etc/tor/other_hidden_service/ HiddenServicePort 6667 127.0.0.1:6667 HiddenServicePort 22 127.0.0.1:22
Για να δημιουργήσετε μια υπηρεσία Tor στο Raspbian ρίξτε μια ματιά στο github του Alec Muffett Enterprise Onion Toolkit.
Table of Contents
Εξουσιοδότηση πελάτη
Για να ρυθμίσετε τον έλεγχο ταυτότητας cookie για υπηρεσίες v2 , ανατρέξτε στις εγγραφές για τις επιλογές HidServAuth και HiddenServiceAuthorizeClient στο εγχειρίδιο.
Πρώτα προσθέστε την ακόλουθη γραμμή στο αρχείο torrc της υπηρεσίας Tor σας:
HiddenServiceAuthorizeClient [auth-type] [service-name]
Επανεκκινήστε/επαναλάβετε τη φόρτωση και διαβάστε το cookie από το αρχείο ονόματος κεντρικού υπολογιστή της υπηρεσίας Tor σας, για παράδειγμα στο
/var/lib/tor/hidden_service_path/hostname.
Για να αποκτήσετε πρόσβαση σε αυτόν με έναν πελάτη, προσθέστε την ακόλουθη γραμμή στο torrc και (εκ νέου) ξεκινήστε / φορτώστε ξανά:
HidServAuth [onion-adress] [auth-cookie] [service-name]
Τώρα μπορείτε να περιηγηθείτε στη διεύθυνση της υπηρεσίας Tor.
Για να ρυθμίσετε την Εξουσιοδότηση πελάτη για υπηρεσίες v3 ( “next-gen” ) όπως ορίζεται στο rend-spec-v3.txt για την υπηρεσία tor που εκτελεί το Tor, ακολουθήστε τις οδηγίες στην Εξουσιοδότηση πελάτη . Σημειώστε ότι για να ανακαλέσετε clients θα πρέπει να κάνετε επανεκκίνηση της υπηρεσίας tor (δείτε #28275 ). Προς το παρόν πρέπει να δημιουργήσετε τα κλειδιά μόνοι σας με ένα script (όπως αυτά γραμμένα σε bash ή rust).
Για να αποκτήσετε πρόσβαση με ένα make-client Tor βεβαιωθείτε ότι έχετε το ClientOnionAuthDir στο torrc.
Στον κατάλογο <ClientOnionAuthDir>, δημιουργήστε ένα αρχείο .auth_private για την υπηρεσία Tor που αντιστοιχεί σε αυτό το κλειδί (δηλαδή ‘iguru_onion.auth_private’).
Τα περιεχόμενα του αρχείου <ClientOnionAuthDir> / <user>.auth_private πρέπει να μοιάζουν με:
<56-char-onion-addr- without-.onion-part>: descriptor:x25519:BBBEAUAO3PIFAH7SBGBI6A2QFAZBXG2NVN7HMBXFCZENJVF6C5AQ
Στη συνέχεια (εκ νέου) ξεκινήστε/φορτώστε ξανά και θα πρέπει να μπορείτε να περιηγηθείτε στη διεύθυνση υπηρεσίας onion.
Λειτουργική ασφάλεια
Οι διαχειριστές των υπηρεσιών Onion πρέπει να εφαρμόζουν σωστή λειτουργική ασφάλεια για την διαχείριση του συστήματος και την διατήρηση της ασφάλειας. Για ορισμένες προτάσεις ασφαλείας, βεβαιωθείτε ότι έχετε διαβάσει το έγγραφο “Tor Hidden (Onion) Services Best Practices” του Riseup . Επίσης, εδώ είναι μερικά ακόμη θέματα ανωνυμίας που πρέπει να έχετε υπόψη:
- Όπως αναφέρθηκε παραπάνω, προσέξτε να αφήσετε τον web server σας να αποκαλύψει πληροφορίες για εσάς, τον υπολογιστή σας ή την τοποθεσία σας. Για παράδειγμα, να μην μπορεί κανείς να προσδιορίσει αν ο server είναι thttpd ή Apache ή να μάθουν κάτι για το λειτουργικό σας σύστημα.
- Είναι γενικά καλή ιδέα να φιλοξενείτε υπηρεσίες Tor σε έναν client Tor παρά σε ένα relay Tor, καθώς ο χρόνος λειτουργίας του relay και άλλες ιδιότητες είναι δημόσια ορατές.
Ένα άλλο συνηθισμένο πρόβλημα είναι αν θα χρησιμοποιήσετε το HTTPS στο relay σας ή όχι. Ρίξτε μια ματιά σε αυτήν την ανάρτηση στο Tor Blog για να μάθετε περισσότερα σχετικά με αυτά τα ζητήματα.
Μπορείτε να χρησιμοποιήσετε το stem για να αυτοματοποιήσετε τη διαχείριση των υπηρεσιών Tor σας.
Τέλος, μπορείτε να χρησιμοποιήσετε τη λίστα αλληλογραφίας [tor-onions] για να συζητήσετε για την ασφαλή διαχείριση και λειτουργία των υπηρεσιών Tor onion.
Βήμα τέταρτο: Ρυθμίστε το Tor της επόμενης γενιάς (v3)
Αυτή είναι η νεότερη έκδοση των υπηρεσιών Tor (“v3“) και διαθέτει πολλές βελτιώσεις σε σχέση με το παλαιό σύστημα:
- Καλύτερη κρυπτογράφηση (αντικαταστάθηκαν τα SHA1/DH/RSA1024 με SHA3/ed25519/ curve25519)
- Βελτιωμένο πρωτόκολλο καταλόγου, για διαρροή πολύ λιγότερων πληροφοριών.
- Βελτιωμένο πρωτόκολλο καταλόγου, με μικρότερη επιφάνεια για στοχευμένες επιθέσεις.
- Καλύτερη ασφάλεια Tor κατά της πλαστοπροσωπίας.
- Πιο εκτεταμένο πρωτόκολλο introduction/rendezvous.
- Μια καθαρότερη και πιο αρθρωτή βάση κώδικα.
Για λεπτομέρειες δείτε Γιατί το Tor v3 είναι καλύτερα; .
Μπορείτε να προσδιορίσετε μια διεύθυνση Tor επόμενης γενιάς με το μήκος της: έχουν μήκος 56 χαρακτήρων, όπως στο iguru47i6kxnigurum6q7ib2s3uiguruqbsnzjpbi7utijcltosqeiguru.onion. Οι προδιαγραφές για τις υπηρεσίες Tor επόμενης γενιάς βρίσκονται εδώ .
Πώς να ρυθμίσετε τη δική σας υπηρεσία prop224
Είναι εύκολο και απλό! Απλά χρησιμοποιήστε το Tor torrc και προσθέστε το HiddenServiceVersion 3 στη λειτουργία του Tor σας torrc block.
Εδώ είναι ένα παράδειγμα torrc που έχει σχεδιαστεί για δοκιμές:
SocksPort auto HiddenServiceDir /home/user/tmp/hsv3 HiddenServiceVersion 3 HiddenServicePort 6667 127.0.0.1:6667
Στη συνέχεια, η διεύθυνση του Tor σας είναι στο /home/user/tmp/hsv3/hostname . Για να φιλοξενήσετε μια υπηρεσία v2 και v3 χρησιμοποιώντας δύο μπλοκ torrc υπηρεσίας Tor:
HiddenServiceDir /home/user/tmp/hsv2 HiddenServicePort 6667 127.0.0.1:6667 HiddenServiceDir /home/user/tmp/hsv3 HiddenServiceVersion 3 HiddenServicePort 6668 127.0.0.1:6667
Λάβετε υπόψη ότι το tor είναι αυστηρό σχετικά με τα δικαιώματα των φακέλων και δεν του αρέσει να μοιράζεται τα αρχεία του. Βεβαιωθείτε ότι έχετε περιορίσει την πρόσβαση ανάγνωσης και εγγραφής στον κατάλογο υπηρεσιών του Tor πριν από την επανεκκίνηση του tor.
Για τα περισσότερα συστήματα που βασίζονται σε Linux
chmod 700 -R /var/lib/tor
Για επανεκκίνηση, είναι ασφαλέστερο να μην χρησιμοποιείτε το SIGHUP απευθείας (δείτε το σφάλμα #21818 ), αλλά πρώτα να ελέγξετε την εγκυρότητα της διαμόρφωσης (ρύθμισης) . Σε συστήματα που βασίζονται στο Debian, το εργαλείο διαχείρισης υπηρεσιών το κάνει αυτό για εσάς:
service tor restart
Πώς να βοηθήσετε την ανάπτυξη Tor της επόμενης γενιάς
Ενημερώστε εάν εντοπίσετε σφάλματα! Το Tor ακόμα σε στάδιο δοκιμών και ενεργής ανάπτυξης. Εάν θέλετε να βοηθήσετε στην ανάπτυξη, ρίξτε μια ματιά στη λίστα των ανοιχτών σφαλμάτων prop224 .
Για τους ερευνητές η σελίδα wiki Onion Service Naming Systems θα μπορούσε να φανεί χρήσιμη.
Για εντοπισμό σφαλμάτων και για να μας στείλετε πιο χρήσιμα αρχεία καταγραφής, ενεργοποιήστε την καταγραφή πληροφοριών:
SafeLogging 0 Log notice file /home/user/tmp/hs/hs.log Log info file /home/user/tmp/hs/hsinfo.log
Για οποιαδήποτε πληροφορία και αν χρειαστείτε, είμαστε εδώ για να σας βοηθήσουμε να ανεβάσετε τη δικιά σας σελίδα στο Tor!