Why can't I use the bridge?

Hello,
The torrc file is as follows:

SocksPort 172.20.2.54:9050
RunAsDaemon 1
DataDirectory /var/lib/tor
MaxCircuitDirtiness 3600

I want to use the bridge. I added the following lines to the torrc file, but Tor cannot run:

BridgeRelay 1
ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy
ORPort 443
ExtORPort auto
UseBridges 1
Bridge obfs4 <IP ADDRESS>:<PORT> <FINGERPRINT> cert=<CERTIFICATE> iat-mode=0

What is the problem?

Thank you.

Hello,
I changed the configuration file as follows:

SocksPort 172.20.2.54:9050
DataDirectory /var/lib/tor
RunAsDaemon 1
ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy
UseBridges 1
Bridge obfs4 <IP ADDRESS>:<PORT> <FINGERPRINT> cert=<CERTIFICATE> iat-mode=0

But I got the following error:

Jan 24 06:15:28.000 [notice] Tor 0.4.7.13 opening new log file.
Jan 24 06:15:28.831 [notice] We compiled with OpenSSL 30000070: OpenSSL 3.0.7 1 Nov 2022 and we are running with OpenSSL 30000090: 3.0.9. These two versions should be binary compatible.
Jan 24 06:15:28.836 [notice] Tor 0.4.7.13 running on Linux with Libevent 2.1.12-stable, OpenSSL 3.0.9, Zlib 1.2.13, Liblzma 5.4.1, Libzstd 1.5.4 and Glibc 2.36 as libc.
Jan 24 06:15:28.836 [notice] Tor can't help you if you use it wrong! Learn how to be safe at https://support.torproject.org/faq/staying-anonymous/
Jan 24 06:15:28.836 [warn] Tor was compiled with zstd 1.5.2, but is running with zstd 1.5.4. For safety, we'll avoid using advanced zstd functionality.
Jan 24 06:15:28.837 [notice] Read configuration file "/usr/share/tor/tor-service-defaults-torrc".
Jan 24 06:15:28.837 [notice] Read configuration file "/etc/tor/torrc".
Jan 24 06:15:28.838 [notice] Tor is not configured as a relay but you specified a ServerTransportPlugin line ("obfs4 exec /usr/bin/obfs4proxy"). The ServerTransportPlugin line will be ignored.
Jan 24 06:15:28.840 [notice] You configured a non-loopback address '10.0.2.15:9050' for SocksPort. This allows everybody on your local network to use your machine as a proxy. Make sure this is what you wanted.
Jan 24 06:15:28.840 [notice] Opening Socks listener on 10.0.2.15:9050
Jan 24 06:15:28.840 [notice] Opened Socks listener connection (ready) on 10.0.2.15:9050
Jan 24 06:15:28.000 [notice] We use pluggable transports but the Extended ORPort is disabled. Tor and your pluggable transports proxy communicate with each other via the Extended ORPort so it is suggested you enable it: it will also allow your Bridge to collect statistics about its clients that use pluggable transports. Please enable it using the ExtORPort torrc option (e.g. set 'ExtORPort auto').
Jan 24 06:15:28.000 [notice] Parsing GEOIP IPv4 file /usr/share/tor/geoip.
Jan 24 06:15:28.000 [notice] Parsing GEOIP IPv6 file /usr/share/tor/geoip6.
Jan 24 06:15:29.000 [notice] Bootstrapped 0% (starting): Starting
Jan 24 06:15:29.000 [notice] Starting with guard context "bridges"
Jan 24 06:15:29.000 [notice] Delaying directory fetches: No running bridges
Jan 24 06:15:29.000 [notice] Signaled readiness to systemd
Jan 24 06:15:29.000 [warn] Managed proxy at '/usr/bin/obfs4proxy' failed the configuration protocol and will be destroyed.
Jan 24 06:15:30.000 [warn] Can't use bridge at [scrubbed]: there is no configured transport called "obfs4".
Jan 24 06:15:30.000 [notice] Opening Control listener on /run/tor/control
Jan 24 06:15:30.000 [notice] Opened Control listener connection (ready) on /run/tor/control
Jan 24 06:15:31.000 [warn] Can't use bridge at [scrubbed]: there is no configured transport called "obfs4".

I changed the configuration file again as follows:

SocksPort 172.20.2.54:9050
DataDirectory /var/lib/tor
RunAsDaemon 1
UseBridges 1
Bridge obfs4 <IP ADDRESS>:<PORT> <FINGERPRINT> cert=<CERTIFICATE> iat-mode=0

But again I got an error:

Jan 24 06:21:23.000 [notice] Interrupt: exiting cleanly.
Jan 24 06:21:23.000 [notice] Tor 0.4.7.13 opening log file.
Jan 24 06:21:23.512 [notice] We compiled with OpenSSL 30000070: OpenSSL 3.0.7 1 Nov 2022 and we are running with OpenSSL 30000090: 3.0.9. These two versions should be binary compatible.
Jan 24 06:21:23.517 [notice] Tor 0.4.7.13 running on Linux with Libevent 2.1.12-stable, OpenSSL 3.0.9, Zlib 1.2.13, Liblzma 5.4.1, Libzstd 1.5.4 and Glibc 2.36 as libc.
Jan 24 06:21:23.518 [notice] Tor can't help you if you use it wrong! Learn how to be safe at https://support.torproject.org/faq/staying-anonymous/
Jan 24 06:21:23.518 [warn] Tor was compiled with zstd 1.5.2, but is running with zstd 1.5.4. For safety, we'll avoid using advanced zstd functionality.
Jan 24 06:21:23.518 [notice] Read configuration file "/usr/share/tor/tor-service-defaults-torrc".
Jan 24 06:21:23.518 [notice] Read configuration file "/etc/tor/torrc".
Jan 24 06:21:23.521 [notice] You configured a non-loopback address '10.0.2.15:9050' for SocksPort. This allows everybody on your local network to use your machine as a proxy. Make sure this is what you wanted.
Jan 24 06:21:23.521 [notice] Opening Socks listener on 10.0.2.15:9050
Jan 24 06:21:23.521 [notice] Opened Socks listener connection (ready) on 10.0.2.15:9050
Jan 24 06:21:23.000 [notice] Parsing GEOIP IPv4 file /usr/share/tor/geoip.
Jan 24 06:21:23.000 [notice] Parsing GEOIP IPv6 file /usr/share/tor/geoip6.
Jan 24 06:21:23.000 [notice] Bootstrapped 0% (starting): Starting
Jan 24 06:21:24.000 [notice] Starting with guard context "bridges"
Jan 24 06:21:24.000 [notice] Delaying directory fetches: No running bridges
Jan 24 06:21:24.000 [notice] Signaled readiness to systemd
Jan 24 06:21:25.000 [warn] Can't use bridge at [scrubbed]: there is no configured transport called "obfs4".
Jan 24 06:21:25.000 [notice] Opening Control listener on /run/tor/control
Jan 24 06:21:25.000 [notice] Opened Control listener connection (ready) on /run/tor/control
Jan 24 06:21:26.000 [warn] Can't use bridge at [scrubbed]: there is no configured transport called "obfs4".

Why?

Thank you.

  • Before using a bridge with a Pluggable Transport, it must be configured via the ClientTransportPlugin option.
  • In server mode (BridgeRelay), bridges (UseBridges) cannot be used. Servers must be able to freely connect to the Internet.
  • You must create two configurations and run two tor processes:
  1. For the server:
BridgeRelay 1
ORPort 9001
ExtORPort auto
ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy
ServerTransportListenAddr obfs4 0.0.0.0:443
  1. For the client:
UseBridges 1
ClientTransportPlugin obfs4 exec /usr/bin/obfs4proxy
Bridge obfs4 <IP ADDRESS>:<PORT> <FINGERPRINT> cert=<CERTIFICATE> iat-mode=0
1 Like

Hello,
Thank you so much for your reply.
I don’t want to start a server. I would like to use a bridge to bypass the constraints. My torrc file contains the following lines:

