<div>                On Wednesday, December 14, 2022, 02:55:05 AM MST, trinity pointard <trinity.pointard@gmail.com> wrote:<br><br>Hi trinity!<br><br>>> As an added bonus, obfs4proxy also supports acting as an obfs2/3 client and bridge to ease the transition to the new protocol.<br><br>>> My question is whether the respective obfs2|3|4 transport names force the corresponding protocol?<br><br>> It does force the use of the protocol you specified, or at least it<br>> should and if it doesn't, that's a bug to report. You can quickly<br>> check this by connecting to an obfs4 bridge while saying it's obfs3:<br>> tor won't bootstrap.<br><br>Your recommended testing confirms that the "transport" portion of the ServerTransportListenAddr directive is an actual option passed and recognized by obfs4proxy (not just a label).<br><br>This point was made confusing by the "Example: ServerTransportOptions obfs45 shared-secret=bridgepasswd cache=/var/lib/tor/cache" in the Tor manual. Notice the "obfs45" transport, which errors with "[warn] Server managed proxy encountered a method error. (obfs45 no such transport is supported)." I'm assuming this is a typo in the Tor manual?<br><br>Finally, it appears that BridgeDB hands-out the transport type with the ServerTransportListenAddr:Port and nullifies my attempts at providing multiple obfs4proxy listeners per Tor instance.<br><br>It's unfortunate that only a single ServerTransportListenAddr:Port can be spawned per Transport per Tor instance.  Hopefully, this will be remedied in Arti.<br><br>>> Also... It wasn't clear in the manual whether obfs4proxy -enableLogging takes an optional path/file?<br><br>> It doesn't, logs are stored in $TOR_PT_STATE_LOCATION/obfs4proxy.log<br>> (usually that would be /var/lib/tor/pt_state/obfs4proxy.log)<br><br>I appreciate you confirming the obfs4proxy -enableLogging question as well.  It seems like a symlink will have to do.<br><br>Thank you for your time and assistance.<br><br>Respectfully,<br><br><br>Gary<br><br><br>On Wed, 14 Dec 2022 at 10:02, Gary C. New via tor-relays<br><tor-relays@lists.torproject.org> wrote:<br>><br>> All:<br>><br>> I noticed that the obfs2, obfs3, and obfs4 transport names seem to be hardcoded into tor.<br>><br>> I have been able to configure the torrc to register each of the transports for multiple ServerTransportListenAddr:<br>><br>> # cat torrc<br>> ORPort xxx.xxx.xxx.xxx:443 NoListen<br>> ORPort 192.168.0.31:9001 NoAdvertise<br>> SocksPort 9050<br>> SocksPort 192.168.0.31:9050<br>> ControlPort 9051<br>> HTTPTunnelPort 9080<br>> HTTPTunnelPort 192.168.0.31:9080<br>> ExtORPort 192.168.0.31:auto<br>> BridgeRelay 1<br>> BridgeDistribution moat<br>> ServerTransportPlugin obfs2 exec /opt/bin/obfs4proxy -enableLogging<br>> ServerTransportListenAddr obfs2 192.168.0.31:3102<br>> ServerTransportOptions obfs2 iat-mode=2<br>> ServerTransportPlugin obfs3 exec /opt/bin/obfs4proxy -enableLogging<br>> ServerTransportListenAddr obfs3 192.168.0.31:3103<br>> ServerTransportOptions obfs3 iat-mode=2<br>> ServerTransportPlugin obfs4 exec /opt/bin/obfs4proxy -enableLogging<br>> ServerTransportListenAddr obfs4 192.168.0.31:3104<br>> ServerTransportOptions obfs4 iat-mode=2<br>> DirCache 1<br>> ExitRelay 0<br>><br>> # grep -i obfs ./torlog<br>> 2022/12/14 00:39:07 [NOTICE]: obfs4proxy-0.0.14 - launched<br>> Dec 13 17:41:48.000 [notice] Registered server transport 'obfs2' at '192.168.0.31:3102'<br>> Dec 13 17:41:48.000 [notice] Registered server transport 'obfs3' at '192.168.0.31:3103'<br>> Dec 13 17:41:48.000 [notice] Registered server transport 'obfs4' at '192.168.0.31:3104'<br>><br>> # netstat -anp | grep obfs4proxy<br>> tcp        0      0 192.168.0.31:3102      0.0.0.0:*              LISTEN      30185/obfs4proxy<br>> tcp        0      0 192.168.0.31:3103      0.0.0.0:*              LISTEN      30185/obfs4proxy<br>> tcp        0      0 192.168.0.31:3104      0.0.0.0:*              LISTEN      30185/obfs4proxy<br>><br>> My question is whether the respective obfs2|3|4 transport names force the corresponding protocol?<br>><br>> If so... Are there any ServerTransportOptions that can force the obfs4 protocol on the legacy obfs2|3 transports?<br>><br>> Also... It wasn't clear in the manual whether obfs4proxy -enableLogging takes an optional path/file?<br>><br>> I appreciate any knowledge on the subjects.<br>><br>> Respectfully,<br>><br>><br>> Gary<br>> _______________________________________________<br>> tor-relays mailing list<br>> tor-relays@lists.torproject.org<br>> https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-relays<br>_______________________________________________<br>tor-relays mailing list<br>tor-relays@lists.torproject.org<br>https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-relays            </div>