I did a Google search and found this post on Ask Ubuntu site, which discussed how to install and use Tor with Snowflake bridge on Ubuntu 20.04 (NOT Termux). Based on what I learned from that post, I figured out a similar solution for Termux, which worked just fine after I tested it on two Android phones. However, after the installation of Tor and Snowflake on those phones, the Termux app took up a very large amount of the phone's storage space, which might be an issue of my approach. Below you can find instructions for installation and instructions for usage.
(Only for Android version 7 or higher)
Instructions to install
For the initial installation of Tor and Snowflake client on Termux, it is required that you have a separate VPN and keep it connected while performing Steps 1 through 4. After accomplishing Step 4, you no longer need that VPN, so you can disconnect it and/or even uninstall it from your device. Follow the instructions below:
- First, download and install the latest version of Termux app from FDroid website. You do not need to download the F-Droid app (via the Download F-Droid link) to install Termux. You can download the Termux APK directly from the site by clicking the Download APK link at the bottom of each version section.
- Open Termux and execute the following commands to install the packages required for Tor and Snowflake client.
pkg install tor golang git nano -y
- Then execute the following command to download Snowflake source code.
git clone https://git.torproject.org/pluggable-transports/snowflake.git
- Next, compile that source code by executing the below commands one-by-one.
- Now it's time to configure Tor to use Snowflake bridge for connection. To do so, open the Tor's configuration file (known as
torrc) in the Nano editor, by executing the following.
- Then in the Nano editor, scroll down to the end of the file, and append the three lines of code below.
ClientTransportPlugin snowflake exec /data/data/com.termux/files/home/snowflake/client/client
Bridge snowflake 192.0.2.3:80 2B280B23E1107BB62ABFC40DDCC8824814F80A72 fingerprint=2B280B23E1107BB62ABFC40DDCC8824814F80A72 url=https://snowflake-broker.torproject.net.global.prod.fastly.net/ front=cdn.sstatic.net ice=stun:stun.l.google.com:19302,stun:stun.altar.com.pl:3478,stun:stun.antisip.com:3478,stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.com:3478,stun:stun.sonetel.net:3478,stun:stun.stunprotocol.org:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478 utls-imitate=hellorandomizedalpn
- Then you must save the changes you made to the file, by pressing
CTRL+O. Then you will be asked to specify a file name; don't type anything and just press
Enter, so that the file name will remain the current one (
- Close the Nano editor by pressing
- Close Termux by pressing
CTRL+D, and open Telegram app.
- In Telegram, go to Proxy Settings, then add a SOCKS5 proxy with the following information:
During the installation, if you haven't received any error messages so far, it means Tor installation on Termux has been successfully completed.
Instructions to use
After successful Tor installation, whenever desired, you can enable Tor and then easily connect to Telegram. To enable Tor, simply open Termux and execute
tor. Then Tor will start establishing a connection to the Tor Network, and display some logs indicating the progress. So you must wait until the progress reaches 100%, i.e. you get the following message in the logs:
[NOTICE] Bootstrapped 100% (done): Done
Finally, you can open Telegram and let it connect through the Tor proxy.
Please note that after you finished using Telegram, it is highly recommended that you disable Tor and exit Termux, otherwise Termux would unnecessarily consume your battery power in the background.
Disabling Tor is really simple: just go to Termux and press
CTRL+C; upon success, you'll get the following message.
Interrupt: exiting cleanly.
Next, exit Termux by pressing