DataDirectory /var/lib/tor
RunAsDaemon 1
ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy
UseBridges 1
Bridge obfs4 <IP ADDRESS>:<PORT> <FINGERPRINT> cert=<CERTIFICATE> iat-mode=0

But, I got the following error:

Jan 27 02:10:27.000 [notice] Interrupt: exiting cleanly.
Jan 27 02:10:27.000 [notice] Tor 0.4.7.13 opening log file.
Jan 27 02:10:27.710 [notice] We compiled with OpenSSL 30000070: OpenSSL 3.0.7 1 Nov 2022 and we are running with OpenSSL 30000090: 3.0.9. These two versions should be binary compatible.
Jan 27 02:10:27.712 [notice] Tor 0.4.7.13 running on Linux with Libevent 2.1.12-stable, OpenSSL 3.0.9, Zlib 1.2.13, Liblzma 5.4.1, Libzstd 1.5.4 and Glibc 2.36 as libc.
Jan 27 02:10:27.713 [notice] Tor can't help you if you use it wrong! Learn how to be safe at https://support.torproject.org/faq/staying-anonymous/
Jan 27 02:10:27.713 [warn] Tor was compiled with zstd 1.5.2, but is running with zstd 1.5.4. For safety, we'll avoid using advanced zstd functionality.
Jan 27 02:10:27.713 [notice] Read configuration file "/usr/share/tor/tor-service-defaults-torrc".
Jan 27 02:10:27.713 [notice] Read configuration file "/etc/tor/torrc".
Jan 27 02:10:27.714 [notice] Tor is not configured as a relay but you specified a ServerTransportPlugin line ("obfs4 exec /usr/bin/obfs4proxy"). The ServerTransportPlugin line will be ignored.
Jan 27 02:10:27.715 [notice] Opening Socks listener on 127.0.0.1:9050
Jan 27 02:10:27.715 [notice] Opened Socks listener connection (ready) on 127.0.0.1:9050
Jan 27 02:10:27.000 [notice] We use pluggable transports but the Extended ORPort is disabled. Tor and your pluggable transports proxy communicate with each other via the Extended ORPort so it is suggested you enable it: it will also allow your Bridge to collect statistics about its clients that use pluggable transports. Please enable it using the ExtORPort torrc option (e.g. set 'ExtORPort auto').
Jan 27 02:10:27.000 [notice] Parsing GEOIP IPv4 file /usr/share/tor/geoip.
Jan 27 02:10:27.000 [notice] Parsing GEOIP IPv6 file /usr/share/tor/geoip6.
Jan 27 02:10:27.000 [notice] Bootstrapped 0% (starting): Starting
Jan 27 02:10:28.000 [notice] Starting with guard context "bridges"
Jan 27 02:10:28.000 [notice] Delaying directory fetches: No running bridges
Jan 27 02:10:28.000 [notice] Signaled readiness to systemd
Jan 27 02:10:28.000 [warn] Managed proxy at '/usr/bin/obfs4proxy' failed the configuration protocol and will be destroyed.
Jan 27 02:10:29.000 [warn] Can't use bridge at [scrubbed]: there is no configured transport called "obfs4".
Jan 27 02:10:29.000 [notice] Opening Socks listener on /run/tor/socks
Jan 27 02:10:29.000 [notice] Opened Socks listener connection (ready) on /run/tor/socks
Jan 27 02:10:29.000 [notice] Opening Control listener on /run/tor/control
Jan 27 02:10:29.000 [notice] Opened Control listener connection (ready) on /run/tor/control
Jan 27 02:10:30.000 [warn] Can't use bridge at [scrubbed]: there is no configured transport called "obfs4".

Then instead of ServerTransportPlugin use ClientTransportPlugin and everything should work.

1 Like

Hello,
Thanks again.
Can I use Bridge webtunnel instead of Bridge obfs4?

I’ve made support of all transports that i know for the Home Assistant Tor addon:

  1. Installation is described there
  2. Configuration here

I guess that this should work everywhere with some modifications

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.