Οι ιστοσελίδες στο darknet χρησιμοποιούν υπηρεσίες Tor που επιτρέπουν τη λειτουργία διαφόρων χαρακτηριστικών. Μέσω Tor μπορείτε να τρέξετε κάποιον web server, telnet, και πολλά άλλα εντός του δικτύου Tor.
Αυτό επιτρέπει στους χρήστες αλλά στους παρόχους υπηρεσιών να κρύβουν την ταυτότητα και τις τοποθεσίες τους.
Σχεδόν οτιδήποτε τρέχει στο κανονικό διαδίκτυο μπορεί να τρέξει και στο darknet ή deepweb.
Παρακάτω θα δούμε πως μπορούμε να στήσουμε ένα LEMP server σε ένα σύστημα που τρέχει Debian 10 Buster.
Ο όρος LEMP προέρχεται από τα ακρώνυμα Linux με nginx web server (προφέρεται engine-x, έτσι έχουμε το E) , MySQL database και PHP.
Ο οδηγός κυκλοφορεί μόνο για εκπαιδευτικό σκοπό.
Ξεκινάμε σε ένα πλήρες ενημερωμένο σύστημα που τρέχει Debian 10 Buster
sudo apt update && sudo apt upgrade -y
Εγκατάσταση του Tor
Αρχικά θα εγκαταστήσουμε το πακέτο Tor πρέπει να εγκατασταθεί στο σύστημα. Tο Debian διαθέτει ένα πακέτο Tor στα αποθετήριά του, αλλά θα προσθέσουμε το επίσημο αποθετήριο του Tor για να μπορούμε να έχουμε την τελευταία έκδοση αμέσως μόλις κυκλοφορήσει.
Αρχικά, θα πειράξουμε το sources list έτσι ώστε το Debian να γνωρίζει τα επίσημα αποθετήρια του Tor.
sudo nano /etc/apt/sources.list
Στο κάτω μέρος του αρχείου, επικολλήστε τις δύο γραμμές και αποθηκεύστε:
deb http://deb.torproject.org/torproject.org buster main #deb-src http://deb.torproject.org/torproject.org buster main
Τώρα θα προσθέσουμε το κλειδί GPG του Tor Project που χρησιμοποιείται για την υπογραφή των πακέτων Tor. Αυτό θα βοηθήσει στην επαλήθευση των πακέτων ούτως ώστε να γνωρίζουμε ότι το λογισμικό που εγκαθιστούμε δεν έχει παραβιαστεί.
wget https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc
apt-key addΑς μην αφήνουμε σκουπίδια:
rm -r A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.ascΏρα για την εγκατάσταση του Tor
apt-get updateapt-get install tor deb.torproject.org-keyringΕγκατάσταση της PHP
Θα εγκαταστήσουμε τα dependencies και ένα repository που λέγεται Sury για την PHP 8.
sudo apt install apt-transport-https lsb-release ca-certificates wget curl -ysh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'Προσθήκη του GPG key (εξηγήσαμε παραπάνω το γιατί)
curl -sSL -o /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpgsudo apt updateΑς προχωρήσουμε με την εγκατάσταση της PHP
sudo apt install php8.0 php8.0-fpm php8.0-curl php8.0-mysqlnd php8.0-zip php8.0-mbstring php8.0-bcmath php8.0-gd php8.0-xml -yΕγκατάσταση και ρύθμιση της MariaDB
sudo apt install -y software-properties-common dirmngrsudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8Προσθέτουμε το MariaDB repository
sudo add-apt-repository 'deb [arch=amd64] http://nyc2.mirrors.digitalocean.com/mariadb/repo/10.4/debian buster main'και κάνουμε την εγκατάσταση
sudo apt updatesudo apt install -y mariadb-server mariadb-clientΑν θέλετε ασφαλή εγκατάσταση του πακέτου τρέξτε την εντολή
sudo mysql_secure_installationΘα δείτε τις παρακάτω ερωτήσεις, ακολουθήστε τις οδηγίες
Enter current password for root (enter for none): Enter Switch to unix_socket authentication [Y/n] N Change the root password? [Y/n] Y New password: δώστε νέο Password Re-enter new password: δώστε το πάλι Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
θα επεξεργαστούμε το torrc file:
sudo nano /etc/tor/torrcΑν διαβάσετε γραμμή προς γραμμή αυτό το αρχείο θα πάτε για ύπνο, επομένως καλύτερα να γράψουμε από την αρχή μόνο αυτά που θέλουμε. Επικολλήστε τα παρακάτω πάνω στο υπάρχον περιεχόμενο στο αρχείο torrc:
Log notice file /var/log/tor/notices.log HiddenServiceDir /var/lib/tor/iguru/ HiddenServicePort 80 127.0.0.1:80 HiddenServicePort 81 127.0.0.1:81 HiddenServicePort 22 127.0.0.1:22Αφού αποθηκεύσετε το αρχείο, δημιουργήσετε και αδειοδοτήσετε ένα αρχείο καταγραφής. Είμαστε έτοιμοι να επανεκκινήσουμε το Tor.
sudo touch /var/log/tor/notices.logchown debian-tor:debian-tor /var/log/tor/notices.logsudo service tor restartΥπάρχει ένα αρχείο hostname στο /var/lib/tor/iguru/hostname που περιέχει το δημόσιο κλειδί της κρυφής υπηρεσίας (το και onion domain δημιουργείται τυχαία). Αυτό το δημόσιο κλειδί λειτουργεί σαν διεύθυνση .onion την οποία μπορούν να χρησιμοποιήσουν οι χρήστες στο δίκτυο Tor για να έχουν πρόσβαση στην υπηρεσία σας. Σημειώστε κάπου την διεύθυνση που θα δείτε με την παρακάτω εντολή:
sudo cat /var/lib/tor/iguru/hostnameΡύθμιση στον Nginx web server
Πρώτα η εγκατάσταση
sudo apt-get install nginxκαι
sudo mkdir -p /var/www/iguru/Ας δημιουργήσουμε και ένα HTML:
sudo nano /var/www/iguru/index.htmlΠροσθέστε τα παρακάτω και αποθηκεύστε
iguru.gr torΑς δώσουμε τα απαραίτητα δικαιώματα
sudo chown -R www-data:www-data /var/www/iguru/sudo chmod -R 755 /var/wwwΜερικές ρυθμίσεις στο nginx
sudo nano /etc/nginx/sites-available/defaultΣτο block που ξεκινάει με server { θα δείτε μια γραμμή που αναφέρει listen 80 default_server;. Αλλάξτε αυτή την γραμμή με την παρακάτω:
listen localhost:80 default_server;Στο block που αναφέρει server_name δώστε την παρακάτω ονομασία
server_name _;Τώρα θα πειράξουμε το αρχείο Nginx configuration
sudo nano /etc/nginx/nginx.confΣτο block που αρχίζει με http { δώστε τις παρακάτω επιλογές:
keepalive_timeout 300; server_names_hash_bucket_size 128; server_name_in_redirect off; server_tokens off; port_in_redirect off;Τώρα θα πρέπει να δημιουργήσουμε ένα server block, ώστε το Nginx να γνωρίζει από ποιον κατάλογο θα δίνει περιεχόμενο όταν γίνεται πρόσβαση στην υπηρεσία μας. Χρησιμοποιώντας τον επεξεργαστή κειμένου μας, θα δημιουργήσουμε ένα νέο αρχείο server block:
sudo nano /etc/nginx/sites-available/iguruΣτο άδειο αρχείο προσθέστε τα παρακάτω (Μην ξεχάσετε να αλλάξετε την .onion διεύθυνση με την δική σας):
server { listen 127.0.0.1:80; server_name qwdygkwajtmhkytyuetwerkakrgkjnargpid.onion; error_log /var/log/nginx/iguru.error.log; access_log off; root /var/www/iguru; index index.php index.html index.htm; server_tokens off; location / { allow 127.0.0.1; deny all; try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php/php8.0-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }Μετά την αποθήκευση θα κάνουμε ένα symbolic link και ένα restart στο Nginx:
sudo ln -s /etc/nginx/sites-available/iguru /etc/nginx/sites-enabled/igurusudo service nginx restartΛογικά τώρα θα μπορείτε να δείτε το site σας μέσω του δικτύου Tor με την διεύθυνση .onion που έχετε σημειώσει.
Αν ενδιαφέρεστε μπορούμε να συνεχίσουμε με το δεύτερο μέρος, όπου θα εγκαταστήσουμε το phpMyAdmin και θα δημιουργήσουμε ένα onion domain που αρχίζει με τα γράμματα που επιθυμείτε (custom .onion address).
Φυσικά και ενδιαφερόμαστε! ;-)