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.