summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBluesaxorcist <joshua@operatorfoundation.org>2019-08-30 13:38:57 -0500
committerBluesaxorcist <joshua@operatorfoundation.org>2019-08-30 13:38:57 -0500
commitada8a509a68716f2e556c176e046714eba61fb5e (patch)
treea2b1e09a210edd3ede078479f19dcede7f3cdc2a
parent6eb4abf90d2be86fa86668b321a217a5f6022366 (diff)
adjusted the readme to give option of using -options or -optionsfile
-rw-r--r--Optimizer.json1
-rw-r--r--README.md11
-rw-r--r--common/pt_extras/pt_extras.go1
3 files changed, 10 insertions, 3 deletions
diff --git a/Optimizer.json b/Optimizer.json
new file mode 100644
index 0000000..2697889
--- /dev/null
+++ b/Optimizer.json
@@ -0,0 +1 @@
+{"cert": "a1cc6eI5H+1kTzXhbuwMR9w3ZkLeZuReniier8DYSlAg4ed9yTbnyDiWc1vF1WFWKFRYHQ", "iatMode": "0"} \ No newline at end of file
diff --git a/README.md b/README.md
index 03c6330..296c97c 100644
--- a/README.md
+++ b/README.md
@@ -161,18 +161,23 @@ The cert parameter is what is needed for the dispatcher client.
##### Client
- bin/shapeshifter-dispatcher -transparent -client -state state -target 127.0.0.1:2222 -transports obfs4 -proxylistenaddr obfs4-127.0.0.1:1443 -options '{"cert": "OfQAPDamjsRO90fDGlnZR5RNG659FZqUKUwxUHcaK7jIbERvNU8+EVF6rmdlvS69jVYrKw", "iatMode": "0"}' -logLevel DEBUG -enableLogging
+ bin/shapeshifter-dispatcher -transparent -client -state state -target 127.0.0.1:2222 -transports obfs4 -proxylistenaddr 127.0.0.1:1443 -optionsFile obfs4.json -logLevel DEBUG -enableLogging
This runs the client in transparent TCP proxy mode. The directory "state" is
used to hold transport state. The address of the server is specified as
127.0.0.1, port 2222. This is the same address as was specified on the server
command line above. For this demo to work, the dispatcher server needs to be
running on this host and port. The obfs4 transport is enabled and bound to the
-address 127.0.0.1 and the port 1443. The -options parameter is different for
+address 127.0.0.1 and the port 1443. The -optionsFile parameter is different for
every transport. For obfs4, the "cert" and "iatMode" parameters are required.
These can be found in the obfs4_bridgeline.txt in the server state directory,
which is generated by the server the first time that it is run. It is important
-for the cert parameter to be correct, otherwise obfs4 will silently fail.
+for the cert parameter to be correct, otherwise obfs4 will silently fail. You can input
+your parameters in the Obfs4.json file in the shapeshifter-dispatcher folder or you can put
+the parameters in directly in this format:
+
+bin/shapeshifter-dispatcher -transparent -client -state state -target 127.0.0.1:2222 -transports obfs4 -proxylistenaddr 127.0.0.1:1443 -options '{"cert": "OfQAPDamjsRO90fDGlnZR5RNG659FZqUKUwxUHcaK7jIbERvNU8+EVF6rmdlvS69jVYrKw", "iatMode": "0"}' -logLevel DEBUG -enableLogging
+
Logging is enabled and set to DEBUG level.
Once the client is running, you can connect to the client address, which in this
diff --git a/common/pt_extras/pt_extras.go b/common/pt_extras/pt_extras.go
index e38d44e..3e865bf 100644
--- a/common/pt_extras/pt_extras.go
+++ b/common/pt_extras/pt_extras.go
@@ -222,6 +222,7 @@ func ArgsToDialer(target string, name string, args pt.Args) (Optimizer.Transport
return nil, errors.New("shadow transport missing password argument")
}
case "Optimizer":
+ //replace underscore with ArgsToDialer
if _, ok := args["transports"]; ok {
if strategyName, ok2 := args["strategy"]; ok2 {
var strategy Optimizer.Strategy = nil