Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
The Tor Project
Anti-censorship
Pluggable Transports
Snowflake
Commits
c1f62394
Commit
c1f62394
authored
Jun 18, 2016
by
Serene Han
Browse files
update README
parent
e93c38f8
Changes
2
Hide whitespace changes
Inline
Side-by-side
README.md
View file @
c1f62394
...
...
@@ -2,29 +2,32 @@
[

](https://travis-ci.org/keroserene/snowflake)
A Pluggable Transport using WebRTC, inspired by Flashproxy
Pluggable Transport using WebRTC, inspired by Flashproxy.
### Status
-
[x] Transport: Successfully connects using WebRTC.
-
[x] Rendezvous: HTTP signaling (with optional domain fronting) to the Broker
arranges peer-to-peer connections with multitude of volunteer "snowflakes".
-
[x] Client multiplexes remote snowflakes.
-
[x] Can browse using Tor over Snowflake.
-
[ ] Reproducible build with TBB.
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents**
-
[
Status
](
#status
)
-
[
Usage
](
#usage
)
-
[
Dependencies
](
#dependencies
)
-
[
More Info
](
#more-info
)
-
[
Building a Snowflake
](
#building-a-snowflake
)
-
[
Building
](
#building
)
-
[
FAQ
](
#faq
)
-
[
Appendix
](
#appendix
)
-
[
-- Testing Copy-Paste Via Browser Proxy --
](
#---testing-copy-paste-via-browser-proxy---
)
-
[
-- Testing directly via WebRTC Server --
](
#---testing-directly-via-webrtc-server---
)
-
[
-- Via Browser Proxy --
](
#---via-browser-proxy---
)
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
### Status
Successfully & automatically bootstraps with a WebRTC transport, using HTTP
signaling (with optional domain fronting) speaking to a multitude of volunteer
"snowflakes". Still lots of work to do.
### Usage
```
...
...
@@ -38,7 +41,7 @@ This should start the client plugin, bootstrapping to 100% using WebRTC.
#### Dependencies
Client:
-
[
go-webrtc
](
https://github.com/keroserene/go-webrtc
)
.
-
[
go-webrtc
](
https://github.com/keroserene/go-webrtc
)
-
Go 1.5+
Proxy:
...
...
@@ -48,19 +51,22 @@ Proxy:
#### More Info
The client uses the following
`torrc`
options:
Tor can plug in the Snowflake client via a correctly configured
`torrc`
.
For example:
```
ClientTransportPlugin snowflake exec ./client \
-url https://snowflake-reg.appspot.com/ \
-front www.google.com \
-ice stun:stun.l.google.com:19302
-max 3
```
Which allows i
t to speak to the Broker,
get matched with a "snowflake"
browser proxy
,
and negotiate a WebRTC PeerConnection
.
The flags
`-url`
and
`-front`
allow the Snowflake clien
t to speak to the Broker,
in order to get connected with some volunteer's
browser proxy
.
`-ice`
is a
comma-separated list of ICE servers, which are required for NAT traversal
.
To see logs, do
`tail -F snowflake.log`
in a second terminal.
For logging, run
`tail -F snowflake.log`
in a second terminal.
You can modify the
`torrc`
to use your own broker,
or remove the options entirely which will default to the old copy paste
...
...
@@ -71,11 +77,13 @@ ClientTransportPlugin snowflake exec ./client --meek
```
#### Building a Snowflake
#### Building
This describes how to build the in-browser snowflake. For the client, see Usage,
above.
This will only work if there are any browser snowflakes running at all.
To run your own, first make sure coffeescript is installed.
Then, build with:
The client will only work if there are browser snowflakes available.
To run your own:
```
cd proxy/
...
...
@@ -91,8 +99,9 @@ cd build/
python -m http.server
```
Then, open a browser tab to
`http://127.0.0.1:8000/snowflake.html`
,
which causes you to act as an ephemeral Tor bridge.
Then, open a browser tab to
`http://127.0.0.1:8000/snowflake.html`
to view
the debug-console of the snowflake.,
So long as that tab is open, you are an ephemeral Tor bridge.
### FAQ
...
...
client/torrc
View file @
c1f62394
...
...
@@ -5,6 +5,6 @@ ClientTransportPlugin snowflake exec ./client \
-url https://snowflake-reg.appspot.com/ \
-front www.google.com \
-ice stun:stun.l.google.com:19302 \
-max
4
-max
3
Bridge snowflake 0.0.3.0:1
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment