Trong bài tuts này sẽ hướng dẫn các bạn thực hành setup onion service và access resource sử dụng Tor browser. Tor là một dịch vụ ẩn danh mà ở đó bạn có thể truy cập các resources một cách an toàn vì nó che giấu bạn là ai và đến từ đâu, nó cũng ẩn danh bạn với người dùng Tor khác. Tor browser cũng như bao browser khác như Chrome, Firefox, nhưng nó sẽ kết nối đến lớp mạng Tor.
I. Download Tor browser
Access url sau: https://www.torproject.org/download/
Chọn đúng platform, mình xài Ubuntu nên sẽ chọn “Download for Linux”
Giải nén, grant quyền execute vào chạy file ./start-tor-browser.desktop
Done 🙂
II. Setup Union service
Trên Server (ở đây mình cũng dùng Ubuntu server 22.04 LTS), cài đặt apt transport
apt install apt-transport-tor -y
Bước tiếp theo, check distribution của version Ubuntu hiện tại (của mình là Jammy)
lsb_release -c Codename: jammy
và thay thế vào đoạn Distribution sau:
cat <<EOF > /etc/apt/sources.list.d/tor.list deb [signed-by=/usr/share/keyrings/tor-archive-keyring.gpg] https://deb.torproject.org/torproject.org jammy main deb-src [signed-by=/usr/share/keyrings/tor-archive-keyring.gpg] https://deb.torproject.org/torproject.org jammy main EOF wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --dearmor | tee /usr/share/keyrings/tor-archive-keyring.gpg >/dev/null apt update apt install tor deb.torproject.org-keyring systemctl start tor && systemctl enable tor
Cài đặt Nginx:
apt install nginx systemctl start nginx && systemctl enable nginx
mở file và thêm vào cuối: vim /etc/tor/torrc
HiddenServiceDir /var/lib/tor/tritest #HiddenServicePort 80 unix:/var/run/tor/tritest.sock HiddenServicePort 80 127.0.0.1:80
Restart lại tor, nó sẽ tạo ra một folder tại /var/lib/tor/tritest, bạn sẽ lấy được url từ onion domain service tại file hostname trong này:
cat /var/lib/tor/tritest/hostname tritest2wo3gnluc7nunahocs6sbiziarpi3dxehb6mlspkelyr6sad.onion
Thêm nội dung vào file tĩnh
echo “This tor configuration is working as expected from TN team” > /usr/share/nginx/html/index.html
mở file nginx, sửa lại config sau:
vim /etc/nginx/sites-available/default
server { listen 127.0.0.1:80; root /usr/share/nginx/html; server_name tritest2wo3gnluc7nunahocs6sbiziarpi3dxehb6mlspkelyr6sad.onion; # Add index.php to the list if you are using PHP index index.html index.htm index.nginx-debian.html; server_name _; location / { # First attempt to serve request as file, then # as directory, then fall back to displaying a 404. #try_files $uri $uri/ =404; try_files $uri /index.html; }
Reload lại Nginx
nginx -t && nginx -s reload
Quay lại browser Tor, paste domain name lấy từ tor ra, bạn nên thấy được trang web tĩnh mình tạo.
Vậy là xong.
P/s: Reference at:
https://support.torproject.org/apt/
https://www.torproject.org/download/