[tor-commits] [community/master] Add snowflake proxy instructions to relay setup

gus at torproject.org gus at torproject.org
Mon May 17 19:36:32 UTC 2021


commit 20d835c2368df64d512f3b79c562bfb307400d47
Author: Cecylia Bocovich <cohosh at torproject.org>
Date:   Mon May 10 16:52:22 2021 -0400

    Add snowflake proxy instructions to relay setup
---
 .../technical-setup/snowflake/browser/contents.lr  | 32 ++++++++++++
 .../technical-setup/snowflake/contents.lr          | 28 +++++++++++
 .../snowflake/standalone/contents.lr               | 58 ++++++++++++++++++++++
 3 files changed, 118 insertions(+)

diff --git a/content/relay-operations/technical-setup/snowflake/browser/contents.lr b/content/relay-operations/technical-setup/snowflake/browser/contents.lr
new file mode 100644
index 0000000..4a3039b
--- /dev/null
+++ b/content/relay-operations/technical-setup/snowflake/browser/contents.lr
@@ -0,0 +1,32 @@
+_model: page
+---
+color: primary
+---
+title: Browser Snowflake proxy
+---
+body:
+
+Running a Snowflake proxy as a browser add on is a great low-effort way to donate bandwidth if you don't have acces to an always-on highly connected server. There are very few requirements to running a browser-based proxy:
+1. Use Firefox or Chromium/Chrome as your browser
+2. Have WebRTC enabled
+
+### 1. Install the Snowflake addon to your browser
+
+If you are running Firefox, you can install our [Firefox addon](https://addons.mozilla.org/en-US/firefox/addon/torproject-snowflake/). Chome users can install our addon from the [Google webstore](https://chrome.google.com/webstore/detail/snowflake/mafpmfcccpbjnhfhjnllmmalhifmlcie).
+
+Once it is installed, you can toggle the `Enabled` switch to turn it off and on. It's easiest to leave it running while you browse and it should not interfere with your regular browsing experience.
+
+### 2. Monitor your Snowflake's status and usage
+
+The Snowflake addon will inform you about how many people you have helped in the last 24 hours. It will also display an error message if the Snowflake could not connect to clients or the Snowflake bridge.
+
+---
+html: two-columns-page.html
+---
+key: 2
+---
+subtitle: How to run a Snowflake proxy in your browser
+---
+section: Snowflake
+---
+section_id: snowflake
diff --git a/content/relay-operations/technical-setup/snowflake/contents.lr b/content/relay-operations/technical-setup/snowflake/contents.lr
new file mode 100644
index 0000000..11cce6f
--- /dev/null
+++ b/content/relay-operations/technical-setup/snowflake/contents.lr
@@ -0,0 +1,28 @@
+_model: page
+---
+title: Snowflake
+---
+body:
+
+This guide will help you set up a Snowflake proxy to help censored users connect to the Tor network. The requirements are:
+1. Internet connectivity
+
+If you don't meet the requirements to run a Tor relay or obfs4 bridge, running a Snowflake proxy is a great way to donate your bandwidth to help users circumvent censorship.
+
+There are a few different options for running a Snowflake proxy.
+
+---
+html: two-columns-page.html
+---
+key: 5
+---
+section: Snowflake operations
+---
+section_id: snowflake-operations
+---
+subtitle: Run an snowflake proxy to help censored users connect to the Tor network
+---
+_slug: {{snowflake}}
+---
+color: primary
+---
diff --git a/content/relay-operations/technical-setup/snowflake/standalone/contents.lr b/content/relay-operations/technical-setup/snowflake/standalone/contents.lr
new file mode 100644
index 0000000..ce9898e
--- /dev/null
+++ b/content/relay-operations/technical-setup/snowflake/standalone/contents.lr
@@ -0,0 +1,58 @@
+_model: page
+---
+color: primary
+---
+title: Standalone Snowflake proxy
+---
+body:
+
+This guide will help you set up a standalone Snowflake proxy on a server to help censored users connect to the Tor network. The only requirements are internet connectivity, however one of the main advantages of standalone Snowflake proxies is that they can be installed on servers and offer a higher bandwidth and more reliable option for users behind restrictive NATs and firewalls. Therefore, we especially recommend:
+1. 24/7 Internet connectivity
+2. A full-cone NAT (you can use this [NAT behaviour tool](https://github.com/pion/stun/tree/master/cmd/stun-nat-behaviour) to test what type of NAT you have. The properties you are looking for are address-independent mapping and either address-independent or address-dependent filtering)
+
+There are several ways to setup and run a standalone snowflake proxy.
+
+### Docker setup
+
+You must first have [Docker](https://docs.docker.com/engine/install/) and [docker-compose](https://docs.docker.com/compose/install/) installed.
+
+We have a [Docker image](https://hub.docker.com/repository/docker/thetorproject/snowflake-proxy) to ease the setup of a snowflake proxy. First [download docker-compose.yml](https://gitlab.torproject.org/tpo/anti-censorship/docker-snowflake-proxy/raw/main/docker-compose.yml). Then, deploy the proxy by running
+```
+docker-compose up -d snowflake-proxy
+```
+
+You should now see the output:
+```
+Creating snowflake-proxy ... done
+```
+and your proxy is up and running!
+
+### Ansible
+
+There is now an ansible role to install a Snowflake proxy on Debian [created by Jacobo Nájera](https://lists.torproject.org/pipermail/anti-censorship-team/2021-March/000143.html): https://galaxy.ansible.com/nvjacobo/snowflake
+
+### Compiling and running from source
+
+1. First you will need to install and configure Go to build the standalone proxy-go code. If you are running Ubuntu or Debian, you can install Go by executing `apt install golang`. Otherwise visit https://golang.org/dl/. You will need Go 1.13+ to run the Snowflake proxy.
+
+2. Clone the [source code](#source-code).
+   ```
+   git clone https://git.torproject.org/pluggable-transports/snowflake.git
+   ```
+3. Build the Snowflake proxy.
+   ```
+   go build
+   ```
+4. Run the Snowflake proxy.
+
+   For our fallback proxy-go instances on snowflake-broker, [we manage proxy-go instances using runit](https://gitlab.torproject.org/tpo/anti-censorship/team/-/wikis/Survival-Guides/Snowflake-Bridge-Survival-Guide#standalone-proxy-go-instances). However, a simpler nohup command will also allow you to run an instance in the background.
+   ```
+   nohup ./proxy &
+   ```
+
+---
+key: 1
+---
+html: two-columns-page.html
+---
+subtitle: How to run a standalone Snowflake proxy





More information about the tor-commits mailing list