aboutsummaryrefslogtreecommitdiff
path: root/network/obfs4proxy/README.Slackware
blob: 3ad8d4f96a1ce910dfaa81c383a1acb026c1a558 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Client side torrc configuration:

ClientTransportPlugin obfs4 exec /usr/bin/obfs4proxy

Bridge side torrc configuration:

# Act as a bridge relay.
BridgeRelay 1

# Enable the Extended ORPort
ExtORPort auto

# Use obfs4proxy to provide the obfs4 protocol.
ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy

# (Optional) Listen on the specified address/port for obfs4 connections as
# opposed to picking a port automatically.
#ServerTransportListenAddr obfs4 0.0.0.0:443

Tips and tricks

On modern Linux systems it is possible to have obfs4proxy bind to reserved ports (<=1024) 
even when not running as root by granting the CAP_NET_BIND_SERVICE capability with setcap:

# setcap 'cap_net_bind_service=+ep' /usr/bin/obfs4proxy

obfs4proxy can also act as an obfs2 and obfs3 client or server. 
Adjust the ClientTransportPlugin and ServerTransportPlugin lines in the torrc as appropriate.

obfs4proxy can also act as a ScrambleSuit client. 
Adjust the ClientTransportPlugin line in the torrc as appropriate.

The autogenerated obfs4 bridge parameters are placed in DataDir/pt_state/obfs4_state.json. 
To ease deployment, the client side bridge line is written to DataDir/pt_state/obfs4_bridgeline.txt.