Skip to content

Bash scripts for simple setup and running a standalone Snowflake proxy for Tor

License

Notifications You must be signed in to change notification settings

openscilab/tor-snowflake

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Bash scripts for Standalone Snowflake Proxy (Tor)

Quick instructions for Debian/Ubuntu

  1. git clone https://github.com/ssheikholeslami/tor-snowflake-standalone-script.git
  2. cd tor-snowflake-standalone-script
  3. chmod +x install_snowflake.sh run_snowflake_proxy.sh
  4. ./install_snowflake.sh
  5. ./run_snowflake_proxy.sh
  6. tail -f logs/snowflake-logs.out

Detailed instructions for Debian/Ubuntu

We've provided simple bash scripts for simple setup and running a standalone Snowflake proxy docker container for Tor. The first script (install_snowflake.sh) installs Docker (if not installed) and Snowflake. The second script (run_snowflake_proxy.sh) spins up the container and runs Snowflake with some parameters for better logging.

In case you need more information, please consult with Snowflake Docker guide and Snowflake's repo (for more on the parameters).

These scripts have been tested on Ubuntu 24.04.3 LTS.

  1. Clone this repo using git clone https://github.com/ssheikholeslami/tor-snowflake-standalone-script.git or simply copy and paste the contents of the scripts into separate files on your server. For the following steps I'm assuming you'll keep the filenames the same as in the repo.
  2. cd tor-snowflake-standalone-script
  3. chmod +x install_snowflake.sh run_snowflake_proxy.sh
  4. ./install_snowflake.sh - this installs Docker (if not installed) and Snowflake. Upon successful setup:
  5. ./run_snowflake_proxy.sh. This runs the container and logs the output to logs/snowflake-logs.out. The default interval for logs is set to 1 minute, but you can change it, e.g., for 30 seconds intervals ./run_snowflake_proxy.sh -i 30s
  6. You can view the logs with, e.g., tail -f logs/snowflake-logs.out.

Note that it might take a few minutes for the first connections to establish. Servers hosted in Europe are recommended for better service to Iran.

If you have macOS

You can also run Snowflake on your own Mac. For this, you need to:

  1. Install Docker Desktop if you don't already have Docker;
  2. Open a terminal (e.g., type Terminal in Spotlight Search)
  3. Get the Docker Compose file for Snowflake: curl -o docker-compose.yml "https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/raw/main/docker-compose.yml?ref_type=heads"
  4. docker compose run -d --name snowflake-proxy snowflake-proxy -summary-interval 1m(you can change the logging interval to different values, e.g., 1h, 1h20m, 30m, 42s)
  5. You can then check the logs through the Docker Desktop app and clicking on the snowflake-proxy container.
  6. To stop the container: docker stop snowflake-proxy and to start it again with the previous settings: docker start snowflake-proxy.

About

Bash scripts for simple setup and running a standalone Snowflake proxy for Tor

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 100.0%