This revision of Turbo Tunnel–enabled Snowflake fixes a hang that would occur if tor opened more than one SOCKS connection through the pluggable transport client at a time: https://bugs.torproject.org/33519. What would happen is the first SOCKS connection would get the only available proxy, and the second would get none. Now, multiple SOCKS connections may share the same proxy.
https://people.torproject.org/~dcf/pt-bundle/tor-browser-snowflake-turbotunn... https://people.torproject.org/~dcf/pt-bundle/tor-browser-snowflake-turbotunn...
To enable Snowflake the first time you run it: * Click "Configure" * Click "Tor is censored in my country" * Click "Select a built-in bridge" * Select "snowflake" from the menu How to enable Snowflake when the browser is already running: * Go to about:preferences#tor (open the Preferences menu then click Tor on the left side) * Look at the "Bridges" section * Click "Use a bridge" * Click "Select a built-in bridge" * Select "snowflake" from the menu
The browser is set not to automatically install updates, because an update would remove the Turbo Tunnel features. The browser will still download updates and ask to install them, so you'll have to click "Not Now" whenever it asks.
== How to run multiple browsers at once ==
If you want to run both browsers at the same time, or run them at the some time as your usual Tor Browser, you have to make them use different ports to avoid conflicts. The default ports are 9150 and 9151. What I did is rename the "tor-browser_en-US" directory so I could have two of them: tar xf tor-browser-snowflake-turbotunnel-kcp-9.5a8-20200223/tor-browser-linux64-9.5a8_en-US.tar.xz mv tor-browser_en-US tor-browser_en-US_kcp tar xf tor-browser-snowflake-turbotunnel-quic-9.5a8-20200223/tor-browser-linux64-9.5a8_en-US.tar.xz mv tor-browser_en-US tor-browser_en-US_quic Then you can run each one with different ports: cd tor-browser_en-US_kcp TOR_SOCKS_PORT=9250 TOR_CONTROL_PORT=9251 ./start-tor-browser.desktop cd ../tor-browser_en-US_quic TOR_SOCKS_PORT=9350 TOR_CONTROL_PORT=9351 ./start-tor-browser.desktop You may also want to go to the Customize... menu and choose different themes (light/dark) to visually distinguish them.
== How to interpret log messages ==
The Snowflake log is in Browser/TorBrowser/Data/Tor/pt_state/snowflake-client.log.
BrokerChannel Response: 504 Gateway Timeout This means the broker couldn't find a proxy for you. It's a temporary error and the client will try again in 10 seconds. BrokerChannel Response: 200 OK This means that you got matched up with a proxy, but it doesn't necessarily mean the proxy works yet. Traffic Bytes (in|out): 0 | 972 -- (0 OnMessages, 8 Sends) If the number on the left stays at 0, it means the proxy isn't working (you're sending but not receiving anything). If 30 second pass without receiving anything, the client will abandon that proxy and contact the broker to get another one. Traffic Bytes (in|out): 52457 | 7270 -- (47 OnMessages, 75 Sends) When you start getting numbers like this, your proxy is working. WebRTC: No messages received for 30s -- closing stale connection This means the proxy stopped working (or never worked) and the client will try another one. WebRTC: At capacity [1/1] Retrying in 10s... This is normal and means that the client has its desired number of proxies (1).