Skip to content

Instantly share code, notes, and snippets.

@mh-firouzjah
Last active October 7, 2025 13:48
Show Gist options
  • Save mh-firouzjah/8b3ef681a337ff7b3432f15e05079bc1 to your computer and use it in GitHub Desktop.
Save mh-firouzjah/8b3ef681a337ff7b3432f15e05079bc1 to your computer and use it in GitHub Desktop.
Run Tor Using Bundle Package From Torproject

Run Tor Using Bundle Package From Torproject

In this short manual I'll explain how to use latest tor executable along with the clients for snowflake, webtunnel and conjure.

  1. Downloading the Latest Bundle Package:
    Visit Tor Project Download Page or directly use the command:
    wget https://archive.torproject.org/tor-package-archive/torbrowser/13.5.7/tor-expert-bundle-linux-x86_64-13.5.7.tar.gz
  2. Extract the File:
    For simplicity, we will assume extracting within ~/.local/opt/tor.
    mkdir -p ~/.local/opt/tor
    tar -xzf tor-expert-bundle-linux-x86_64-13.5.7.tar.gz -C ~/.local/opt/tor
  3. Generate Config File:
    This file is required to customize Tor behavior (e.g., adding bridges, forcing exit nodes, etc.).
    nvim ~/.local/opt/tor/torrc
    GeoIPFile /home/mahdi/.local/opt/tor/data/geoip 
    GeoIPv6File /home/mahdi/.local/opt/tor/data/geoip6
    StrictNodes 1
    UseBridges 1
    ClientTransportPlugin meek_lite,obfs4,snowflake,webtunnel exec /home/mahdi/.local/opt/tor/tor/pluggable_transports/lyrebird managed
    ExitNodes {us}
    Bridge snowflake 192.0.2.3:80 2B280B23E1107BB62ABFC40DDCC8824814F80A72 fingerprint=2B280B23E1107BB62ABFC40DDCC8824814F80A72 url=https://1098762253.rsc.cdn77.org front=www.phpmyadmin.net,cdn.zk.mk ice=stun:stun.antisip.com:3478,stun:stun.epygi.com:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.mixvoip.com:3478,stun:stun.nextcloud.com:3478,stun:stun.bethesda.net:3478,stun:stun.nextcloud.com:443 utls-imitate=hellorandomizedalpn
  4. Create the Directory for User Services:
    This is needed if it doesn’t already exist.
    mkdir -p ~/.config/systemd/user
  5. Create a New Service File:
    touch ~/.config/systemd/user/tor.service
  6. Add the Following Content to the Service File:
    Open the file in your preferred editor: nvim ~/.config/systemd/user/tor.service
    [Unit]
    Description=Tor Service
    After=network.target
    
    [Service]
    ExecStart=~/.local/opt/tor/tor/tor -f ~/.local/opt/tor/torrc
    Restart=always
    
    [Install]
    WantedBy=default.target
  7. Enable and Start the User Service To Start On Boot:
    systemctl --user enable --now tor.service
  8. Verify the service is running correctly:
    systemctl --user status tor.service
  9. Check logs related to the service:
    journalctl --user -exfu tor.service
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment