Del Deep Web, delle darknet e di TOR (The Onion Router) ne hanno già parlato in abbondanza dai blog alle testate giornalistiche alla televisione con dissertazioni più o meno approfondite e competenti, il più delle volte riferendosi ad esso come una parte dell’Internet nascosta, luogo virtuale di ritrovo di hacker (inteso come cracker), anarco-insurrezionalisti, spacciatori, truffatori, pedofili e criminali di vario genere. Niente di più falso!
Gli Special-use Top-level Domains di tipo .onion, che caratterizzano gli hidden services di TOR non sono registrati nella Internet DNS root, è quindi già di per sé sbagliato riferirsi al Deep web come Internet nascosto: il Deep web non fa parte dell’Internet!
Altro mito da sfatare, non è un posto dove compiere attività illegali è accettato. Piuttosto è un modo per navigare anonimamente, trovando una quantità indefinita di materiale didattico gratuito, un metodo grazie al quale attivisti ed amanti della libertà in genere possono rivelare al mondo le proprie idee senza temere alcuna ritorsione da parte dei regimi repressivi dei propri paesi di origine.
Detto ciò, non mi soffermerò ancora a parlare bene o male di TOR, né vi racconterò come accedere al Deep web tramite esso (bastano 5 minuti su Google e nessuna particolare competenza tecnica), voglio invece spiegarvi come creare un hidden service, un sito .onion visibile unicamente attraverso l’utilizzo di TOR, una porta aperta al mondo dedicata alla condivisione di contenuti in forma anonima. Per farlo non avremo bisogno di strumenti particolari, ci servirà solo un minimo di confidenza con l’interfaccia a linea di comando di Linux. Avremo bisogno di un server dove installare il sistema operativo, e di una connessione ad Internet. Non è necessario possedere una macchina server piantata nel soggiorno di casa, potremo affidarci ad un VPS o addirittura ad una macchina virtuale installata sul nostro PC.
Anonimità e sicurezza
Per realizzare questa guida ho utilizzato Debian 8 Jessie come sistema operativo, è open source e garantisce un’ottima stabilità, e Nginx come web server, anch’esso open source, possiede enormi vantaggi in questo scenario di utilizzo rispetto al più noto Apache, come riduzione nell’uso della RAM e ottimizzazione nell’esecuzione dei processi, maggiore sicurezza e semplicità di configurazione.
Al fine di garantire anonimità e sicurezza è necessario che la macchina che decideremo di utilizzare abbia il solo ed unico scopo di fungere da web server per il nostro hidden service. Sempre a questo proposito, ecco alcuni consigli per mantenere anonima la nostra identità:
- Iniziamo con un’installazione pulita del SO
- Non ospitiamo alcun TOR Relay sul server, gli IP dei relay sono visibili al mondo intero
- Evitiamo pagine dinamiche, limitiamoci a quelle statiche, evitiamo login, form e soprattutto linguaggi di scripting come JavaScript
- Evitiamo l’inclusione di servizi da fonti esterne
- Manteniamo sempre aggiornato il nostro sistema
SSH, Super User e aggiornamento
Parto dal presupposto che possediate già un server ed abbiate installato Debian 8 Jessie. Ci colleghiamo ad esso tramite SSH come Super Utente con il comando:
ssh root@[ip_del_server]
Una volta connessi, aggiorniamo il sistema operativo.
apt-get update apt-get upgrade
Cambiamo la porta di connessione di default di SSH e ne modifichiamo la configurazione affinché gli scanner di rete non possano identificare il sistema operativo installato sulla macchina. Per farlo apriamo con un editor testuale il file di configurazione.
nano /etc/ssh/sshd_config
Aperto il file aggiungiamo la seguente riga
DebianBanner no
e modifichiamo la riga Port 22 con una porta a nostro piacimento diversa da quella standard
Port 55666
Salviamo e chiudiamo il file, riavviamo il servizio e ci riconnettiamo tramite SSH attraverso la nuova porta
service ssh restart ssh -p 55666 root@[ip_del_server]
TOR, installazione e configurazione
Aggiungiamo le repository di TOR alle fonti del gestore dei pacchetti, apriamo il file delle fonti
nano /etc/apt/sources.list
e aggiungiamo le seguenti righe
deb http://deb.torproject.org/torproject.org jessie main deb-src http://deb.torproject.org/torproject.org jessie main
Importiamo la GPG Key di TOR
gpg --keyserver keys.gnupg.net --recv 886DDD89 gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -
aggiorniamo le fonti ed installiamo TOR
apt-get update apt-get install tor deb.torproject.org-keyring
apriamo il file di configurazione di TOR
nano /etc/tor/torrc
e lo modifichiamo decommentando le seguenti righe e cambiando la porta di default da 80 a 8080
HiddenServiceDir /var/lib/tor/hidden_service/ HiddenServicePort 80 127.0.0.1:8080
infine facciamo ripartire TOR
service tor reload
il riavviamento di TOR creerà dei nuovi file uno dei quali ci servirà per conoscere l’indirizzo del nostro hidden service
cat /var/lib/tor/hidden_service/hostname
quello ottenuto da me è n3mbjdqbzze3qrgc.onion
Installare e configurare Nginx
Installiamo Nginx
apt-get install nginx
apriamo il file di configurazione
nano /etc/nginx/nginx.conf
e lo modifichiamo nascondendo la versione e disabilitando i log
server_tokens off; #access_log /var/log/nginx/access.log; #error_log /var/log/nginx/error.log; error_log /dev/null crit;
Creiamo una pagina di benvenuto per il nostro web server
nano /var/www/html/index.html
e ci scriviamo dentro il markup che desideriamo mostrare
<!DOCTYPE html> <html> <head> <title>Baty's Base Hidden</title> </head> <body> <h1>Welcome to Baty's Base Hidden Service!</h1> </body> </html>
Modifichiamo la configurazione del sito su nginx affinché passi da TOR
nano /etc/nginx/sites-available/default
server{ listen 127.0.0.1:8080 default_server; listen [::]:8080 default_server; root /var/www/html; index index.html index.htm; server_name localhost; location / { try_files $ uri $ uri/ =404; allow 127.0.0.1; deny all; } }
riavviamo il servizio
service nginx restart
Siamo online nel Deep web
Se avete seguito la guida passo per passo il vostro sito dovrebbe essere disponibile alla fruizione da parte degli utenti della famosa darknet.
Ricordate che la pubblicazione di materiale illegale o protetto da copyright è vietata e punita con pene e sanzioni molto pesanti!